View a markdown version of this page

RFT - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

RFT

Le renforcement Fine-Tuning (RFT) utilise l'apprentissage par renforcement pour optimiser le comportement du modèle en fonction de signaux de récompense plutôt que d'exemples explicites d'entrée-sortie. Amazon SageMaker AI prend en charge deux variantes de RFT : RLVR (apprentissage par renforcement avec récompenses vérifiables) et RLAIF (apprentissage par renforcement à partir de commentaires d'IA).

RLVR

Le RLVR utilise une fonction de récompense basée sur un code qui vérifie par programmation si les sorties du modèle sont correctes. Idéal pour les tâches avec des réponses objectivement bonnes ou mauvaises.

Quand l’utiliser

  • Votre tâche comporte des réponses correctes vérifiables (mathématiques, code, questions factuelles)

  • Vous pouvez écrire une fonction de notation qui évalue l'exactitude des réponses

  • Vous souhaitez améliorer la précision des faits et réduire les hallucinations

Format du jeu de données

Chaque enregistrement contient les métadonnées d'un modèle d'invite et de récompense. La fonction de récompense évalue les réponses générées par le modèle pendant l'entraînement.

{ "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" } }

Champs obligatoires :

  • prompt— tableau d'objets de message avec role et content

  • reward_model.style— réglé sur "rule" pour la vérification par programmation

  • reward_model.ground_truth— la bonne réponse pour vérification

Fonctions de récompense prédéfinies

  • gsm8k— Vérification des mathématiques à l'école primaire

  • prime_code— Vérification de l'exactitude du code

  • prime_math— Vérification du raisonnement mathématique

Hyperparamètres RLVR LoRa

Note

Les tableaux ci-dessous présentent les hyperparamètres disponibles lorsque vous utilisez la personnalisation des modèles sans serveur. Les autres hyperparamètres sont prédéfinis par Amazon SageMaker AI à l'aide de valeurs par défaut optimisées. Lorsque vous utilisez SageMaker AI Training Jobs ou HyperPod, vous pouvez accéder à la liste complète des hyperparamètres disponibles dans les recettes. Consultez le référentiel SageMaker AI Recipes pour obtenir une recette et accéder à tous les hyperparamètres.

Paramètre Type Obligatoire ? Échelle/Valeurs Description
preset_reward_functionchaîneObligatoiregsm8k, prime_code, prime_mathFonction de récompense prédéfinie pour la vérification.
learning_ratefloatObligatoire1e-07—1e-03Taille du pas pour les mises à jour du poids. Réglez le plus bas pour RL (par exemple, 1e-5).
lr_warmup_steps_ratiofloatObligatoire0—1Fraction d'étapes pour l'échauffement du LR.
max_epochsentierObligatoire1–100Nombre de passages dans l'ensemble de données.
global_batch_sizeentierObligatoire128, 256, 512 et 1024Nombre total d'échantillons par étape de l'optimiseur.
max_prompt_lengthentierObligatoire512—16384Nombre maximum de jetons pour une portion rapide.
weight_decayfloatObligatoire0.0-1.0Coefficient de régularisation L2.
clip_ratiofloatObligatoire0,1 à 1,5Paramètre d'écrêtage GRPO. Limite le changement de politique par mise à jour.
kl_loss_coeffloatObligatoire0 à 0,1Poids de la pénalité de divergence KL. Empêche la dérive des politiques.
rollout_nentierObligatoire1, 2, 4, 8, 16, 32Réponses des candidats par invite lors des déploiements.
rollout_temperaturefloatObligatoire0,01 à 2,0Température pour la génération du déploiement.
lora_rankentierObligatoire8, 16, 32, 64 et 128LoRArang. Dimensionnalité des matrices de bas rang.
lora_alphaentierObligatoire16, 32, 64, 128 et 256LoRAfacteur d'échelle. Le LR efficace s'échelonne comme suit alpha/rank :
warmup_stepsentierObligatoire-1 à 100Étapes de préchauffage absolues (-1 pour automatique).
min_lrfloatObligatoire0.0-1.0Taux d'apprentissage plancher minimum.
clip_ratio_highfloatObligatoire0,0-0,5Seuil d'écrêtage supérieur.
clip_ratio_lowfloatObligatoire0,0-0,5Seuil d'écrêtage inférieur.
temperaturefloatObligatoire0,0-2,0Température d'échantillonnage pour évaluation.
use_kl_lossbooleanObligatoiretrue, falseAjoutez une pénalité de divergence KL à la perte.
train_val_split_ratiofloatFacultatif0.0-1.0Train/validation scission.

Hyperparamètres RLVR FFT

Mêmes paramètres que RLVR LoRa sans et. lora_rank lora_alpha

RLAIF

Le RLAIF utilise un autre LLM en tant que juge pour évaluer les réponses modèles en fonction d'une invite de récompense en langage naturel. Idéal pour les tâches dont les critères de qualité sont subjectifs et difficiles à évaluer par programmation.

Quand l’utiliser

  • Vos critères de qualité sont subjectifs (serviabilité, sécurité, ton)

  • Vous pouvez décrire à quoi ressemble « bien » en langage naturel

  • Vous souhaitez élargir le feedback au-delà de ce que l'annotation humaine peut fournir

Format du jeu de données

Chaque enregistrement contient les métadonnées d'un modèle d'invite et de récompense. Le juge LLM évalue les réponses générées par le modèle pendant la formation.

{ "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..." } }

Champs obligatoires :

  • prompt— tableau d'objets de message avec role et content

  • reward_model.style— réglé "llmj" pour LLM-as-judge

  • reward_model.ground_truth— jugement de référence pour l'étalonnage

Modèles de juges

Les modèles de juges prédéfinis suivants sont fournis dans le conteneur de formation. Sélectionnez-en un à l'aide de l'judge_prompt_templatehyperparamètre.

  • cot.jinja— Chain-of-thought évaluation

  • evaluate.jinja— Évaluation générale de la qualité

  • faithfulness.jinja— Fidélité au matériel source

  • summarize.jinja— Qualité de la synthèse

  • grader.jinja— Rubric-based classement

Hyperparamètres LoRa RLAIF

Mêmes paramètres que RLVR LoRa avec la différence suivante :

ParamètreTypeObligatoire ?Échelle/ValeursDescription
judge_prompt_templatechaîneFacultatifcot.jinja, evaluate.jinja, faithfulness.jinja, summarize.jinja, grader.jinjaModèle pour l'évaluation des juges LLM. Remplacepreset_reward_function.

Hyperparamètres RLAIF FFT

Mêmes paramètres que RLAIF LoRa sans et. lora_rank lora_alpha