Claude Platform Docs
Messages云平台上的 Claude

Amazon Bedrock 上的 Claude(Opus 4.6 及更早版本)

适用于 Claude 模型的旧版 Amazon Bedrock 集成,使用 InvokeModel 和 Converse API 以及带 ARN 版本的模型标识符。

通过 Bedrock 调用 Claude 与直接在 Claude API 上调用 Claude 略有不同。本指南将引导您使用 Anthropic 的客户端 SDK 之一完成对 Bedrock 上 Claude 的 API 调用。

请注意,本指南假设您已经注册了 AWS 账户并配置了编程访问。

安装并配置 AWS CLI

  1. 安装 AWS CLI,版本需为 2.13.23 或更高。
  2. 使用 AWS configure 命令配置您的 AWS 凭证(请参阅配置 AWS CLI),或者在 AWS 控制面板中导航至"Command line or programmatic access"(命令行或编程访问),并按照弹出窗口中的说明查找您的凭证。
  3. 验证您的凭证是否有效:
AWS CLI
aws sts get-caller-identity

安装用于访问 Bedrock 的 SDK

Anthropic 的客户端 SDK 支持 Bedrock。您也可以直接使用 boto3 等 AWS SDK。

pip install -U "anthropic[bedrock]"

访问 Bedrock

订阅 Anthropic 模型

前往 AWS Console > Bedrock > Model Access 并申请访问 Anthropic 模型。请注意,Anthropic 模型的可用性因区域而异。请参阅 AWS 文档了解最新信息。

API 模型 ID

生命周期术语(Deprecated 已弃用、Retired 已停用)的定义见模型弃用。合作伙伴运营平台上的生命周期日期由合作伙伴设定,可能与 Claude API 的时间表不同。如需了解 Amazon Bedrock 上任何模型的当前停用日期,请参阅 Amazon Bedrock 的模型生命周期页面

AWS 通过 cross-region inference(跨区域推理)而非按需吞吐量提供较新的 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.

要调用这些模型,请传递推理配置文件(inference profile)而非基础模型 ID。推理配置文件 ID 是在基础模型 ID 前加上下表中标记为"是"的列所对应的前缀,例如 。您也可以传递完整的推理配置文件 ARN,格式为 arn:aws:bedrock:{region}:{account-id}:inference-profile/{inference-profile-id}。如需 AWS 官方的可用推理配置文件列表,请参阅推理配置文件支持的区域和模型。要了解这些前缀如何影响路由和定价,请参阅全球端点与区域端点部分。

模型基础 Bedrock 模型 IDglobaluseujpapac
Claude Opus 4.6
Claude Sonnet 4.6
Claude Sonnet 4.5
Claude Sonnet 4
已弃用。
Claude Sonnet 3.7
已停用。
Claude Opus 4.5
Claude Opus 4.1
已弃用。
Claude Opus 4
已停用。
Claude Haiku 4.5
Claude Haiku 3.5
已弃用。

列出可用模型

以下示例展示了如何打印通过 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 区域。如果未提供,SDK 会依次读取
    # AWS_REGION / AWS_DEFAULT_REGION,然后是为您的 boto3 会话或 AWS 配置文件配置的区域
    # (包括 ~/.aws/config),如果无法解析出任何区域,则抛出 ValueError。
    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 令牌身份验证

您可以使用 bearer token(持有者令牌)而非 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 可用性的完整功能列表,请参阅功能概览

支持的功能亮点

不支持的功能

  • 输入源(图像和文档的 URL 源、Files API)
  • 服务器端工具(代码执行、网页搜索、网页抓取、advisor)
  • 智能体基础设施(Agent Skills、MCP 连接器、编程式工具调用)
  • API 端点(Message Batches、Models、Admin、Compliance、Usage and Cost)
  • Claude Managed Agents
  • 服务器端回退(fallbacks 参数;请改用客户端回退模式
  • 自动提示缓存(顶层 cache_control 字段;请改用显式缓存断点
  • 计算机使用浏览器使用工具集(computer_toolset_20260801browser_toolset_20260801 目前在 Amazon Bedrock 上不可用;beta 版计算机使用工具版本仍然可用)

Bedrock 上的 PDF 支持

Bedrock 通过 Converse API 和 InvokeModel API 均提供 PDF 支持。有关 PDF 处理能力和限制的详细信息,请参阅 Amazon Bedrock PDF 支持

Converse API 用户的重要注意事项:

  • 可视化 PDF 分析(图表、图像、布局)需要启用引用功能
  • 未启用引用时,仅提供基本的文本提取
  • 如需在不强制引用的情况下获得完全控制,请使用 InvokeModel API

Bedrock 上的对话中途系统消息

对话中途系统消息可通过 InvokeModel API 用于 Claude Fable 5.1、Claude Fable 5、Claude Opus 5 和 Claude Opus 4.8。如 API 模型 ID 下的说明所述,这些请求由与 Amazon Bedrock 中的 Claude 端点相同的基础设施提供服务。无需 beta 标头。此功能在 Claude Sonnet 5 上不可用,请改用顶层 system 字段。本页模型表中带 ARN 版本的模型也不支持此功能。

对于 Converse API 用户: Converse API 通过其顶层 system 参数接受系统指令。如需在对话中途添加系统指令,请使用 InvokeModel API。

上下文窗口

Claude Fable 5.1、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 万令牌的 context window(上下文窗口)。其他 Claude 模型,包括 Sonnet 4.5 和 Sonnet 4(已弃用),拥有 20 万令牌的上下文窗口。

Bedrock 将请求负载限制为 20 MB。发送大型文档或大量图像时,您可能会在达到令牌限制之前先达到此限制。

全球端点与区域端点

Claude Sonnet 4.5 及所有未来模型开始,Bedrock 提供两种端点类型:

  • 全球端点: 动态路由以实现最大可用性
  • 区域端点: 保证数据通过特定地理区域路由

区域端点的定价比全球端点高 10%。

何时使用各选项

全球端点(推荐):

  • 提供最大的可用性和正常运行时间
  • 将请求动态路由到有可用容量的区域
  • 无定价溢价
  • 最适合数据驻留要求灵活的应用

区域端点(CRIS):

  • 通过特定地理区域路由流量
  • 满足数据驻留和合规要求所必需
  • 适用于美国、欧盟、日本和亚太地区
  • 10% 的定价溢价反映了专用区域容量的基础设施成本

实现

使用全球端点(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?