Bedrock AWS SDK経由でClaude 3.7 Sonnetを呼び出す
要点
- BedrockのAWS SDK経由でClaude 3.7 Sonnetを呼び出すときは、
InvokeModel
に推論プロファイルIDus.anthropic.claude-3-7-sonnet-20250219-v1:0
を指定する必要がある- モデルIDである
anthropic.claude-3-7-sonnet-20250219-v1:0
を指定しても実行できない
- モデルIDである
- Bedrockが用意した推論プロファイルIDを使用して呼び出す場合、複数のリージョンのうちいずれかに処理の実行が振り分けられる
挙動の詳細
挙動を確認したのは、AWS SDK for JavaScript v3です。
次に示すClaude 3.5 Sonnetを呼び出すInvokeModelCommand
を、Claude 3.7 Sonnetの呼び出しに変更します。
const command = new InvokeModelCommand({
modelId: "anthropic.claude-3-5-sonnet-20241022-v2:0",
body: JSON.stringify({
anthropic_version: "bedrock-2023-05-31",
max_tokens: 1000,
messages: [
{
role: "user",
content: [{ type: "text", text: "こんにちは。" }],
},
],
}),
accept: "application/json",
contentType: "application/json",
});
このときanthropic.claude-3-7-sonnet-20250219-v1:0
を指定すると、モデルIDに対応していないというエラーが発生します。
Error executing script: ValidationException: Invocation of model ID anthropic.claude-3-7-sonnet-20250219-v1:0 with on-demand throughput isn't supported. Retry your request with the ID or ARN of an inference profile that contains this model.
代わりに、Claude 3.7 Sonnetの推論プロファイルIDであるus.anthropic.claude-3-7-sonnet-20250219-v1:0
を指定すると実行に成功します。
modelId: "us.anthropic.claude-3-7-sonnet-20250219-v1:0",
モデル一覧やリージョンごとのモデルサポート状況一覧では、Claude 3.7 Sonnetに注記が付いており、クロスリージョン推論のみでアクセス可能とあります。
推論プロファイル
推論プロファイル(Inference profiles)とは、モデルとリージョンをあわせたリソース単位です。
Bedrockが提供する「クロスリージョン推論プロファイル」と、ユーザが作成する「アプリケーション推論プロファイル」に分類され、想定されるユースケースが異なります。(参考)
Claude 3.7 Sonnetの推論プロファイルは、クロスリージョン推論プロファイルにあたります。
クロスリージョン推論
クロスリージョン推論とは、複数のAWSリージョンでトラフィックを分散させる方法です。追加のコストはかかりません。(参考)
クロスリージョン推論プロファイルには、複数のリージョンを含む地理単位(us
など)が指定されています。
例えばus.anthropic.claude-3-7-sonnet-20250219-v1:0
であれば、下記のうちいずれかのリージョンに振り分けられます。
- 米国東部(バージニア州北部)
- 米国東部(オハイオ)
- 米国西部(オレゴン)
モデルごとの推論プロファイルIDは、こちらで確認することができます。

NCDC株式会社( ncdc.co.jp/ )のエンジニアチームです。 募集中のエンジニアのポジションや、採用している技術スタックの紹介などはこちら( github.com/ncdcdev/recruitment )をご覧ください! ※エンジニア以外も記事を投稿することがあります
Discussion