View a markdown version of this page

RFT - SageMaker IA da Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

RFT

O reforço Fine-Tuning (RFT) usa o aprendizado por reforço para otimizar o comportamento do modelo com base em sinais de recompensa, em vez de exemplos explícitos de entrada-saída. O Amazon SageMaker AI oferece suporte a duas variantes de RFT: RLVR (Reinforcement Learning with Verifiable Rewards) e RLAIF (Reinforcement Learning from AI Feedback).

RLVR

O RLVR usa uma função de recompensa baseada em código que verifica programaticamente se as saídas do modelo estão corretas. Mais adequado para tarefas com respostas objetivamente certas ou erradas.

Quando usar

  • Sua tarefa tem respostas corretas verificáveis (matemática, código, questões factuais)

  • Você pode escrever uma função de pontuação que avalia a correção da resposta

  • Você quer melhorar a precisão factual e reduzir as alucinações

Formato do conjunto de dados

Cada registro contém metadados do modelo de solicitação e recompensa. A função de recompensa avalia as respostas geradas pelo modelo durante o treinamento.

{ "data_source": "openai/gsm8k", "prompt": [ { "content": "Natalia sold clips to 48 of her friends in April, and then she sold half as many clips in May. How many clips did Natalia sell altogether in April and May? Let's think step by step and output the final answer after \"####\".", "role": "user" } ], "ability": "math", "reward_model": { "ground_truth": "72", "style": "rule" } }

Campos obrigatórios:

  • prompt— matriz de objetos de mensagem com role e content

  • reward_model.style— definido como "rule" para verificação programática

  • reward_model.ground_truth— a resposta correta para verificação

Funções de recompensa predefinidas

  • gsm8k— Verificação de matemática na escola primária

  • prime_code— Verificação da exatidão do código

  • prime_math— Verificação do raciocínio matemático

Hiperparâmetros RLVR LoRa

nota

As tabelas abaixo mostram os hiperparâmetros disponíveis quando você usa a personalização do modelo sem servidor. Outros hiperparâmetros são predefinidos pela Amazon SageMaker AI usando padrões otimizados. Ao usar o SageMaker AI Training Jobs ou HyperPod, você pode acessar a lista completa de hiperparâmetros disponíveis nas receitas. Consulte o repositório SageMaker AI Recipes para obter uma receita e acessar todos os hiperparâmetros.

Parâmetro Tipo Obrigatório? Intervalo/Valores Description
preset_reward_functionstringObrigatóriogsm8k, prime_code, prime_mathFunção de recompensa predefinida para verificação.
learning_rateflutuaçãoObrigatório1e-07—1e-03Tamanho da etapa para atualizações de peso. Defina como menor para RL (por exemplo, 1e-5).
lr_warmup_steps_ratioflutuaçãoObrigatório0—1Fração de etapas para aquecimento do LR.
max_epochsintegerObrigatório1–100Número de passagens pelo conjunto de dados.
global_batch_sizeintegerObrigatório128, 256, 512, 1024Total de amostras por etapa do otimizador.
max_prompt_lengthintegerObrigatório512—16384Máximo de tokens por porção imediata.
weight_decayflutuaçãoObrigatório0, 0 a 1,0Coeficiente de regularização L2.
clip_ratioflutuaçãoObrigatório0,1—1,5Parâmetro de recorte GRPO. Limita a alteração da política por atualização.
kl_loss_coefflutuaçãoObrigatório0—0,1Peso da penalidade por divergência KL. Evita desvios nas políticas.
rollout_nintegerObrigatório1, 2, 4, 8, 16, 32Respostas dos candidatos por solicitação durante os lançamentos.
rollout_temperatureflutuaçãoObrigatório0,01—2,0Temperatura para geração de lançamento.
lora_rankintegerObrigatório8, 16, 32, 64, 128LoRAclassificação. Dimensionalidade de matrizes de baixa classificação.
lora_alphaintegerObrigatório16, 32, 64, 128, 256LoRAfator de escala. O LR eficaz é escalado como alpha/rank.
warmup_stepsintegerObrigatório-1—100Etapas de aquecimento absoluto (-1 para automático).
min_lrflutuaçãoObrigatório0, 0 a 1,0Piso mínimo da taxa de aprendizagem.
clip_ratio_highflutuaçãoObrigatório0,0—0,5Limite superior de recorte.
clip_ratio_lowflutuaçãoObrigatório0,0—0,5Limite de recorte inferior.
temperatureflutuaçãoObrigatório0,0—2,0Temperatura de amostragem para avaliação.
use_kl_lossbooleanoObrigatóriotrue, falseAdicione a penalidade de divergência KL à derrota.
train_val_split_ratioflutuaçãoOpcional0, 0 a 1,0Train/validation dividir.

Hiperparâmetros RLVR FFT

Mesmos parâmetros do RLVR LoRa sem e. lora_rank lora_alpha

RALIF

O RLAIF usa outro LLM como juiz para avaliar as respostas do modelo com base em uma solicitação de recompensa em linguagem natural. Mais adequado para tarefas com critérios de qualidade subjetivos que são difíceis de avaliar programaticamente.

Quando usar

  • Seus critérios de qualidade são subjetivos (utilidade, segurança, tom)

  • Você pode descrever a aparência de “bom” em linguagem natural

  • Você quer escalar o feedback além do que a anotação humana pode fornecer

Formato do conjunto de dados

Cada registro contém metadados do modelo de solicitação e recompensa. O juiz do LLM avalia as respostas geradas pelo modelo durante o treinamento.

{ "data_source": "WeOpenML/PandaLM", "prompt": [ { "role": "user", "content": "Below are two responses for a given task...Evaluate the responses and generate a reference answer.\n\n### Instruction:\nCompare the given products..." } ], "ability": "pairwise-judging", "reward_model": { "style": "llmj", "ground_truth": "2\n\n### Reason: Response 2 provides a more detailed comparison..." } }

Campos obrigatórios:

  • prompt— matriz de objetos de mensagem com role e content

  • reward_model.style— definido como "llmj" para LLM-as-judge

  • reward_model.ground_truth— julgamento de referência para calibração

Modelos de juízes

Os seguintes modelos de juízes predefinidos são fornecidos no contêiner de treinamento. Selecione um usando o judge_prompt_template hiperparâmetro.

  • cot.jinja— Chain-of-thought avaliação

  • evaluate.jinja— Avaliação geral da qualidade

  • faithfulness.jinja— Fidelidade ao material de origem

  • summarize.jinja— Qualidade da sumarização

  • grader.jinja— Rubric-based classificação

Hiperparâmetros RLAIF LoRa

Mesmos parâmetros do RLVR LoRa com a seguinte diferença:

ParâmetroTipoObrigatório?Intervalo/ValoresDescription
judge_prompt_templatestringOpcionalcot.jinja, avalie.jinja, faithfulness.jinja, summarize.jinja, grader.jinjaModelo para avaliação de juízes do LLM. Substituipreset_reward_function.

Hiperparâmetros RLAIF FFT

Mesmos parâmetros do RLAIF LoRa sem e. lora_rank lora_alpha