Gemini 模型的強化學習微調工作由三個主要建構區塊組成:微調資料集、控制訓練程序的超參數,以及一或多個為各模型回覆評分的獎勵函式。這項服務也會公開指標和工作狀態,以便監控。
如需建立調整工作、擷取調整後的模型,以及執行推論的端對端範例,請參閱Google Cloud 控制台快速入門導覽課程或 API 快速入門導覽課程。
準備調整資料集
強化學習微調工作是由訓練資料集和選用的驗證資料集驅動。每個資料集都是儲存在 Cloud Storage 中的 JSONL 檔案。每一行都是單一調整範例,包含 systemInstruction、contents (模型在調整期間回應的提示),以及 references 對應,其中包含獎勵函式為模型回應評分所需的任何中繼資料 (例如基準真相答案、評分標準或單元測試輸入內容)。
強化學習微調支援多模態提示詞 (文字、圖片、音訊和影片),但每個檔案和提示詞都有上限。
如要查看完整資料集結構定義、特定模態的資料集限制,以及如何填入 references 以計算獎勵的範例,請參閱「調整資料集」頁面。
設定超參數
超參數可控制模型在強化學習微調期間的更新方式,包括生成期間使用的思考程度、批次大小、每個提示的樣本數、學習率倍數、訓練週期數、評估和檢查點間隔、輸出長度上限,以及 LoRA 轉接器大小。預設值適用於大多數工作負載,但您可以在建立調整工作時覆寫任何預設值。
如要瞭解預設值、允許的範圍、資料集大小相關規則和建議組合,請參閱「超參數」頁面。
定義獎勵函式
獎勵函式會在調整期間,為各個模型回覆評分。強化學習會根據獎勵信號進行最佳化,因此獎勵信號的品質會直接決定調整品質。所有獎勵都會限制在 [-1, 1] 範圍內。
強化學習微調支援下列獎勵類型:
- 字串比對獎勵:比較模型回覆 (或剖析後的子字串) 與
references中提供的基準真相值。 - Gemini 自動評分獎勵:以 LLM 做為評審,為每則回覆評分,並可選擇是否剖析回覆。
- 執行程式碼獎勵:在代管沙箱環境中執行自訂 Python 評估程式碼,傳回純量獎勵。
- Cloud Run 獎勵:呼叫使用者管理的 Cloud Run 服務,傳回純量獎勵,用於完全可自訂的評分邏輯。
- 複合獎勵:結合最多 16 種上述獎勵類型,並依評分器加權。
啟動調整工作前,請先在 Google Cloud 控制台或使用ValidateReinforcementTuningReward API 方法驗證獎勵設定。
如要查看詳細的設定結構定義、程式碼範例、IAM 設定和獎勵設計最佳做法,請參閱「獎勵函式」頁面。
監控工作狀態和指標
啟動調整工作後,您可以追蹤其生命週期狀態 (例如 JOB_STATE_PENDING、JOB_STATE_RUNNING、JOB_STATE_SUCCEEDED、JOB_STATE_FAILED、JOB_STATE_CANCELLING、JOB_STATE_CANCELLED),並透過下列兩種方式檢查調整進度:
- 以程式輔助方式:發出
GetTuningJob要求,擷取工作狀態、tunedModel、錯誤詳細資料和中繼資料。如需curl指令範例,請參閱 API 快速入門導覽課程。 - 視覺化:在 Google Cloud 控制台 ,依序前往「Models」>「Tuning」, 開啟工作的監控頁面。頁面會顯示基礎調整實驗,並以圖表呈現每個步驟產生的訓練 和評估指標 (獎勵、生成長度、 獎勵延遲時間、 複合獎勵的各項獎勵細目等)。
強化學習微調也會按照 checkpointInterval 設定的頻率產生中繼查核點,您可以在工作完成前獨立部署及評估這些查核點。
如需完整的指標清單、各獎勵類型的指標、解讀方式,以及如何存取檢查點,請參閱「指標和監控」頁面。