翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Bedrock で蒸留を使用してモデルをカスタマイズする
モデル蒸留は、よりインテリジェントなモデル (教師モデル) から、より小さく、高速で、コスト効率の高いモデル (生徒モデル) に知識を転送するプロセスです。このプロセスでは、特定のユースケースで生徒モデルのパフォーマンスが向上します。Amazon Bedrock Model Distillation は、最新のデータ合成手法を使用して、教師モデルから多様で高品質なレスポンス (合成データ) を生成し、生徒モデルをファインチューニングします。
Amazon Bedrock Model Distillation の使用方法
Amazon Bedrock Model Distillation を使用するには、以下を実行します。
-
教師モデルと学生モデルの選択 – 詳細については、「」を参照してくださいモデル抽出の前提条件。
-
留出用にトレーニングデータを準備する – トレーニングデータは、
.jsonlファイルに保存されているプロンプトのコレクションです。Amazon Bedrock は入力データを使用して、教師モデルからのレスポンスを生成し、そのレスポンスを使用して生徒モデルをファインチューニングします。-
プロンプトの最適化 – 必要なユースケースの入力プロンプトをフォーマットします。詳細については、「合成データ生成の入力プロンプトを最適化する」を参照してください。
-
ラベル付き例を使用する – ラベル付き入力データをプロンプトとレスポンスのペアとして準備します。Amazon Bedrock は、教師モデルからのレスポンスの生成中に、これらのペアをゴールデンサンプルとして使用できます。詳細については、「オプション 1: データ準備用の独自のプロンプトを提供する」を参照してください。
-
呼び出しログの使用 – CloudWatch Logs 呼び出しログを有効にすると、Amazon S3 に保存されている呼び出しログからの既存の教師レスポンスをトレーニングデータとして使用できます。Amazon Bedrock の呼び出しログは、モデル呼び出しの詳細な記録です。詳細については、「オプション 2: データ準備に呼び出しログを使用する」を参照してください。
-
-
留出ジョブを作成する – このジョブは、ユースケースに合わせて、より小さく、高速で、費用対効果の高いモデルを作成します。最終的な蒸留モデルにアクセスできるのは、そのユーザーだけです。Amazon Bedrock は、ユーザーのデータを使用して、他の教師または生徒モデルを一般利用向けにトレーニングすることはありません。詳細については、「Amazon Bedrock でモデル蒸留ジョブを送信する」を参照してください。オンデマンド推論の設定の詳細については、「」を参照してくださいカスタムモデルの推論を設定する。
Amazon Bedrock Model Distillation の仕組み
Amazon Bedrock Model Distillation は、蒸留されたモデルを作成するプロセスを自動化する単一のワークフローです。このワークフローで、Amazon Bedrock は教師モデルからレスポンスを生成し、データ合成手法を追加してレスポンス生成を改善し、生成されたレスポンスで生徒モデルをファインチューニングします。拡張データセットは、トレーニングと検証に使用するために別々のデータセットに分割されます。Amazon Bedrock はトレーニングデータセットのデータのみを使用して、生徒モデルをファインチューニングします。
教師モデルと生徒モデルを特定したら、Amazon Bedrock でユースケースに合わせた蒸留モデルを作成する方法を選択できます。Amazon Bedrock では、提供されたプロンプトを使用して教師のレスポンスを生成することも、呼び出しログを介して本番データからのレスポンスを使用することもできます。Amazon Bedrock Model Distillation は、これらのレスポンスを使用して生徒モデルをファインチューニングします。
注記
Amazon Bedrock Model Distillation が独自のデータ合成手法を使用して高品質の教師レスポンスを生成する場合、教師モデルへの推論呼び出しには追加料金 AWS アカウント が発生します。これらの料金は、教師モデルのオンデマンド推論レートで請求されます。データ合成手法は、ファインチューニングデータセットのサイズを最大 15,000 のプロンプトとレスポンスのペアに増やす可能性があります。Amazon Bedrock の料金の詳細については、「Amazon Bedrock の料金
Amazon Bedrock は、指定された入力プロンプトを使用して、教師モデルからレスポンスを生成します。次に、Amazon Bedrock はレスポンスを使用して、特定された生徒モデルをファインチューニングします。ユースケースによっては、Amazon Bedrock が独自のデータ合成手法を追加して、多様で高品質なレスポンスを生成する場合があります。例えば、Amazon Bedrock は同様のプロンプトを生成して、教師モデルからより多様なレスポンスを生成する場合があります。または、オプションでいくつかのラベル付き入力データがプロンプトとレスポンスのペアとして指定された場合、Amazon Bedrock はそれらのペアをゴールデンサンプルとして使用して、同様の高品質なレスポンスを生成するように教師に指示することがあります。
教師モデルによって生成されたレスポンスがすでにあり、呼び出しログに保存している場合は、それらの既存の教師レスポンスを使用して生徒モデルをファインチューニングできます。そのためには、Amazon Bedrock に呼び出しログへのアクセスを提供する必要があります。Amazon Bedrock の呼び出しログは、モデル呼び出しの詳細な記録です。詳細については、「CloudWatch Logs を使用してモデル呼び出しをモニタリングする」を参照してください。
このオプションを選択すると、InvokeModel や Converse API などの Amazon Bedrocks 推論 API オペレーションを引き続き使用でき、Amazon Bedrock で使用されるすべての呼び出しの呼び出しログ、モデル入力データ (プロンプト)、およびモデル出力データ (レスポンス) を収集できます。
InvokeModel または Converse API オペレーションを使用してモデルからレスポンスを生成するとき、オプションでレスポンスに requestMetadata を追加できます。蒸留ジョブを作成するとき、呼び出しログ設定の一部としてこのメタデータでフィルタリングできます。特定のユースケースでフィルタリングでき、Amazon Bedrock はフィルタリングされたレスポンスのみを使用して生徒モデルをファインチューニングします。呼び出しログを使用して生徒モデルをファインチューニングすることを選択すると、Amazon Bedrock にプロンプトのみを使用させることも、プロンプトとレスポンスのペアを使用させることもできます。