Créez un travail de réglage précis du renforcement - Amazon Bedrock

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.

Créez un travail de réglage précis du renforcement

Vous pouvez créer une tâche de réglage précis du renforcement à l'aide de la console ou de l'API Amazon Bedrock. Le travail RFT peut prendre plusieurs heures en fonction de la taille de vos données d'entraînement, du nombre d'époques et de la complexité de vos fonctions de récompense.

Conditions préalables

  • Créez un rôle de service IAM pour accéder au compartiment Amazon S3 dans lequel vous souhaitez stocker vos données d'entraînement RFT et vos artefacts de sortie. Vous pouvez créer ce rôle automatiquement à l'aide du AWS Management Console ou manuellement. Pour les autorisations spécifiques à RFT, consultez. Renforcement, affinement de l'accès et de la sécurité

  • (Facultatif) Chiffrez les données d'entrée et de sortie, votre tâche RFT ou les demandes d'inférence adressées à des modèles personnalisés. Pour plus d'informations, consultez la section Chiffrement des modèles personnalisés.

Créez votre job RFT

Choisissez l’onglet correspondant à votre méthode préférée, puis suivez les étapes :

Console

Pour soumettre une tâche RFT dans la console, procédez comme suit :

  1. Connectez-vous à la console Amazon Bedrock AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/bedrock.

  2. Dans le volet de navigation de gauche, choisissez Modèles personnalisés sous Régler.

  3. Dans le tableau Modèles, choisissez Create. Choisissez ensuite Créer une tâche de réglage précis du renforcement.

  4. Dans la section Détails du modèle, choisissez Amazon Nova 2 Lite comme modèle de base.

  5. Dans la section Détails de la personnalisation, entrez le nom de la personnalisation.

  6. Dans la section Données d'entraînement, choisissez votre source de données :

    • Utiliser les journaux d'appel stockés : sélectionnez l'un des journaux d'appel disponibles stockés dans Amazon S3

    • Charger un nouveau jeu de données : sélectionnez l'emplacement Amazon S3 de votre fichier d'ensemble de données d'entraînement ou chargez un fichier directement depuis votre appareil

    Note

    Votre ensemble de données d'entraînement doit être au format de données OpenAI Chat Completions. Si vous fournissez des journaux d'invocation au format Amazon Bedrock invoke ou converse, Amazon Bedrock les convertit automatiquement au format Chat Completions.

  7. Dans la section Fonction de récompense, configurez votre mécanisme de récompense :

    • Modéliser en tant que juge (RLAIF) - Sélectionnez un modèle de base hébergé par Bedrock comme juge et configurez les instructions d'évaluation. Utilisez-le pour des tâches subjectives telles que la modération du contenu.

      Note

      L'option Model as judge de la console convertit automatiquement votre configuration en fonction Lambda pendant l'entraînement.

    • Code personnalisé (RLVR) - Créez des fonctions de récompense personnalisées à l'aide du code Python exécuté via des fonctions Lambda. Utilisez-le pour des tâches objectives telles que la génération de code.

    Pour de plus amples informations, veuillez consulter Configuration des fonctions de récompense.

  8. (Facultatif) Dans la section Hyperparamètres, ajustez les paramètres d'entraînement ou utilisez les valeurs par défaut.

  9. Dans la section Données de sortie, entrez l'emplacement Amazon S3 où Bedrock doit enregistrer les résultats des tâches.

  10. Dans la section Configuration des rôles, sélectionnez :

    • Choisissez un rôle existant - Sélectionnez dans la liste déroulante

    • Créer un rôle : entrez un nom pour le rôle de service

  11. (Facultatif) Dans la section Configuration supplémentaire, configurez :

    • Données de validation en pointant vers un compartiment Amazon S3

    • Paramètres de chiffrement KMS

    • Tags de poste et de modèle

  12. Choisissez Créer une tâche de réglage précis du renforcement pour commencer la tâche.

API

Envoyez une CreateModelCustomizationJob demande avec customizationType set toREINFORCEMENT_FINE_TUNING. Vous devez renseigner les champs suivants :

Champs obligatoires :

  • roleArn- ARN du rôle de service avec autorisations RFT

  • baseModelIdentifier- ID de modèle ou ARN du modèle de base à personnaliser

  • customModelName- Nom du nouveau modèle personnalisé

  • jobName- Nom du poste de formation

  • customizationType : défini sur REINFORCEMENT_FINE_TUNING

  • trainingDataConfig- URI Amazon S3 de la configuration du jeu de données d'entraînement ou du journal d'invocation

  • outputDataConfig- URI Amazon S3 pour écrire les données de sortie

  • rftConfig- Configuration de la fonction de récompense (RLVR ou RLAIF) et configuration des hyperparamètres

Exemple de demande :

{ "roleArn": "arn:aws:iam::123456789012:role/BedrockRFTRole", "baseModelIdentifier": "amazon.nova-2.0", "customModelName": "my-rft-model", "jobName": "my-rft-job", "customizationType": "REINFORCEMENT_FINE_TUNING", "trainingDataConfig": { "s3Uri": "s3://my-bucket/training-data.jsonl" }, "customizationConfig": { "rftConfig" : { "graderConfig": { "lambdaGrader": { "lambdaArn": "arn:aws:lambda:us-east-1:123456789012:function:function-name" } }, "hyperParameters": { "batchSize": 64, "epochCount": 2, "evalInterval": 10, "inferenceMaxTokens": 8192, "learningRate": 0.00001, "maxPromptLength": 4096, "reasoningEffort": "high", "trainingSamplePerPrompt": 4 } } }, "outputDataConfig": { "s3Uri": "s3://my-bucket/rft-output/" } }

Exemple de demande d'API Python :

import boto3 bedrock = boto3.client(service_name='bedrock') # Set parameters customizationType = "REINFORCEMENT_FINE_TUNING" baseModelIdentifier = "arn:aws:bedrock:us-east-1::foundation-model/amazon.nova-2-lite-v1:0:256k" roleArn = "${your-customization-role-arn}" jobName = "MyFineTuningJob" customModelName = "MyCustomModel" customizationConfig = { 'rftConfig' : { 'graderConfig': { 'lambdaGrader': { 'lambdaArn': 'arn:aws:lambda:us-east-1:123456789012:function:function-name' } }, 'hyperParameters': { 'batchSize': 64, 'epochCount': 2, 'evalInterval': 10, 'inferenceMaxTokens': 8192, 'learningRate':0.00001, 'maxPromptLength': 4096, 'reasoningEffort': 'high', 'trainingSamplePerPrompt':4 } } } trainingDataConfig = {"s3Uri": "s3://${training-bucket}/myInputData/train.jsonl"} outputDataConfig = {"s3Uri": "s3://${output-bucket}/myOutputData"} # Create job response_ft = bedrock.create_model_customization_job( jobName=jobName, customModelName=customModelName, roleArn=roleArn, baseModelIdentifier=baseModelIdentifier, customizationConfig=customizationConfig, trainingDataConfig=trainingDataConfig, outputDataConfig=outputDataConfig, customizationType=customizationType ) jobArn = response_ft['jobArn']

Flux de travail RFT

La tâche RFT suit ce flux de travail automatisé :

  1. Génération de réponses - Le modèle d'acteur génère des réponses à partir d'instructions d'entraînement

  2. Calcul des récompenses - Les fonctions de récompense évaluent les paires de réponses rapides

  3. Entraînement des modèles d'acteurs - Le modèle apprend des paires notées à l'aide du GRPO

Pendant l'entraînement, vous pouvez suivre les progrès à l'aide de graphiques en temps réel avec des indicateurs d'entraînement et de validation tels que les pertes, les récompenses, la marge de récompense et la précision. En cas de succès, un modèle RFT est créé avec un ARN de modèle personnalisé.

Configurer l'inférence

Une fois le travail terminé, vous pouvez déployer le modèle RFT obtenu en un clic pour une inférence à la demande. Vous pouvez également utiliser le débit provisionné pour les charges de travail critiques qui nécessitent des performances constantes. Une fois l'inférence configurée, utilisez Test in Playground pour évaluer et comparer les réponses de manière interactive side-by-side avec le modèle de base.

Pour suivre la progression de votre tâche RFT, voirSurveillez votre travail de formation RFT.

Pour évaluer votre modèle RFT terminé, consultezÉvaluez votre modèle RFT.