完全なリクエストスキーマ - Amazon Nova

完全なリクエストスキーマ

リクエストスキーマは、Invoke API (ストリーミングと非ストリーミング) と Converse API の間でほぼ同じです。画像および動画のペイロードエンコーディングには微妙な違いがあります。Amazon Nova Micro は画像や動画を入力としてサポートしていないため、リクエストスキーマのこれらの部分は Amazon Nova Micro には適用されません。それ以外の場合、リクエストスキーマはすべての Amazon Nova の理解モデルで同じです。

重要

Amazon Nova への推論呼び出しのタイムアウト期間は 60 分です。デフォルトでは、AWS SDK クライアントは 1 分後にタイムアウトします。AWS SDK クライアントの読み取りタイムアウト期間を少なくとも 60 分に増やすことをお勧めします。例えば、AWS Python botocore SDK では、botocore.configread_timeoutフィールドの値を少なくとも 3600 に変更します。

client = boto3.client( "bedrock-runtime", region_name="us-east-1", config=Config( connect_timeout=3600, # 60 minutes read_timeout=3600, # 60 minutes retries={'max_attempts': 1} ) )
{ "system": [ { "text": "string" } ], "messages": [ { "role": "user", //first turn should always be the user turn "content": [ { "text": "string" }, { "image": { "format": "jpeg" | "png" | "gif" | "webp", "source": { "bytes": image // Binary array (Converse API) or Base64-encoded string (Invoke API) } } }, { "video": { "format": "mkv" | "mov" | "mp4" | "webm" | "three_gp" | "flv" | "mpeg" | "mpg" | "wmv", "source": { // Option 1: Sending a S3 location "s3Location": { "uri": "string", // example: s3://my-bucket/object-key "bucketOwner": "string" // (Optional) example: "123456789012" }, // Option 2: Sending file bytes "bytes": video // Binary array (Converse API) or Base64-encoded string (Invoke API) } } } ] }, { "role": "assistant", "content": [ { "text": "string" //prefilling assistant turn } ] } ], "inferenceConfig":{ // all Optional, Invoke parameter names used in this example "maxTokens": int, // greater than 0, equal or less than 5k (default: dynamic*) "temperature": float, // greater than 0 and less than 1.0 (default: 0.7) "topP": float, // greater than 0, equal or less than 1.0 (default: 0.9) "topK": int, // 0 or greater (default: 50) "stopSequences": ["string"] }, "toolConfig": { // all Optional "tools": [ { "toolSpec": { "name": "string", //meaningful tool name (Max char: 64) "description": "string", //meaningful description of the tool "inputSchema": { "json": { // The JSON schema for the tool. For more information, see JSON Schema Reference "type": "object", "properties": { "arg1": { //arguments "type": "string", //argument data type "description": "string" //meaningful description } }, "required": [ "string" //args ] } } } } ], }, "toolChoice": { "auto": {} } //Amazon Nova models ONLY support tool choice of "auto" }

次の内容は必須パラメータです。

  • system – (オプション) リクエストのシステムプロンプト。

    システムプロンプトは、特定の目標やロールの指定など、Amazon Nova にコンテキストおよび指示を与える方法です。

  • messages – (必須) 入力メッセージ。

    • role – 会話ターンのロール。有効な値は、user および assistant です。

    • content – (必須) 会話のコンテンツを含む ContentBlock オブジェクトのリスト。各オブジェクトには、コンテンツのタイプ (textimage、または video) を指定するキーが含まれています。オブジェクトの値は、キーのタイプによって異なります。サポートされているキーのタイプを以下に示します。

      • text – 会話ターンのテキストプロンプトの値が入った単一のフィールド text を含むオブジェクトにマッピングします。会話ターンに image または video オブジェクトも含まれている場合、text オブジェクトは画像または動画に付随するテキストプロンプトとして解釈されます。

      • image – (Amazon Nova Micro ではサポートされていません) 画像コンテンツを表し、次のフィールドを含むオブジェクトにマッピングします。

        • format – (必須) 画像形式。以下の画像形式を指定できます。

          • jpeg

          • png

          • webp

          • gif

        • source – (必須) 画像データ。Invoke API の場合、Base64 でエンコードされた画像文字列である必要があります。Converse API の場合、バイト配列である必要があります。

        • bytes – (必須) 画像データ。Invoke API の場合、Base64 でエンコードされた画像文字列である必要があります。Converse API の場合、バイト配列である必要があります。

      • video – (Amazon Nova Micro ではサポートされていません) 動画コンテンツを表し、次のフィールドを含むオブジェクトにマッピングします。

        • format – (必須) 動画形式。次の値を指定できます。

          • mkv

          • mov

          • mp4

          • webm

          • three_gp

          • flv

          • mpeg

          • mpg

          • wmv

        • source – (必須) 動画データのソース。リクエストで Amazon S3 URI または動画ファイルのバイトを指定できます。

          • uri – (必須) 動画ファイルの Amazon S3 URI。例: “s3://my-bucket/object-key”

          • bucketOwner – (オプション) バケットを所有しているアカウント ID。別のアカウントからモデルを呼び出す場合は、これを使用します。

          • bytes – (必須) 画像データ。Invoke API の場合、Base64 でエンコードされた画像文字列である必要があります。Converse API の場合、バイト配列である必要があります。

  • inferenceConfig: 推論で渡すことができる推論設定値です。

    • maxTokens – (オプション) 停止する前に生成するトークンの最大数。

      Amazon Nova モデルは、maxTokens の値に達する前にトークンの生成を停止する場合があるので注意してください。許可される新しいトークンの最大値は 5K です。

    • temperature – (オプション) レスポンスに注入されるランダム性の量。有効な値は 0.00001 ~ 1 で、その範囲に限ります。デフォルト値は 0.7 です。

    • topP – (オプション) 中核サンプリングを使用します。

      Amazon Nova は、後続の各トークンのすべてのオプションに対する累積分布を確率の降順で計算し、topP で指定された特定の確率に達すると切り捨てます。temperature または topP のいずれかを変更する必要がありますが、両方を変更することはできません。有効な値は 0 ~ 1 で、その範囲に限ります。デフォルト値は 0.9 です。

    • topK – (オプション) 後続の各トークンの top K オプションによるサンプルのみ。

      topK パラメータを使用してロングテールの低確率レスポンスを削除します。有効な値は 0 ~ 128 です。デフォルト値は、このパラメータが使用されていないことです。

      注記

      topK パラメータで Converse API を使用する際、追加の inferenceConfig パラメータを additionalModelRequestFields フィールドに含める必要があります。これらのパラメータが渡される方法の例については、「Converse API の使用」を参照してください。

    • stopSequences – (オプション) 停止シーケンスを含む文字列の配列。モデルがこの文字列のいずれかを生成する場合、生成が停止されてその時点までのレスポンスが返されます。

    Parameter Default value Range
    温度 0.7 0.00001-1
    topP 0.9 0-1
    topK Not used 0-128
  • toolConfig – (オプション) ツール仕様およびツール選択を含む ToolConfig スキーマに従う JSON オブジェクト。このスキーマはConverse API が続くものと同じです。