Gemma 模型微調

微調 Gemma 等生成式人工智慧 (AI) 模型時,模型行為會隨之改變。您通常會微調 Gemma,以提升模型在特定工作或領域的成效,或更妥善地扮演某個角色,例如客戶服務。Gemma 模型會發布開放權重,也就是說,您可以修改這些權重,進而變更模型的行為。微調 Gemma 模型的一般步驟如下:

選擇架構

Gemma 模型與各種 AI 微調架構相容。每個架構都提供各種優點,且通常會限制為特定模型格式。以下是使用各種架構微調 Gemma 模型的指南:

請確認所選架構支援您預期的部署模型格式 (例如 Keras 格式、Safetensors 或 GGUF) 做為輸出內容。

收集資料

模型調整需要資料。調整資料通常包含輸入資料和預期回應的配對。網路上有許多公開資料集,可用於訓練各種工作或輸出內容。舉例來說,如果想訓練 Gemma 模型,將汽車零件說明翻譯成零件編號,資料集可能包含下列內容:

training_data = [
  {"input_text": "Part number for A4 brake caliper", "output_text": "4M0615107BS"},
  {"input_text": "Part number for Beetle fuel pump", "output_text": "6A127026H"},
  {"input_text": "Part number for Camaro cylinder head", "output_text": "12711770"},
]

如要讓 Gemma 模型執行特定的一組工作或角色,通常需要編譯資料集,其中包含該工作的多種變化。調整模型所需的資料量取決於您的目標,特別是您希望模型產生多少行為變化,以及您希望模型根據要完成的任務和輸入資料的變異程度,達到什麼樣的效能。

一般來說,您應該先使用少量資料調整工作、調整訓練參數,然後加入資料,直到工作成效符合需求為止。部分範例應用程式顯示,只要 20 組提示和回覆,就能影響 Gemma 模型的行為。詳情請參閱 使用 Gemma 建立企業電子郵件 AI 助理使用 Gemma 處理口語語言的任務

調整及測試模型

準備好調整架構和調整資料後,即可開始進行 Gemma 模型調整程序。執行微調時,您可以選擇微調方式,這會影響完成微調所需的資源。此外,您也應為微調後的模型制定測試計畫,評估微調後的模型是否達到預期效能。

高效參數調整

微調 Gemma 等開放權重模型時,您可以選擇微調模型的所有參數,也可以使用資源密集度較低的參數效率微調技術,更新部分參數。完整微調方法是指在套用微調資料時,計算模型所有參數的新權重。由於您要對數十億個參數執行這些計算,因此這種方法需要大量運算和記憶體資源。使用較不耗費資源的調整方法 (稱為參數高效微調 (PEFT)),包括低秩適應器 (LoRA) 調整等技術,可以運用較少的運算資源,產生類似的結果。如要瞭解如何使用 LoRA 進行微調,減少資源耗用,請參閱「使用 LoRA 在 Keras 中微調 Gemma 模型」和「在 Hugging Face 中微調 Gemma 模型」。

測試調整過的模型

針對特定工作調整模型後,您應根據要執行的工作集測試模型效能。您應使用模型未接受過特定訓練的任務或要求來測試模型。測試微調模型的方式取決於您希望模型執行的工作,以及您管理模型輸入內容和輸出內容的密切程度。管理生成模型測試的常見做法是使用成功、失敗和邊界案例:

  • 成功測試:經過微調的模型應一律能順利執行的要求。
  • 失敗測試:要求微調模型一律無法執行或明確拒絕執行要求。
  • 界線測試:要求微調模型應能執行的要求,前提是這些要求落在可接受輸出行為的定義界線或界線集內。

測試生成式 AI 應用程式的故障或邊界條件時,也應套用負責任的生成式 AI 工具包所述的生成式 AI 安全方法、技術和工具。

部署模型

完成調整及測試後,就可以部署模型。如要部署微調模型,通常可以參閱所選架構的說明文件。

如果您要部署使用 LoRA 調整權重的模型,請注意,使用這項技術時,您通常會同時部署原始模型及其權重,並將 LoRA 權重做為模型的額外計算層。