

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

# 在 Amazon Bedrock 中自訂具有蒸餾的模型
<a name="model-distillation"></a>

*模型蒸餾*是將知識從更大型的智慧型模型 (稱為教師) 轉移到更小、更快速且具成本效益的模型 (稱為學生) 的程序。在此程序中，學生模型的效能會針對特定使用案例改善。Amazon Bedrock 模型蒸餾功能使用最新的資料合成技術，從教師模型產生多樣化、高品質的回應 (稱為合成資料)，並微調學生模型。

## 如何使用 Amazon Bedrock Model Distillation
<a name="how-md-use"></a>

 若要使用 Amazon Bedrock 模型蒸餾功能，請執行下列動作：

1. **選擇老師模型和學生模型** – 如需詳細資訊，請參閱 [模型分割的先決條件](prequisites-model-distillation.md)。

1. **準備您的訓練資料以進行分割** – 您的訓練資料是存放在 `.jsonl` 檔案中的提示集合。Amazon Bedrock 會使用輸入資料從教師模型產生回應，並使用回應來微調學生模型。
   + **最佳化提示** – 針對您想要的使用案例格式化輸入提示。如需詳細資訊，請參閱[最佳化輸入提示以產生合成資料](distillation-prepare-datasets.md#distillation-data-prep-prompt-optimization)。
   + **使用標記的範例** – 將標記的輸入資料準備為提示-回應對。Amazon Bedrock 可以使用這些配對作為最佳範例，同時從教師模型產生回應。如需詳細資訊，請參閱[選項 1：提供您自己的資料準備提示](distillation-data-prep-option-1.md)。
   + **使用調用日誌** – 如果您啟用 CloudWatch Logs 調用日誌，您可以使用存放在 Amazon S3 中的調用日誌中的現有教師回應作為訓練資料。Amazon Bedrock 中的調用日誌是模型調用的詳細記錄。如需詳細資訊，請參閱[選項 2：使用調用日誌進行資料準備](distillation-data-prep-option-2.md)。

1. **建立分割任務** – 此任務會為您的使用案例建立更小、更快速且更具成本效益的模型。只有您可以存取最終的蒸餾模型。Amazon Bedrock 不會使用您的資料來訓練任何其他教師或學生模型以供公開使用。如需詳細資訊，請參閱[在 Amazon Bedrock 中提交模型蒸餾任務](submit-model-distillation-job.md)。如需設定隨需推論的詳細資訊，請參閱 [為自訂模型設定推論](model-customization-use.md)。

## Amazon Bedrock 模型蒸餾功能如何運作
<a name="how-md-works"></a>

Amazon Bedrock 模型蒸餾功能是單一工作流程，可自動化建立蒸餾模型的程序。在此工作流程中，Amazon Bedrock 會從教師模型產生回應、新增資料合成技術以改善回應產生，然後利用產生的回應微調學生模型。擴增後的資料集會拆分成單獨的資料集，以用於訓練和驗證。Amazon Bedrock 僅使用訓練資料集中的資料來微調學生模型。

在您確定教師和學生模型之後，您可以選擇 Amazon Bedrock 針對您的使用案例建立蒸餾模型的方式。Amazon Bedrock 可以使用您提供的提示產生教師回應，您也可以透過調用日誌使用您生產資料的回應。Amazon Bedrock 模型蒸餾功能會使用這些回應來微調學生模型。

**注意**  
如果 Amazon Bedrock Model Distillation 使用其專有資料合成技術來產生更高品質的教師回應，則您對教師模型的推論呼叫 AWS 帳戶 會產生額外費用。這些費用將以教師模型的隨需推論費率計費。資料合成技術可能會將微調資料集的大小增加到最多 15k 個提示-回應對。如需 Amazon Bedrock 收費的詳細資訊，請參閱 [Amazon Bedrock 定價](https://aws.amazon.com/bedrock/pricing/)。

### 使用您提供的提示建立蒸餾模型
<a name="using-prompts"></a>

Amazon Bedrock 會使用您提供的輸入提示，從教師模型產生回應。然後，Amazon Bedrock 會使用回應來微調您已識別的學生模型。視您的使用案例而定，Amazon Bedrock 可能會新增專屬資料合成技術，以產生多樣化和更高品質的回應。例如，Amazon Bedrock 可能會產生類似的提示，以從教師模型產生更多樣化的回應。或者，如果您選擇性地提供少量標記為提示-回應對的輸入資料，則 Amazon Bedrock 可能會使用這些配對作為最佳範例，指示教師產生類似的高品質回應。

### 使用生產資料建立蒸餾模型
<a name="using-prod-data"></a>

如果您已有由教師模型產生的回應，並將其存放在調用日誌中，您可以使用這些現有的教師回應來微調學生模型。因此，您需要提供 Amazon Bedrock 對調用日誌的存取權。Amazon Bedrock 中的調用日誌是模型調用的詳細記錄。如需詳細資訊，請參閱[使用 CloudWatch Logs 監控模型調用](https://docs.aws.amazon.com//bedrock/latest/userguide/model-invocation-logging.html)。

如果您選擇此選項，則可以繼續使用 Amazon Bedrocks 推論 API 操作，例如 [InvokeModel](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_runtime_InvokeModel.html) 或 [Converse](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_runtime_Converse.html) API，並針對 Amazon Bedrock 中使用的所有調用收集調用日誌、模型輸入資料 (提示) 和模型輸出資料 (回應)。

當您使用 `InvokeModel` 或 `Converse` API 操作從模型產生回應時，您可以選擇將 `requestMetadata` 新增至回應。當您建立蒸餾任務時，您可以依此中繼資料進行篩選，作為調用日誌組態的一部分。您可以依特定使用案例進行篩選，然後 Amazon Bedrock 只會使用篩選的回應來微調學生模型。當您選擇使用調用日誌來微調學生模型時，您可以讓 Amazon Bedrock 僅使用提示，或使用提示-回應對。

------
#### [ Choosing prompts with invocation logs ]

如果您選擇讓 Amazon Bedrock 僅使用調用日誌中的提示，則 Amazon Bedrock 會使用提示從教師模型產生回應。在此情況下，Amazon Bedrock 會使用回應來微調您已識別的學生模型。根據您的使用案例，Amazon Bedrock 模型蒸餾功能可能會新增專屬資料合成技術，以產生多樣化和更高品質的回應。

------
#### [ Choosing prompt-response pairs with invocation logs ]

如果您選擇讓 Amazon Bedrock 使用調用日誌中的提示-回應對，則 Amazon Bedrock 將不會從教師模型重新產生回應，且會使用調用日誌中的回應來微調學生模型。若要讓 Amazon Bedrock 從調用日誌中讀取回應，模型蒸餾任務中指定的教師模型必須符合調用日誌中使用的模型。如果不相符，則不會使用調用日誌。如果您已將請求中繼資料新增至調用日誌中的回應，則若要微調學生模型，您可以指定請求中繼資料篩選條件，以便 Amazon Bedrock 僅讀取適用於您的使用案例的特定日誌。

------