Amazon Bedrock でモデル蒸留ジョブを送信する - Amazon Bedrock

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Bedrock でモデル蒸留ジョブを送信する

モデル蒸留は、Amazon Bedrock コンソールから、または Amazon Bedrock コントロールプレーンエンドポイントを使用して CreateModelCustomizationJob リクエストを送信することで実行できます。

前提条件

  • AWS Identity and Access Management(IAM) サービスロールを作成して、モデルのカスタマイズトレーニングおよび検証データを保存する Amazon S3 バケットにアクセスします。このロールは、AWS マネジメントコンソールを使用して作成することも、手動で作成することもできます。手動オプションの詳細については、「モデルのカスタマイズ用のサービスロールを作成する」を参照してください。

  • (オプション) カスタムモデルに対する入出力データ、カスタマイズジョブ、または推論リクエストを暗号化します。詳細については、「カスタムモデルの暗号化」を参照してください。

  • (オプション) 仮想プライベートクラウド (VPC) を作成し、カスタマイズジョブを保護します。詳細については、「(オプション) VPC を使用してモデルのカスタマイズのジョブを保護する」を参照してください。

蒸留ジョブが完了したら、カスタマイズプロセスの結果を分析できます。詳細については、「Analyze the results of a model customization job」を参照してください。モデルの推論の設定については、「カスタムモデルの推論を設定する」を参照してください。

ジョブを送信する

Console
  1. Amazon Bedrock コンソールを使用するアクセス許可を持つ IAM ID AWS マネジメントコンソールを使用して にサインインします。Amazon Bedrock コンソール (https://console.aws.amazon.com/bedrock) を開きます。

  2. 左側のナビゲーションペインの [調整][カスタムモデル] を選択します。

  3. [蒸留ジョブを作成] を選択します。

  4. [蒸留モデルの詳細] で、次を行います。

    1. [蒸留モデル名] で、蒸留モデルの名前を入力します。

    2. (オプション) [モデル暗号化] で、ジョブとその関連アーティファクトを暗号化するための KMS キーを指定する場合は、チェックボックスをオンにします。

      詳細については、「カスタムモデルの暗号化」を参照してください。

    3. (オプション) 蒸留モデルに [タグ] を適用します。

  5. [追加設定] で、次を行います。

    1. [ジョブ名] で、ジョブの名前を入力します。

    2. (オプション) [モデル暗号化] で、ジョブとその関連アーティファクトを暗号化するための KMS キーを指定する場合は、チェックボックスをオンにします。

      詳細については、「カスタムモデルの暗号化」を参照してください。

    3. (オプション) ジョブに [タグ] を適用します。

  6. [教師モデル – 生徒モデルの詳細] で、蒸留モデルを作成するための教師モデルと学生モデルを選択します。

    詳細については、「蒸留用の教師モデルと生徒モデルを選択する」を参照してください。

  7. [合成データ生成] で、次を行います。

    1. [応答の最大長] で、教師モデルによって生成された合成応答の最大長を指定します。

    2. [蒸留入力データセット] で、次のいずれかのオプションを選択します。

      • S3 の場所に直接アップロードする – 蒸留に使用する入力データセット (プロンプト) を保存する S3 の場所を指定します。詳細については、「オプション 1: データ準備用の独自のプロンプトを提供する」を参照してください。

      • 呼び出しログへのアクセスを提供する – 蒸留に使用される入力データセット (プロンプト) を含む呼び出しログを保存する S3 の場所を指定します。詳細については、「オプション 2: データ準備に呼び出しログを使用する」を参照してください。

        • (オプション) [リクエストメタデータのフィルター] で、ログ内の特定のプロンプトのみを使用して Amazon Bedrock で蒸留する場合にフィルターを指定します。

        • Amazon Bedrock がログからアクセスする内容に応じて、[プロンプトの読み取り] または [プロンプトと応答のペアの読み取り] を選択します。応答は、教師モデルがログ内のモデルと一致する場合にのみ読み取られることに注意してください。

  8. [蒸留出力] で、蒸留ジョブに関するメトリクスとレポートをアップロードする S3 の場所を指定します。

    詳細については、「Analyze the results of a model customization job」を参照してください。

  9. [VPC 設定] で、トレーニングデータを使用して S3 バケットにアクセスするための VPC 設定を選択します。

    詳細については、「(オプション) VPC を使用してモデルのカスタマイズのジョブを保護する」を参照してください。

  10. [サービスアクセス] で、トレーニングデータを使用して S3 バケットにアクセスするための IAM ロールを指定します。クロスリージョン推論プロファイルまたは VPC 設定を使用しない限り、Amazon Bedrock コンソールで適切なアクセス許可が自動的に設定されたロールを作成できます。または、既存のサービスロールを使用することもできます。

    Amazon VPC 設定があるジョブや、クロスリージョン推論プロファイルを使用するジョブでは、必要なアクセス許可を持つ新しいサービスロールを IAM に作成する必要があります。

    詳細については、「モデルのカスタマイズ用のサービスロールを作成する」を参照してください。

  11. [蒸留ジョブを作成] を選択して、蒸留ジョブを開始します。モデルをカスタマイズしたら、モデルの推論を設定できます。詳細については、「カスタムモデルの推論を設定する」を参照してください。

API

Amazon Bedrock API の使用時にモデル蒸留ジョブを送信するには、少なくとも次のフィールドを指定する必要があります。

フィールド 説明
baseModelIdentifier 生徒モデルのモデル識別子
customModelName 新しい蒸留モデルの名前
jobName モデル蒸留ジョブの名前
roleArn トレーニングファイルと検証ファイルの読み取りと出力パスへの書き込みに関するアクセス許可を Amazon Bedrock に付与するロール
trainingDataConfig トレーニングデータがある Amazon S3 パス
outputDataConfig トレーニングメトリクスと検証メトリクスを含む Amazon S3 パス
distillationConfig 蒸留ジョブに必要な入力
customModelKmsKeyId カスタムモデルを暗号化する
clientRequestToken リクエストが複数回完了しないようにするためのトークン

次のフィールドはオプションです。

フィールド 説明
customizationType 蒸留ジョブについてデフォルトでは DISTILLATION に設定されている
validationDataConfig 検証データの Amazon S3 パスのリスト
jobTags タグをジョブに関連付ける
customModelTags タグを結果のカスタムモデルに関連付ける
vpcConfig トレーニングデータと蒸留ジョブを保護するための VPC

リクエストが複数回完了しないようにするには、clientRequestToken を含めます。

追加の設定には、次のオプションフィールドを含めることができます。

CreateModelCustomizationJob API のスニペットの例を次に示します。この例では、呼び出しログ内のプロンプトと応答のペアを入力データソースとして使用し、プロンプトと応答のペアを選択するためのフィルターを指定します。

"trainingDataConfig": { "invocationLogsConfig": { "usePromptResponse": true, "invocationLogSource": { "s3Uri": "string" }, "requestMetadataFilters": { "equals": { "priority": "High" } } } }

レスポンス

応答は、モデル蒸留ジョブの jobArn を返します。

次の手順