超參數會控制模型權重在強化學習微調期間的更新方式。預設值經過調整,適用於大多數工作負載,但您可以在 Google Cloud 控制台 (建立調整模型時,依序前往「Model details」(模型詳細資料)>「Advanced options」(進階選項)>「Tuning setting」(調整設定)) 或使用 REST API 建立調整工作時,在要求主體中覆寫任何預設值。
可用的超參數
如需這些參數的 API 定義,請參閱 ReinforcementTuningHyperParameters API 參考資料。
epochCount
資料集的疊代次數。這與訓練步驟數不同,每個週期產生的訓練步驟數可能不同。
- 預設值:如果留空,則為
min(110 * promptsPerBatch / promptsInDataset, 10)。預設值會動態計算,因此訓練工作會多次處理每個提示詞,上限為 10 個訓練週期,以免在較小的資料集上過度配適。 - 上限:為確保穩定調整,訓練執行總數上限為 500 個步驟。
learningRateMultiplier
套用至配接器層基礎學習率的調節係數。
- 預設值:
1 - 允許範圍:
[1/4, 4]
thinkingLevel
控制模型生成回覆時的內部思維鏈提示處理長度和深度。
- 預設值:
HIGH - 允許的值:
MINIMAL、HIGH(動態思考)
batchSize 和 samplesPerPrompt
這兩個超參數會控制提示詞的批次處理方式,以及模型在每個訓練步驟中,針對每個提示詞生成的回覆數量。
batchSize:每個批次的提示詞數量 (也稱為promptsPerBatch)。批量越大,調整速度越慢,但每個步驟的更新會更穩定。- 預設值:
32
- 預設值:
samplesPerPrompt:在單一訓練步驟中,模型針對每個提示詞生成的不同回覆數量。samplesPerPrompt越大,調整速度越慢,但模型探索的回覆可能更多元。- 預設值:
16
- 預設值:
產品「batchSize * samplesPerPrompt」須遵守特定模式的限制:
| 模態 | batchSize * samplesPerPrompt限制 |
|---|---|
| 文字 | 必須能被 16 整除,且小於或等於 8,192 |
| 多模態 (圖片、音訊或影片) | 必須能被 16 整除,且小於或等於 1,024 |
evaluateInterval
調整期間評估模型的頻率。間隔是以步驟為單位,而非週期。
checkpointInterval
模型調整進度儲存為查核點的頻率,以便復原或日後使用。間隔是以步驟為單位,而非訓練週期。
- 建議做法:設定
checkpointInterval = evaluateInterval * N,其中N是正整數。
maxOutputTokens
調整後模型的輸出內容生成長度上限。
- 預設值和上限:
32,768
adapterSize
LoRA 轉接器大小。轉接器越大,複雜工作的學習能力就越強,但需要更多訓練時間和記憶體。
- 預設值:
ADAPTER_SIZE_SIXTEEN
後續步驟
- 準備調整資料集。
- 定義調整工作的獎勵函式。
- 監控工作狀態和指標。
- 請按照Google Cloud 控制台快速入門導覽課程或 API 快速入門導覽課程,建立第一個強化學習微調工作。