Bedrock経由でClaudeを呼び出す方法は、Claude APIで直接Claudeを呼び出す方法とは若干異なります。このガイドでは、AnthropicのクライアントSDKのいずれかを使用して、Bedrock上のClaudeへのAPI呼び出しを完了する手順を説明します。
なお、このガイドは、すでにAWSアカウントにサインアップし、プログラムによるアクセスを設定済みであることを前提としています。
2.13.23以降のAWS CLIをインストールします。aws sts get-caller-identityAnthropicのクライアントSDKはBedrockをサポートしています。boto3などのAWS SDKを直接使用することもできます。
pip install -U "anthropic[bedrock]"AWS Console > Bedrock > Model Accessに移動し、Anthropicモデルへのアクセスをリクエストします。Anthropicモデルの利用可能性はリージョンによって異なることに注意してください。最新情報についてはAWSドキュメントを参照してください。
ライフサイクル用語(非推奨、廃止済み)はモデルの非推奨で定義されています。パートナー運営プラットフォームでのライフサイクル日付はパートナーによって設定され、Claude APIのスケジュールとは異なる場合があります。Amazon Bedrock上の各モデルの現在の廃止日については、Amazon Bedrockのモデルライフサイクルページを参照してください。
AWSは、オンデマンドスループットではなくクロスリージョン推論を通じて新しいClaudeモデルを提供しています。これらのモデルでは、ベースモデルIDを渡すリクエストは、次のようなHTTP 400エラーで失敗します。
Invocation of model ID anthropic.claude-sonnet-4-5-20250929-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.これらのモデルを呼び出すには、ベースモデルIDの代わりに推論プロファイルを渡します。推論プロファイルIDは、次の表で「Yes」とマークされた列のプレフィックスを付けたベースモデルIDです。例:。arn:aws:bedrock:{region}:{account-id}:inference-profile/{inference-profile-id}の形式で完全な推論プロファイルARNを渡すこともできます。利用可能な推論プロファイルのAWS公式リストについては、推論プロファイルでサポートされているリージョンとモデルを参照してください。プレフィックスがルーティングと料金にどのように影響するかについては、グローバルエンドポイントとリージョナルエンドポイントセクションを参照してください。
| モデル | ベースBedrockモデルID | global | us | eu | jp | apac |
|---|---|---|---|---|---|---|
| Claude Opus 4.6 | Yes | Yes | Yes | Yes | Yes | |
| Claude Sonnet 4.6 | Yes | Yes | Yes | Yes | No | |
| Claude Sonnet 4.5 | Yes | Yes | Yes | Yes | No | |
| Claude Sonnet 4 非推奨。 | Yes | Yes | Yes | No | Yes | |
| Claude Sonnet 3.7 廃止済み。 | No | No | No | No | No | |
| Claude Opus 4.5 | Yes | Yes | Yes | No | No | |
| Claude Opus 4.1 非推奨。 | No | Yes | No | No | No | |
| Claude Opus 4 廃止済み。 | No | No | No | No | No | |
| Claude Haiku 4.5 | Yes | Yes | Yes | No | No | |
| Claude Haiku 3.5 非推奨。 | No | Yes | No | No | No |
次の例は、Bedrockを通じて利用可能なすべてのClaudeモデルのリストを出力する方法を示しています。
import boto3
bedrock = boto3.client(service_name="bedrock")
response = bedrock.list_foundation_models(byProvider="anthropic")
for summary in response["modelSummaries"]:
print(summary["modelId"])次の例は、Bedrock上のClaudeからテキストを生成する方法を示しています。
from anthropic import AnthropicBedrock
client = AnthropicBedrock(
# 認証には、以下のキーを指定するか、~/.aws/credentials や環境変数 "AWS_SECRET_ACCESS_KEY" および "AWS_ACCESS_KEY_ID" などの
# デフォルトの AWS 認証情報プロバイダーを使用します。
aws_access_key="<access key>",
aws_secret_key="<secret key>",
# 一時的な認証情報は aws_session_token で使用できます。
# 詳細は https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html を参照してください。
aws_session_token="<session_token>",
# aws_region はリクエスト送信先の AWS リージョンを変更します。デフォルトでは SDK は AWS_REGION を読み取り、
# 存在しない場合は us-east-1 が使用されます。なお、SDK はリージョンについて ~/.aws/config を読み取りません。
aws_region="us-west-2",
)
message = client.messages.create(
model="global.anthropic.claude-opus-4-6-v1",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)
print(message.content)詳細についてはクライアントSDKを、また公式Bedrockドキュメントも参照してください。
AWS認証情報の代わりにベアラートークンを使用してBedrockで認証できます。これは、AWS認証情報、IAMロール、またはアカウントレベルの権限を管理せずにチームがBedrockにアクセスする必要がある企業環境で役立ちます。
最も簡単な方法は、AWS_BEARER_TOKEN_BEDROCK環境変数を設定することです。各SDKは環境から認証情報を解決する際にこれを自動的に検出します。
プログラムでトークンを提供するには:
from anthropic import AnthropicBedrock
client = AnthropicBedrock(
api_key="your-bearer-token",
aws_region="us-west-2",
)
message = client.messages.create(
model="us.anthropic.claude-sonnet-4-5-20250929-v1:0",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}],
)
print(message.content)Bedrockは、使用状況に関連するプロンプトと完了をログに記録できる呼び出しログサービスを提供しています。
Anthropicは、アクティビティを把握し、潜在的な不正使用を調査するために、少なくとも30日間のローリングベースでアクティビティをログに記録することを推奨しています。
Amazon Bedrockでの利用可能性を含む完全な機能リストについては、機能の概要を参照してください。
fallbacksパラメータ。代わりにクライアントサイドフォールバックパターンを使用してください)cache_controlフィールド。代わりに明示的なキャッシュブレークポイントを使用してください)PDFサポートは、Converse APIとInvokeModel APIの両方を通じてBedrockで利用可能です。PDF処理機能と制限の詳細については、Amazon BedrockのPDFサポートを参照してください。
Converse APIユーザー向けの重要な考慮事項:
Claude Fable 5、Claude Opus 5、Claude Opus 4.8、Claude Opus 4.7、Claude Opus 4.6、Claude Sonnet 5、およびClaude Sonnet 4.6は、Amazon Bedrock上で100万トークンのコンテキストウィンドウを持っています。Sonnet 4.5およびSonnet 4(非推奨)を含むその他のClaudeモデルは、20万トークンのコンテキストウィンドウを持っています。
Bedrockはリクエストペイロードを20 MBに制限しています。大きなドキュメントや多数の画像を送信する場合、トークン制限に達する前にこの制限に達する可能性があります。
Claude Sonnet 4.5以降のすべてのモデルから、Bedrockは2種類のエンドポイントを提供します。
リージョナルエンドポイントには、グローバルエンドポイントに対して10%の料金プレミアムが含まれます。
グローバルエンドポイント(推奨):
リージョナルエンドポイント(CRIS):
グローバルエンドポイントの使用(Opus 4.6、Sonnet 4.6、Sonnet 4.5のデフォルト):
Claude Opus 4.6、Sonnet 4.6、Sonnet 4.5のモデルIDには、すでにglobal.プレフィックスが含まれています。
from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
message = client.messages.create(
model="global.anthropic.claude-opus-4-6-v1",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)リージョナルエンドポイント(CRIS)の使用:
リージョナルエンドポイントを使用するには、global.プレフィックスをus.などのリージョナルプレフィックスに置き換えます。
from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
# 米国リージョナルエンドポイント(CRIS)を使用
message = client.messages.create(
model="us.anthropic.claude-opus-4-6-v1", # Regional prefix
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)Was this page helpful?