を使用して 1 つのプロンプトを送信する InvokeModel - Amazon Bedrock

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

を使用して 1 つのプロンプトを送信する InvokeModel

InvokeModel または InvokeModelWithResponseStreamリクエストを送信APIして、 を介してモデルに対して推論を実行します。モデルがストリーミングをサポートしているかどうかを確認するには、 GetFoundationModelまたは ListFoundationModelsリクエストを送信し、 responseStreamingSupportedフィールドの値を確認します。

以下のフィールドが必要です。

フィールド ユースケース
modelId モデル、推論プロファイル、またはプロンプト管理から使用するプロンプトを指定するには。この値の調べ方については、「を使用してプロンプトを送信し、レスポンスを生成する API」を参照してください。
本文 モデルの推論パラメータを指定します。さまざまなモデルの推論パラメータを確認するには、「Inference request parameters and response fields for foundation models」を参照してください。modelId フィールドでプロンプト管理からプロンプトを指定する場合は、このフィールドを省略します (含めると無視されます)。

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

フィールド ユースケース
accept リクエスト本文のメディアタイプを指定します。詳細については、 の「メディアタイプ」を参照してください。 Swagger ウェブサイト
contentType レスポンス本文のメディアタイプを指定します。詳細については、 の「メディアタイプ」を参照してください。 Swagger ウェブサイト
explicitPromptCaching プロンプトキャッシュが有効か無効かを指定するには。詳細については、「モデル推論を高速化するためのプロンプトキャッシュ」を参照してください。
guardrailIdentifier プロンプトとレスポンスに適用するガードレールを指定します。詳細については、「ガードレールをテストする」を参照してください。
guardrailVersion プロンプトとレスポンスに適用するガードレールを指定します。詳細については、「ガードレールをテストする」を参照してください。
trace 指定したガードレールのトレースを返すかどうかを指定します。詳細については、「ガードレールをテストする」を参照してください。

モデルコードの呼び出しの例

次の例は、 InvokeModel を使用して推論を実行する方法を示していますAPI。さまざまなモデルの例については、目的のモデルの推論パラメータリファレンス (Inference request parameters and response fields for foundation models) を参照してください。

CLI

次の例では、生成されたレスポンスをプロンプトに という名前story of two dogsのファイルに保存しますinvoke-model-output.txt

aws bedrock-runtime invoke-model \ --model-id anthropic.claude-v2 \ --body '{"prompt": "\n\nHuman: story of two dogs\n\nAssistant:", "max_tokens_to_sample" : 300}' \ --cli-binary-format raw-in-base64-out \ invoke-model-output.txt
Python

次の例では、生成されたレスポンスをプロンプト に返しますexplain black holes to 8th graders

import boto3 import json brt = boto3.client(service_name='bedrock-runtime') body = json.dumps({ "prompt": "\n\nHuman: explain black holes to 8th graders\n\nAssistant:", "max_tokens_to_sample": 300, "temperature": 0.1, "top_p": 0.9, }) modelId = 'anthropic.claude-v2' accept = 'application/json' contentType = 'application/json' response = brt.invoke_model(body=body, modelId=modelId, accept=accept, contentType=contentType) response_body = json.loads(response.get('body').read()) # text print(response_body.get('completion'))

ストリーミングコードによるモデル呼び出しの例

注記

AWS CLI はストリーミングをサポートしていません。

次の例は、 を使用して、プロンプト を使用して Python でストリーミングテキストInvokeModelWithResponseStreamAPIを生成する方法を示していますwrite an essay for living on mars in 1000 words

import boto3 import json brt = boto3.client(service_name='bedrock-runtime') body = json.dumps({ 'prompt': '\n\nHuman: write an essay for living on mars in 1000 words\n\nAssistant:', 'max_tokens_to_sample': 4000 }) response = brt.invoke_model_with_response_stream( modelId='anthropic.claude-v2', body=body ) stream = response.get('body') if stream: for event in stream: chunk = event.get('chunk') if chunk: print(json.loads(chunk.get('bytes').decode()))