通过 Bedrock 调用 Claude 与使用 Anthropic 客户端 SDK 调用 Claude 的方式略有不同。本指南将引导您完成通过 Python 或 TypeScript 向 Bedrock 上的 Claude 发起 API 调用的过程。
请注意,本指南假设您已经注册了 AWS 账户并配置了编程访问。
2.13.23 或更新版本aws sts get-caller-identityAnthropic 的客户端 SDK支持 Bedrock。您也可以直接使用 AWS SDK,如 boto3。
pip install -U "anthropic[bedrock]"前往 AWS 控制台 > Bedrock > 模型访问并请求访问 Anthropic 模型。请注意,Anthropic 模型的可用性因地区而异。有关最新信息,请参阅 AWS 文档。
| 模型 | 基础 Bedrock 模型 ID | global | us | eu | jp | apac |
|---|---|---|---|---|---|---|
| Claude Sonnet 4.5 | anthropic.claude-sonnet-4-5-20250929-v1:0 | 是 | 是 | 是 | 是 | 否 |
| Claude Sonnet 4 | anthropic.claude-sonnet-4-20250514-v1:0 | 是 | 是 | 是 | 否 | 是 |
| Claude Sonnet 3.7 ⚠️ | anthropic.claude-3-7-sonnet-20250219-v1:0 | 否 |
有关区域与全局模型 ID 的更多信息,请参阅下面的全局与区域端点部分。
以下示例展示了如何打印通过 Bedrock 提供的所有 Claude 模型的列表:
aws bedrock list-foundation-models --region=us-west-2 --by-provider anthropic --query "modelSummaries[*].modelId"以下示例展示了如何从 Bedrock 上的 Claude 生成文本:
有关更多详情,请参阅我们的客户端 SDK,以及官方 Bedrock 文档此处。
Bedrock 提供了一个调用日志服务,允许客户记录与您的使用相关的提示和完成。
Anthropic 建议您至少在 30 天滚动基础上记录您的活动,以便了解您的活动并调查任何潜在的滥用。
启用此服务不会向 AWS 或 Anthropic 提供对您内容的任何访问权限。
您可以在此处找到 Bedrock 上当前支持的所有功能。
PDF 支持在 Amazon Bedrock 上通过 Converse API 和 InvokeModel API 都可用。有关 PDF 处理功能和限制的详细信息,请参阅 PDF 支持文档。
Converse API 用户的重要注意事项:
有关两种文档处理模式及其限制的更多详情,请参阅 PDF 支持指南。
Claude Sonnet 4 和 4.5 在 Amazon Bedrock 上支持 100 万令牌上下文窗口。
100 万令牌上下文窗口目前处于测试阶段。要使用扩展上下文窗口,请在您的 Bedrock API 请求中包含 context-1m-2025-08-07 测试版标头。
从 Claude Sonnet 4.5 和所有未来模型开始,Amazon Bedrock 提供两种端点类型:
区域端点的价格比全局端点高 10%。
这仅适用于 Claude Sonnet 4.5 和未来模型。较旧的模型(Claude Sonnet 4、Opus 4 及更早版本)保持其现有的定价结构。
全局端点(推荐):
区域端点 (CRIS):
使用全局端点(Sonnet 4.5 和 4 的默认值):
Claude Sonnet 4.5 和 4 的模型 ID 已包含 global. 前缀:
使用区域端点 (CRIS):
要使用区域端点,请从模型 ID 中删除 global. 前缀:
| 是 |
| 是 |
| 否 |
| 是 |
| Claude Opus 4.5 | anthropic.claude-opus-4-5-20251101-v1:0 | 是 | 是 | 是 | 否 | 否 |
| Claude Opus 4.1 | anthropic.claude-opus-4-1-20250805-v1:0 | 否 | 是 | 否 | 否 | 否 |
| Claude Opus 4 | anthropic.claude-opus-4-20250514-v1:0 | 否 | 是 | 否 | 否 | 否 |
| Claude Opus 3 ⚠️ | anthropic.claude-3-opus-20240229-v1:0 | 否 | 是 | 否 | 否 | 否 |
| Claude Haiku 4.5 | anthropic.claude-haiku-4-5-20251001-v1:0 | 是 | 是 | 是 | 否 | 否 |
| Claude Haiku 3.5 ⚠️ | anthropic.claude-3-5-haiku-20241022-v1:0 | 否 | 是 | 否 | 否 | 否 |
| Claude Haiku 3 | anthropic.claude-3-haiku-20240307-v1:0 | 否 | 是 | 是 | 否 | 是 |
from anthropic import AnthropicBedrock
client = AnthropicBedrock(
# 通过提供以下密钥进行身份验证,或使用默认的 AWS 凭证提供程序,例如
# 使用 ~/.aws/credentials 或 "AWS_SECRET_ACCESS_KEY" 和 "AWS_ACCESS_KEY_ID" 环境变量。
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 区域。默认情况下,我们读取 AWS_REGION,
# 如果不存在,我们默认为 us-east-1。请注意,我们不读取 ~/.aws/config 中的区域。
aws_region="us-west-2",
)
message = client.messages.create(
model="global.anthropic.claude-sonnet-4-5-20250929-v1:0",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}]
)
print(message.content)from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
message = client.messages.create(
model="global.anthropic.claude-sonnet-4-5-20250929-v1:0",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}]
)from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
# 使用美国区域端点 (CRIS)
message = client.messages.create(
model="anthropic.claude-sonnet-4-5-20250929-v1:0", # 无 global. 前缀
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}]
)