本頁面將逐步引導您完成端對端工作流程,使用 Agent Platform API 強化學習微調 Gemini 模型:建立微調工作、檢查工作狀態、擷取微調模型端點,以及對端點執行推論。如要在 Google Cloud 控制台中完成這些工作,請參閱Google Cloud 控制台快速入門導覽課程。
開始之前,請參閱「關於強化學習微調」,瞭解這項功能、支援的模型和支援的地區。
建立強化學習微調工作
如要建立強化學習微調工作,請將 POST 要求傳送至 tuningJobs.create 端點。如要查看完整的要求結構定義和所有可設定的欄位,請參閱「強化學習微調工作」頁面。
本頁範例使用 us-central1 做為微調區域。調整後的模型會透過 us 多區域端點提供。如需支援調整和提供服務的完整區域清單,請參閱「支援的模型和區域」一節。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
"https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/tuningJobs" \
-d \
$'{
"tunedModelDisplayName": "dai-image-test",
"baseModel": "gemini-3.5-flash",
"reinforcementTuningSpec": {
"trainingDatasetUri": "gs://path/to/my/training_dataset.jsonl",
"validationDatasetUri": "gs://path/to/my/eval_dataset.jsonl",
"hyperParameters": {
"epochCount":15,
"learningRateMultiplier":1.0,
"samplesPerPrompt":16,
"adapterSize":"ADAPTER_SIZE_SIXTEEN",
"maxOutputTokens":32768,
"batchSize":32,
"evaluateInterval":5,
"checkpointInterval":5,
"thinkingLevel":"HIGH"
},
"singleRewardConfig": {
"rewardName": "my_reward_function_name",
"parseResponseConfig": {"parseType":"IDENTITY"},
"cloudRunRewardScorer": {
"cloudRunUri":"https://my.cloud.run.uri"
}
}
}
}'
更改下列內容:
<var>PROJECT_ID</var>: Google Cloud 專案 ID。
查看強化學習微調工作狀態
如要監控執行中的 強化學習微調工作,瞭解進度、效能和品質,請前往 Google Cloud 控制台的「 Models> Tuning 」頁面。每項調整工作都有專屬的監控檢視畫面,會以圖表呈現基礎調整狀態,包括訓練和評估獎勵、生成長度和其他調整指標。如需完整的指標清單和解讀方式,請參閱「指標和監控」頁面。
訓練時間
訓練時間會受到下列因素影響:
視設定而定,Gemini 強化學習微調工作可能需要數小時到數天才能完成。
取得調整後的模型端點
調整工作達到 JOB_STATE_SUCCEEDED 後,請發出 tuningJobs.get 要求並讀取回應的 tunedModel.endpoint 欄位,擷取已部署的調整模型端點。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://us-central1-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us-central1/tuningJobs/TUNING_JOB_ID"
更改下列內容:
<var>PROJECT_ID</var>: Google Cloud 專案 ID。<var>TUNING_JOB_ID</var>:調整工作的 ID。
回應範例 (縮寫):
{
"name": "projects/{PROJECT_ID}/locations/us-central1/tuningJobs/{TUNING_JOB_ID}",
"tunedModelDisplayName": "my-rl-tuned-model",
"state": "JOB_STATE_SUCCEEDED",
"tunedModel": {
"model": "projects/{PROJECT_ID}/locations/us-central1/models/{MODEL_ID}",
"endpoint": "projects/{PROJECT_ID}/locations/us/endpoints/{ENDPOINT_ID}"
},
"reinforcementTuningSpec": { ... }
}
調整工作成功後,回應中會顯示最後一個檢查點的 endpoint。
在調整後的模型端點上執行推論
調整後的模型會透過傳回端點上的標準 generateContent API 提供預測。如果調整工作是在 us-central1 執行,調整後的模型會透過 us 多區域端點提供。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
"https://aiplatform.us.rep.googleapis.com/v1beta1/projects/PROJECT_ID/locations/us/endpoints/ENDPOINT_ID:generateContent" \
-d \
$'{
"contents": [
{
"role": "user",
"parts": [
{ "text": "Why is the sky blue?" }
]
}
]
}'
更改下列內容:
<var>PROJECT_ID</var>: Google Cloud 專案 ID。<var>ENDPOINT_ID</var>:GetTuningJob回應的tunedModel.endpoint欄位中傳回的端點 ID。
後續步驟
- 進一步瞭解強化學習微調工作。
- 探索支援的獎勵函式。
- 設定強化學習的超參數。
- 瞭解如何追蹤指標和監控。
- 試用Google Cloud 控制台快速入門導覽課程,瞭解如何使用 Google Cloud 控制台建立調整工作。