翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
強化ファインチューニングジョブを作成する
Amazon Bedrock コンソールまたは API を使用して、強化ファインチューニングジョブを作成できます。RFT ジョブは、トレーニングデータのサイズ、エポック数、報酬関数の複雑さに応じて、数時間かかる場合があります。
前提条件
-
RFT トレーニングデータと出力アーティファクトを保存する Amazon S3 バケットにアクセスするには、IAM サービスロールを作成します。このロールは、 を使用して自動的に作成AWS マネジメントコンソールすることも、手動で作成することもできます。RFT 固有のアクセス許可については、「」を参照してくださいアクセスとセキュリティの微調整の強化。
-
(オプション) カスタムモデルに対して行われた入出力データ、RFT ジョブ、または推論リクエストを暗号化します。詳細については、「カスタムモデルの暗号化」を参照してください。
RFT ジョブを作成する
任意の方法のタブを選択し、その手順に従います。
- Console
-
コンソールで RFT ジョブを送信するには、次の手順を実行します。
-
にサインインAWS マネジメントコンソールし、https://console.aws.amazon.com/bedrock で Amazon Bedrock コンソールを開きます。
-
左側のナビゲーションペインの [調整] で [カスタムモデル] を選択します。
-
モデル テーブルで、作成 を選択します。次に、強化ファインチューニングジョブの作成を選択します。
-
モデルの詳細セクションで、ベースモデルとして Amazon Nova 2 Lite を選択します。
-
「カスタマイズの詳細」セクションに、カスタマイズ名を入力します。
-
トレーニングデータセクションで、データソースを選択します。
トレーニングデータセットは OpenAI Chat Completions データ形式である必要があります。Amazon Bedrock の呼び出し形式または逆形式で呼び出しログを指定すると、Amazon Bedrock は自動的にそれらをチャット完了形式に変換します。
-
報酬関数セクションで、報酬メカニズムを設定します。
詳細については、「報酬関数の設定」を参照してください。
-
(オプション) Hyperparameters セクションで、トレーニングパラメータを調整するか、デフォルト値を使用します。
-
出力データセクションに、Bedrock がジョブ出力を保存する Amazon S3 の場所を入力します。
-
ロール設定セクションで、以下を選択します。
-
(オプション) 追加設定セクションで、以下を設定します。
-
強化ファインチューニングジョブの作成を選択してジョブを開始します。
- API
-
を customizationTypeに設定して CreateModelCustomizationJob リクエストを送信しますREINFORCEMENT_FINE_TUNING。次のフィールドを指定する必要があります。
必須フィールド:
-
roleArn - RFT アクセス許可を持つサービスロールの ARN
-
baseModelIdentifier - カスタマイズする基盤モデルのモデル ID または ARN
-
customModelName - 新しくカスタマイズしたモデルの名前
-
jobName - トレーニングジョブの名前
-
customizationType - REINFORCEMENT_FINE_TUNING に設定
-
trainingDataConfig - トレーニングデータセットまたは呼び出しログ設定の Amazon S3 URI
-
outputDataConfig - 出力データを書き込む Amazon S3 URI
-
rftConfig - 報酬関数設定 (RLVR または RLAIF) とハイパーパラメータ設定
リクエストの例:
{
"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/"
}
}
Python API サンプルリクエスト:
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']
RFT ジョブワークフロー
RFT ジョブはこの自動ワークフローに従います。
-
レスポンスの生成 - アクターモデルはトレーニングプロンプトからレスポンスを生成します
-
報酬計算 - 報酬関数はプロンプトとレスポンスのペアを評価します
-
アクターモデルトレーニング - モデルは GRPO を使用してスコア付きペアから学習します
トレーニング中、損失、報酬、報酬マージン、精度などのトレーニングおよび検証メトリクスを含むリアルタイムグラフを使用して進行状況をモニタリングできます。成功すると、カスタムモデル ARN を使用して RFT モデルが作成されます。
推論をセットアップする
ジョブが完了したら、オンデマンド推論のためにワンクリックで結果の RFT モデルをデプロイできます。一貫したパフォーマンスを必要とするミッションクリティカルなワークロードには、プロビジョンドスループットを使用することもできます。推論を設定したら、プレイグラウンドでテストを使用してレスポンスをインタラクティブに評価し、ベースモデルとside-by-sideして比較します。
RFT ジョブの進行状況のモニタリングについては、「」を参照してくださいRFT トレーニングジョブをモニタリングする。
完了した RFT モデルの評価については、「」を参照してくださいRFT モデルを評価する。