

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# SageMaker 訓練任務上的 Amazon Nova 自訂
<a name="nova-model-training-job"></a>

SageMaker Training Jobs 是一種可讓您大規模訓練機器學習模型的環境。它會自動佈建和擴展運算資源、從 Amazon S3 等來源載入訓練資料、執行訓練程式碼，以及存放產生的模型成品。

訓練目的是使用您的專屬資料自訂基本 Amazon Nova 模型。訓練程序通常涉及準備資料、選擇[配方](nova-model-recipes.md)、修改 YAML 檔案中的組態參數，以及提交訓練任務的步驟。訓練程序會在服務受管 Amazon S3 儲存貯體中輸出訓練過的模型檢查點。您可以使用此檢查點位置進行評估任務。SageMaker AI 訓練任務上的 Nova 自訂會將模型成品存放在服務管理的 Amazon S3 儲存貯體中。服務受管儲存貯體中的成品會使用 SageMaker AI 受管 KMS 金鑰加密。服務受管 Amazon S3 儲存貯體目前不支援使用客戶受管 KMS 金鑰進行資料加密。

## Amazon Nova 自訂的最佳實務
<a name="best-practices"></a>

### 概觀
<a name="nova-customization-overview"></a>

本節提供自訂技術的概觀，並協助您選擇符合您需求和可用資料的最佳方法。

#### LLM 訓練的兩個階段
<a name="nova-llm-training-stages"></a>

大型語言模型訓練包含兩個主要階段：訓練前和訓練後。在預先訓練期間，模型會處理原始文字的字符，並針對下一個字符預測進行最佳化。此程序會建立模式完成器，從 Web 和策劃的文字吸收語法、語意、事實和推理模式。不過，預先訓練的模型不了解指示、使用者目標或內容適當的行為。它以適合其訓練分佈的任何樣式繼續文字。預先訓練的模型會自動完成，而不是遵循指示、產生不一致的格式，並且可以從訓練資料反映不良的偏差或不安全的內容。預先訓練可建置一般能力，而非任務實用性。

訓練後會將模式完成器轉換為有用的助理。您會執行多輪監督微調 (SFT)，以教導模型遵循指示、遵循結構描述和政策、呼叫工具，並透過模擬高品質的示範來產生可靠的輸出。此對齊會教導模型以任務形式回應提示，而非文字以繼續。然後，套用強化微調 (RFT)，使用可衡量的意見回饋 （例如驗證器或 LLM-as-a-judge)、平衡準確性與簡潔性、安全性與涵蓋範圍，或在限制下進行多步驟推理等權衡。實際上，您會在週期中替換 SFT 和 RFT，將預先訓練的模型塑造成可靠且符合政策的系統，以一致地執行複雜的任務。

### 選擇正確的自訂方法
<a name="nova-choosing-customization-approach"></a>

在本節中，我們將介紹訓練後自訂策略：RFT 和 SFT。

#### 強化微調 (RFT)
<a name="nova-reinforcement-fine-tuning"></a>

強化微調透過意見回饋訊號改善模型效能，這些訊號是可測量的分數或獎勵，表示回應品質，而不是直接監督並準確回答。與從輸入輸出對中學習的傳統監督式微調不同，RFT 使用獎勵函數來評估模型回應，並反覆最佳化模型以最大化這些獎勵。此方法適用於定義確切正確輸出具有挑戰性的任務，但您可以可靠地測量回應品質。RFT 可讓模型透過試驗和意見回饋來學習複雜的行為和偏好，因此非常適合需要細微決策、創意問題解決或遵守您可以程式設計方式評估的特定品質標準的應用程式。例如，回答複雜的法律問題是 RFT 的理想使用案例，因為您想要教導模型如何更準確地回答問題。

##### 運作方式
<a name="nova-rft-how-it-works"></a>

在強化微調中，您可以從指令調校的基準開始，並將每個提示視為小型競賽。對於指定的輸入，您從模型中抽樣少量候選答案，使用獎勵函數對每個答案進行評分，然後在該群組中對其進行排名。更新步驟會調節模型，使分數較高的候選者在下次的可能性更高，分數較低的候選者的可能性更低，而stay-close-to-baseline的限制則可防止行為偏離或變得模糊或攻擊。您可以在許多提示上重複此迴圈、重新整理硬案例、在您看到入侵時收緊驗證器或判斷摩擦，以及持續追蹤任務指標。

##### 何時使用 RFT
<a name="nova-rft-when-to-use"></a>

受益於 RFT 的任務具有多種特徵。即使單一正確的輸出難以指定，它們仍有可測量的成功訊號。他們認可部分點數或分級品質，因此您可以在提示中或使用獎勵函數，對較差的答案進行排名。它們涉及多個必須平衡的目標 （例如簡潔、清晰、安全或成本的準確性）。它們需要遵守您可以程式設計方式檢查的明確限制。它們在可觀察結果的工具媒介型或環境型設定中操作 （成功或失敗、延遲、資源使用）。它們發生在低標籤的機制中，其中收集黃金目標很昂貴，但自動化或以摩擦為基礎的意見回饋非常豐富。當您可以將品質轉換為可靠的純量或排名，並希望模型優先放大分數較高的行為，而不需要詳盡的標記目標時，RFT 最有效。

**考慮下列情況下的其他方法：**
+ 您有大量且可靠的標籤輸入輸出對 – 使用 SFT
+ 主要差距是知識或行話 – 使用擷取擴增產生 (RAG)
+ 您的獎勵訊號有雜訊或不可靠，而且您無法使用更好的 Rubrics 或 Checker 進行修正 – 在 RFT 之前先穩定訊號

##### 何時不使用 RFT
<a name="nova-rft-when-not-to-use"></a>

避免在這些情況下使用 RFT：
+ 您可以便宜地產生可靠的標籤輸入輸出對 (SFT 更簡單、更便宜且更穩定）
+ 差距是知識或行話，而不是行為 （使用 RAG)
+ 您的獎勵訊號是雜訊、稀疏、容易玩遊戲，或昂貴或運算速度緩慢 （請先修正評估者）
+ 基準效能接近零 （在最佳化偏好設定之前使用 SFT 引導）
+ 任務具有確定性結構描述、嚴格格式或單一正確答案 (SFT 或規則型驗證效果更好）
+ 緊迫的延遲或成本預算無法吸收額外取樣或探勘 RFT 所需的
+ 未在獎勵中明確指定和強制執行安全或政策限制

如果您可以指向「正確答案」，請使用 SFT。如果您需要新知識，請使用 RAG。只有在您擁有穩固的基準和強大、快速、hard-to-exploit的獎勵函數之後，才使用 RFT。

#### 監督式微調 (SFT)
<a name="nova-supervised-fine-tuning"></a>

監督式微調會在您任務的人工標記輸入輸出對資料集上訓練 LLM。您可以提供具有正確或所需回應的提示範例 （問題、指示等），並繼續在這些範例上訓練模型。模型會調整其權重，以盡量減少監督損失 （通常在其預測和目標輸出字符之間跨熵）。這是大多數監督式機器學習任務中使用的相同訓練，適用於專門 LLM。

SFT 會變更行為，而不是知識。它不會教導模型在預先訓練中看不到的新事實或術語。它教導模型如何回答，而不是知道什麼。如果您需要新的網域知識 （例如內部術語），請使用擷取擴增產生 (RAG) 在推論時間提供該內容。然後，SFT 會在頂端新增所需的指令遵循行為。

##### 運作方式
<a name="nova-sft-how-it-works"></a>

SFT 透過將回應權杖的平均跨熵損失降至最低，將提示權杖視為內容，並遮罩它們免受損失來最佳化 LLM。模型會內化您的目標樣式、結構和決策規則，學習為每個提示產生正確的完成。例如，若要將文件分類為自訂類別，您可以使用提示 （文件文字） 和標籤完成 （類別標籤） 微調模型。您在這些配對上進行訓練，直到模型以高機率為每個提示輸出正確的標籤。

您可以使用幾百個範例執行 SFT，並擴展到幾十萬個。SFT 範例必須高品質，並直接符合所需的模型行為。

##### 何時使用 SFT
<a name="nova-sft-when-to-use"></a>

當您有明確定義且具有明確所需輸出的任務時，請使用 SFT。如果您可以明確陳述 "Given X input，正確的輸出為 Y"，並收集這類映射的範例，則監督式微調是不錯的選擇。SFT 在這些案例中表現優異：
+ **結構化或複雜的分類任務** – 將內部文件或合約分類為許多自訂類別。使用 SFT，模型學習這些特定類別優於單獨提示。
+ **具有已知答案的問題回答或轉換任務** – 微調模型以回答公司知識庫的問題，或在每個輸入都有正確回應的格式之間轉換資料。
+ **格式化和樣式一致性** – 透過微調正確格式或色調的範例，訓練模型一律以特定格式或色調回應。例如，針對顯示特定品牌語音的提示-回應對進行訓練，會教導模型以產生具有該樣式的輸出。指示追蹤行為通常透過 SFT 最初就精心策劃的良好助理行為範例進行教學。

當您可以指定正確的行為時，SFT 是教導 LLM 新技能或行為的最直接方式。它使用模型現有的語言理解，並專注於您的任務。當您希望模型執行特定項目，且您有或可以建立範例資料集時，請使用 SFT。

當您可以組合高品質的提示和回應對，以密切反映您想要的行為時，請使用 SFT。它適合具有明確目標或決定性格式的任務，例如結構描述、函數或工具呼叫，以及模擬是適當訓練訊號的結構化答案。目標是行為塑造：教導模型將提示視為任務、遵循指示、採用語氣和拒絕政策，以及產生一致的格式。規劃至少數百次示範，資料品質、一致性和重複資料刪除的重要性高於原始磁碟區。若要直接、符合成本效益的更新，請使用低範圍調整等參數效率方法來訓練小型轉接器，同時讓大多數骨幹保持不變。

##### 何時不使用 SFT
<a name="nova-sft-when-not-to-use"></a>

當差距是知識而非行為時，請勿使用 SFT。它不會教導模型新的事實、術語或最近的事件。在這些情況下，請使用擷取擴增的產生，在推論時帶來外部知識。當您可以測量品質但無法標記單一正確答案時，請避免 SFT。使用強化微調搭配可驗證的獎勵或 LLM-as-a-judge 來直接最佳化這些獎勵。如果您的需求或內容經常變更，請依賴擷取和工具使用，而不是重新訓練模型。

**Topics**
+ [Amazon Nova 自訂的最佳實務](#best-practices)
+ [Nova Forge SDK](nova-forge-sdk.md)
+ [Amazon Nova 模型的訓練](smtj-training.md)
+ [監控反覆運算的進度](nova-model-monitor.md)
+ [評估您的 SageMaker AI 訓練模型](nova-model-evaluation.md)
+ [反覆訓練](smtj-iterative-training.md)