本页面涵盖当今可用的 Amazon Bedrock 集成(带有 ARN 版本化模型标识符和 AWS 事件流编码的 InvokeModel 和 Converse API)。新的 AWS 托管产品的研究预览版,具有 /anthropic/v1/messages 处的 Messages API 和 SSE 流,已在 Amazon Bedrock 中的 Claude(研究预览版) 中记录。
通过 Bedrock 调用 Claude 与使用 Anthropic 的客户端 SDK 调用 Claude 的方式略有不同。本指南将引导您使用 Anthropic 的 客户端 SDK 之一完成对 Bedrock 上 Claude 的 API 调用。
请注意,本指南假设您已经注册了 AWS 账户 并配置了编程访问。
2.13.23 或更高版本的 AWS CLIaws sts get-caller-identityAnthropic 的 客户端 SDK 支持 Bedrock。您也可以直接使用 AWS SDK,如 boto3。
转到 AWS 控制台 > Bedrock > 模型访问 并请求访问 Anthropic 模型。请注意,Anthropic 模型的可用性因地区而异。有关最新信息,请参阅 AWS 文档。
Claude Opus 4.7 可通过 Amazon Bedrock 中的 Claude 在 AWS 上获得, 目前处于研究预览版。它不可通过本页面记录的标准 Bedrock 模型目录获得。
| 模型 | 基础 Bedrock 模型 ID | global | us | eu | jp | apac |
|---|---|---|---|---|---|---|
| Claude Opus 4.6 | anthropic.claude-opus-4-6-v1 | 是 | 是 | 是 | 是 | 是 |
| Claude Sonnet 4.6 | anthropic.claude-sonnet-4-6 | 是 | 是 | 是 | 是 | 否 |
| 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 | 否 | 是 | 是 | 否 | 是 |
| 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 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 | 否 | 是 | 是 | 否 | 是 |
有关区域与全局模型 ID 的更多信息,请参阅下面的 全局与区域端点 部分。
以下示例展示了如何打印通过 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 凭证提供程序,例如
# 使用 ~/.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-opus-4-6-v1",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)
print(message.content)有关更多详细信息,请参阅 客户端 SDK 和 官方 Bedrock 文档。
您可以使用 Bearer 令牌而不是 AWS 凭证来对 Bedrock 进行身份验证。这在企业环境中很有用,其中团队需要访问 Bedrock,而无需管理 AWS 凭证、IAM 角色或账户级权限。
Bearer 令牌身份验证在 C#、Go 和 Java SDK 中受支持。PHP、Python、TypeScript 和 Ruby SDK 仅使用 AWS SigV4 签名。
最简单的方法是设置 AWS_BEARER_TOKEN_BEDROCK 环境变量,该变量由 fromEnv() 凭证解析自动检测。
以编程方式提供令牌:
using Anthropic.Bedrock;
using Anthropic.Models.Messages;
var client = new AnthropicBedrockClient(
new AnthropicBedrockApiTokenCredentials
{
BearerToken = "your-bearer-token",
Region = "us-east-1",
}
);
var response = await client.Messages.Create(new MessageCreateParams
{
Model = "us.anthropic.claude-sonnet-4-5-20250929-v1:0",
MaxTokens = 1024,
Messages = [new() { Role = Role.User, Content = "Hello!" }],
});Bedrock 提供了一个 调用日志服务,允许客户记录与您的使用相关的提示和完成。
Anthropic 建议您至少在 30 天滚动基础上记录您的活动,以便了解您的活动并调查任何潜在的滥用。
启用此服务不会给 AWS 或 Anthropic 任何访问您内容的权限。
有关 Bedrock 上当前支持的所有功能,请参阅 API 功能概述。
PDF 支持可通过 Converse API 和 InvokeModel API 在 Amazon Bedrock 上获得。有关 PDF 处理功能和限制的详细信息,请参阅 PDF 支持文档。
Converse API 用户的重要注意事项:
有关两种文档处理模式及其限制的更多详细信息,请参阅 PDF 支持指南。
Claude Opus 4.6 和 Claude Sonnet 4.6 在 Amazon Bedrock 上有 100 万令牌上下文窗口。其他 Claude 模型,包括 Sonnet 4.5 和 Sonnet 4(已弃用),有 20 万令牌上下文窗口。
Amazon Bedrock 将请求有效负载限制为 20 MB。发送大型文档或许多图像时,您可能会在达到令牌限制之前达到此限制。
从 Claude Sonnet 4.5 和所有未来模型 开始,Amazon Bedrock 提供两种端点类型:
区域端点包括相对于全局端点的 10% 定价溢价。
这仅适用于 Claude Sonnet 4.5 和未来模型。较旧的模型(Claude Sonnet 4(已弃用)、Opus 4(已弃用)及更早版本)保持其现有的定价结构。
全局端点(推荐):
区域端点 (CRIS):
使用全局端点(Opus 4.6、Sonnet 4.5 和 Sonnet 4(已弃用)的默认值):
Claude Sonnet 4.5 和 4(已弃用)的模型 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):
要使用区域端点,请从模型 ID 中删除 global. 前缀:
from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
# 使用美国区域端点 (CRIS)
message = client.messages.create(
model="anthropic.claude-opus-4-6-v1", # 无 global. 前缀
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)Claude Mythos 预览版 是一个研究预览版模型,可供 Amazon Bedrock 上的受邀客户使用。有关更多信息,请参阅 Project Glasswing。
Was this page helpful?