View a markdown version of this page

推論コネクタターゲット - Amazon Bedrock AgentCore

推論コネクタターゲット

推論コネクタターゲットは、サポートされているモデルプロバイダー用に事前設定されたセットアップを提供します。コネクタを使用すると、ゲートウェイはプロバイダーの API に関する組み込みの知識に基づいてオペレーション、モデル検出、モデル ID 変換、パスの書き換えを自動的に処理するため、手動で指定する必要はありません。

コネクタは、エンドポイント、オペレーション、モデルマッピングを手動で設定せずに、サポートされているモデルプロバイダーをすばやく追加する場合に推奨されます。

ターゲット設定

推論コネクタターゲットのターゲット設定では、次の構造を使用します。

{ "inference": { "connector": { "source": { "connectorId": "bedrock-mantle" } } } }
  • connectorId (必須) – 組み込みコネクタの識別子。サポートされている値は bedrock-mantleopenaianthropic です。

各コネクタには、完全に指定されたプロバイダー設定と同等のデフォルトが組み込まれています。たとえば、bedrock-mantleコネクタは以下を自動的に設定します。

  • モデル ID プレフィックスのストライピング – クライアントは、モデル IDs からプロバイダープレフィックスを省略できます (たとえば、 claude-opus-4-7 の代わりに を使用anthropic.claude-opus-4-7)。

  • パスの書き換え — インバウンド推論リクエストパスは、プロバイダーの API パスにマッピングされます。

  • サポートされているオペレーション – チャットの完了やメッセージなど、コネクタが公開する推論オペレーションのセット。

コネクタ推論ターゲットの作成

次の例は、Bedrock マントルコネクタを使用して推論ターゲットを作成する方法を示しています。

aws bedrock-agentcore-control create-gateway-target --cli-input-json '{ "gatewayIdentifier": "GATEWAY_ID", "name": "bedrock-mantle", "targetConfiguration": { "inference": { "connector": { "source": { "connectorId": "bedrock-mantle" } } } }, "credentialProviderConfigurations": [ {"credentialProviderType": "GATEWAY_IAM_ROLE"} ] }'

次の例は、OpenAI コネクタを使用して推論ターゲットを作成する方法を示しています。

aws bedrock-agentcore-control create-gateway-target --cli-input-json '{ "gatewayIdentifier": "GATEWAY_ID", "name": "openai", "targetConfiguration": { "inference": { "connector": { "source": { "connectorId": "openai" } } } }, "credentialProviderConfigurations": [ { "credentialProviderType": "API_KEY", "credentialProvider": { "apiKeyCredentialProvider": { "providerArn": "arn:aws:bedrock-agentcore:us-west-2:111122223333:token-vault/default/apikeycredentialprovider/openai-key", "credentialLocation": "HEADER", "credentialParameterName": "Authorization", "credentialPrefix": "Bearer " } } } ] }'

次の例は、Anthropic コネクタを使用して推論ターゲットを作成する方法を示しています。

aws bedrock-agentcore-control create-gateway-target --cli-input-json '{ "gatewayIdentifier": "GATEWAY_ID", "name": "anthropic", "targetConfiguration": { "inference": { "connector": { "source": { "connectorId": "anthropic" } } } }, "credentialProviderConfigurations": [ { "credentialProviderType": "API_KEY", "credentialProvider": { "apiKeyCredentialProvider": { "providerArn": "arn:aws:bedrock-agentcore:us-west-2:111122223333:token-vault/default/apikeycredentialprovider/anthropic-key", "credentialLocation": "HEADER", "credentialParameterName": "x-api-key" } } } ] }'

コネクタ推論ターゲットの呼び出し

推論ターゲットを呼び出すには、ゲートウェイの/inferenceパスにリクエストを送信します。ゲートウェイは、リクエスト本文の modelフィールドに基づいて、各リクエストを正しいターゲットにルーティングします。model 値は、プレーンモデル ID ( などgpt-5.5) または 形式のターゲット修飾モデル ID {targetName}/{modelId} ( など) のいずれかですopenai/gpt-5.5model 値がターゲットと一致する方法の詳細については、「モデルベースのルーティング」を参照してください。

URL 形式は次のとおりです。

https://{gatewayId}.gateway.bedrock-agentcore.{region}.amazonaws.com/inference/{path}

を推論オペレーションパス (、、 などv1/messages) v1/chat/completions{path}に置き換えv1/responsesます。

OpenAI SDK の使用

ゲートウェイの/inference/v1パスを として設定しますbase_url

from openai import OpenAI client = OpenAI( base_url="https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference/v1", api_key="<gateway-auth-token>" ) response = client.chat.completions.create( model="gpt-5.5", messages=[{"role": "user", "content": "Hello!"}] )

Anthropic SDK の使用

ゲートウェイの/inferenceパスを として設定しますbase_url

import anthropic client = anthropic.Anthropic( base_url="https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference", api_key="<gateway-auth-token>" ) response = client.messages.create( model="claude-sonnet-4-6", max_tokens=1024, messages=[{"role": "user", "content": "Hello!"}] )

awscurl の使用

awscurl --service bedrock-agentcore --region us-west-2 -X POST \ "https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference/v1/chat/completions" \ -H "Content-Type: application/json" \ -d '{"model": "gpt-5.5", "messages": [{"role": "user", "content": "Hello!"}]}'

使用可能なモデルの一覧表示

すべての推論ターゲットで使用可能なモデルを検出するには、リストモデルエンドポイントを呼び出します。

awscurl --service bedrock-agentcore --region us-west-2 \ "https://<gateway-id>.gateway.bedrock-agentcore.us-west-2.amazonaws.com/inference/v1/models"

レスポンスは OpenAI の/v1/models形式で、ターゲット名のプレフィックスが付いたモデル IDsがあります。

{ "data": [ {"id": "bedrock-mantle/anthropic.claude-opus-4-7", "object": "model", "owned_by": "system"}, {"id": "openai/gpt-5.5", "object": "model", "owned_by": "openai"}, {"id": "anthropic/claude-sonnet-4-6", "object": "model", "owned_by": "anthropic"} ] }

owned_by フィールドはモデルのプロバイダーを示します。の値は Amazon Bedrock がホストするモデルsystemを示し、 openaiと はそれらのプロバイダーから直接提供されるモデルanthropicを示します。

モデルベースのルーティング

ゲートウェイは、リクエスト本文の modelフィールドに基づいて推論リクエストをルーティングします。

  1. 認定ルーティング – モデル ID に が含まれ/、プレフィックスがターゲット名と一致する場合、リクエストはそのターゲットにルーティングされます (openaiターゲットへのopenai/gpt-5.5ルートなど)。

  2. 非修飾ルーティング – モデル ID に が含まれていない場合/、ゲートウェイは設定されたすべてのターゲットと照合します。完全一致は glob パターンよりも優先されます。ターゲットが 1 つだけ一致する場合、リクエストはそのターゲットにルーティングされます。

  3. 衝突処理 – 複数のターゲットが同じモデルを同じ特異度で一致させる場合、ゲートウェイはデフォルトで Amazon Bedrock ターゲットに一致させます。そうしないと、各リクエストで一致するターゲットの 1 つがランダムに選択されるため、同じモデルに対するリクエストは異なるターゲットに送信できます。特定のターゲットにリクエストを固定するには、ターゲット名をプレフィックスとしてモデルを認定します (例: bedrock/claude-opus-4-7)。

ストリーミング

ストリーミングは OpenAI SSE 規則に従います。リクエスト本文"stream": trueに を設定すると、ゲートウェイは変換なしでプロバイダーから SSE ストリームを通過します。

stream = client.chat.completions.create( model="gpt-5.5", messages=[{"role": "user", "content": "Write a story."}], stream=True ) for chunk in stream: print(chunk.choices[0].delta.content, end="")

レスポンスストリームの制限

重要

AgentCore Gateway は、レスポンスストリームの期間またはレスポンスサイズにサービスレベルの最大値を適用しません。ゲートウェイターゲットでトークン制限ポリシーを設定しない場合、各リクエストは無制限のストリーミングレスポンスを生成できます。

トークン制限ポリシーを設定しないと、無制限のレスポンスによって次の問題が発生する可能性があります。

  • ゲートウェイリソースの枯渇 — ゲートウェイは、各ストリーミングレスポンスの期間中、コンピューティングリソース (メモリ、HTTP 接続プールスロット、およびポリシー評価用の CPU) を開いたままにします。同時ストリームが大きいと、ゲートウェイタスクリソースが枯渇する可能性があります。

  • 共有認証情報のコスト増幅 – 同じターゲットをルーティングするすべてのユーザーは、1 セットのプロバイダー認証情報を共有します。高max_tokensリクエストを送信する 1 人のユーザーが、そのターゲットのすべてのユーザーの 1 tokens-per-minute (TPM) クォータを消費できます。

  • ノイズの多いネイバー効果 – Requests-per-minuteリクエスト数 (RPM) スロットリングはリクエスト数を制限しますが、リクエストあたりのコストは制限しません。1 人のユーザーが RPM 制限内で最大コストのリクエストを生成できるため、他のユーザーのパフォーマンスが低下します。

これらのリスクを軽減するには、ゲートウェイターゲットにトークン制限ポリシーを設定します。詳細については、「ゲートウェイポリシー」を参照してください。

アウトバウンド認可

推論コネクタターゲットは、次のアウトバウンド認可タイプをサポートしています。

  • IAM (SigV4) – IAM 認証を受け入れるプロバイダー (Amazon Bedrock など) GATEWAY_IAM_ROLEに使用します。

  • API キー – API キーを必要とするプロバイダー (OpenAI や Anthropic など) API_KEYに使用します。ゲートウェイは、保存された API キーをアウトバウンドリクエストに挿入します。