翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Bedrock で蒸留を使用してモデルをカスタマイズする
モデル蒸留は、よりインテリジェントなモデル (教師モデル) から、より小さく、高速で、コスト効率の高いモデル (生徒モデル) に知識を転送するプロセスです。このプロセスでは、特定のユースケースで生徒モデルのパフォーマンスが向上します。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 でモデル蒸留ジョブを送信する」を参照してください。蒸留ジョブが完了したら、カスタマイズプロセスの結果を分析できます。詳細については、「Analyze the results of a model customization job」を参照してください。モデルの推論の設定については、「カスタムモデルの推論を設定する」を参照してください。
トピック
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 にプロンプトのみを使用させることも、プロンプトとレスポンスのペアを使用させることもできます。
呼び出しログを使用したプロンプトの選択
Amazon Bedrock に呼び出しログのプロンプトのみを使用させることを選択した場合、Amazon Bedrock はプロンプトを使用して教師モデルからレスポンスを生成します。この場合、Amazon Bedrock はレスポンスを使用して、特定された生徒モデルをファインチューニングします。ユースケースによっては、Amazon Bedrock Model Distillation が独自のデータ合成手法を追加して、多様で高品質なレスポンスを生成する場合があります。
呼び出しログを使用したプロンプトとレスポンスのペアの選択
Amazon Bedrock に呼び出しログのプロンプトとレスポンスのペアを使用させることを選択した場合、Amazon Bedrock は教師モデルからのレスポンスを再生成せず、呼び出しログからのレスポンスを使用して生徒モデルをファインチューニングします。Amazon Bedrock が呼び出しログからレスポンスを読み取るには、モデル蒸留ジョブで指定された教師モデルが呼び出しログで使用されるモデルと一致している必要があります。一致していない場合、呼び出しログは使用されません。呼び出しログのレスポンスにリクエストメタデータを追加している場合、生徒モデルをファインチューニングするために、Amazon Bedrock がユースケースに有効な特定のログのみを読み取るようにリクエストメタデータフィルターを指定できます。