快速入门:强化学习微调

本页面将引导您完成 Gemini 模型强化学习微调的端到端工作流程:创建调优作业、检查其状态、检索调优后的模型端点,以及针对该端点运行推理。

开始之前,请参阅强化学习微调简介,了解此功能、支持的模型和支持的区域。

创建强化学习微调作业

通过向 tuningJobs.create 端点发送 POST 请求来创建强化学习微调作业。如需查看完整的请求架构和所有可配置的字段,请参阅强化学习微调作业页面。

本页面上的示例使用 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/your/training_dataset.jsonl",
      "validationDatasetUri": "gs://path/to/your/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": "your_reward_function_name",
        "parseResponseConfig": {"parseType":"IDENTITY"},
        "cloudRunRewardScorer": {
          "cloudRunUri":"https://your.cloud.run.uri"
        }
      }
    }
  }'

替换以下内容:

  • PROJECT_ID:您的 Google Cloud 项目 ID。

检查强化学习微调作业的状态

您可以在 Google Cloud 控制台的Agent Platform > 模型 > 调优页面中监控正在运行的强化学习微调作业的进度、性能和质量。每个调优作业都有一个专用监控视图,其中包含训练和评估奖励、生成长度以及其他调优指标的图表,可直观呈现底层调优状态。如需查看已发出指标的完整列表以及如何解读这些指标,请参阅指标和监控页面。

训练时间

训练时间受以下因素影响:

  • 训练数据集和验证数据集的大小。如需了解详情,请参阅调整数据集页面。
  • 超参数 - 包括 samplesPerPrompt、批次大小、周期数和学习速率乘数。如需了解详情,请参阅超参数页面。

根据您的设置,Gemini 强化学习微调作业可以运行数小时到数天。

获取经过调整的模型端点

调优作业达到 JOB_STATE_SUCCEEDED 后,通过发出 GetTuningJob 请求并读取响应的 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"

替换以下内容:

  • PROJECT_ID:您的 Google Cloud 项目 ID。
  • TUNING_JOB_ID:调优作业的 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?" }
        ]
      }
    ]
  }'

替换以下内容:

  • PROJECT_ID:您的 Google Cloud 项目 ID。
  • ENDPOINT_IDGetTuningJob 响应的 tunedModel.endpoint 字段中返回的端点 ID。

后续步骤