从 Agentic AI 五层架构看 Bedrock 的定位与实践
AWS 解决方案架构师分享 · 2026 年 7 月
Amazon Nova、Meta Llama、Mistral、xAI Grok,以及 DeepSeek、Qwen、GLM、Kimi、MiniMax 等中国系模型——覆盖超低成本到多模态各类需求,按需选用。
| 模型 | 定位 | 适用场景 |
|---|---|---|
| Claude Fable 5 🆕 2026-06 | Mythos 级新旗舰,高于 Opus 一档 | 跨多日自主 Agent:分阶段规划、委派子 Agent、自我验证 |
| Claude Opus 4.8 | 旗舰,最强推理 | 复杂 Agent 任务、深度分析、高难度编码 |
| Claude Sonnet 5 促销中 | 新一代主力 | 质量/成本最佳平衡,日常生产负载首选 |
| Claude Sonnet 4.6 | 上一代主力,成熟稳定 | 已验证的生产工作负载 |
| Claude Haiku 4.5 | 最快最便宜 | 分类、路由、摘要等高频轻量任务 |
1M token 窗口 + 128K 输出,可整库分析代码
独立测试 SWE-Bench Pro 约 80%,领先同档
全系支持 Prompt 缓存,独有 1 小时 TTL
| 模型 | 定位 | 说明 |
|---|---|---|
| GPT-5.6 Sol | 旗舰 | 最强能力档 |
| GPT-5.6 Terra | 中档主力 | 价格为 Sol 的一半,均衡之选 |
| GPT-5.6 Luna | 轻量档 | 高性价比、低延迟 |
| gpt-oss 120B / 20B | 开放权重 | 可微调(RFT),支持 Batch / Flex 层级 |
GPT-5.6 部署在 us-east-1 / us-east-2 / us-west-2,价格与 OpenAI 数据驻留档持平——不出 AWS 就能用 OpenAI 前沿模型
GPT-5.6 支持 30 分钟缓存窗口(介于 Claude 5min 和 1h 两档之间),读 0.1× 价格
| 端点 | 用途 | API |
|---|---|---|
bedrock | 控制面 | 列模型、管理访问、预置吞吐 |
bedrock-runtime | 数据面(AWS 原生) | Converse / ConverseStream / InvokeModel |
bedrock-mantle | 数据面(三方 SDK 兼容) | OpenAI Chat Completions / Responses + Anthropic Messages |
推荐默认。统一格式,一套代码切换全部文本模型,支持工具调用/流式/多模态
各厂商原生格式(Anthropic ≠ Llama ≠ Nova),仅在需要厂商私有功能时使用
Chat Completions:GPT 全系 + DeepSeek / Qwen / GLM / Kimi 等多数对话模型
Responses:GPT-5.6 系为主
Anthropic Messages:仅 Claude 全系(Anthropic SDK / Claude Code 可直连)
import boto3
brt = boto3.client("bedrock-runtime",
region_name="us-east-1")
resp = brt.converse(
modelId="global.anthropic.claude-fable-5",
system=[{"text": "你是资深云架构师"}],
messages=[{"role": "user",
"content": [{"text": "用一句话介绍 Bedrock"}]}],
inferenceConfig={"maxTokens": 512}, # 必须显式设置!
)
print(resp["output"]["message"]
["content"][0]["text"])
print(resp["usage"]) # token 用量与缓存指标
aws bedrock-runtime converse \
--model-id global.anthropic.claude-fable-5 \
--messages '[{"role":"user","content":
[{"text":"用一句话介绍 Bedrock"}]}]' \
--inference-config '{"maxTokens":512}' \
--region us-east-1
💡 切换模型只改 model-id:换成 gpt-5.6-terra 或 deepseek.v3-2,代码一行不动
⚠️ CLI 不支持流式,流式请用 SDK 的 converse_stream()
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-mantle"
".us-east-1.amazonaws.com/v1",
api_key="$BEDROCK_API_KEY", # Bedrock API Key
)
resp = client.chat.completions.create(
model="gpt-5.6-terra",
max_tokens=512,
messages=[{"role": "user",
"content": "介绍一下 Bedrock"}],
)
print(resp.choices[0].message.content)
curl https://bedrock-mantle.us-east-1\
.amazonaws.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $BEDROCK_API_KEY" \
-d '{
"model": "gpt-5.6-terra",
"max_tokens": 512,
"messages": [
{"role":"user","content":"介绍一下 Bedrock"}
]
}'
✅ OpenAI 生态(LangChain、LlamaIndex、网关)改 base_url + key 即接入
✅ Anthropic SDK 同理:Messages API(/v1/messages)原生格式直连 Claude,Claude Code 等工具无缝对接
| 方式 | 形态 | 有效期 | 适用场景 |
|---|---|---|---|
| IAM 临时凭证(Role / STS)生产首选 | SigV4 签名,SDK 自动 | 小时级,自动轮换 | EC2 / Lambda / EKS 后端服务:无长期密钥、最小权限、CloudTrail 全审计 |
| IAM 长期 AK/SK | SigV4 签名 | 长期(需人工轮换) | 传统集成、本地 profile;新项目不推荐长期密钥 |
| API Key(短期) | Bearer token | ≤12 小时(随会话) | 本地开发、快速调试;权限继承生成者身份 |
| API Key(长期) | Bearer token(后台自动创建专属 IAM 用户) | 自定义过期时间 | 探索试用;官方不建议用于生产 |
# API Key 方式:SDK 自动识别环境变量
export AWS_BEARER_TOKEN_BEDROCK=your-api-key
# curl 则用 -H "Authorization: Bearer $KEY"
# SigV4 方式:boto3 自动签名
# 凭证链:环境变量 → ~/.aws/credentials → IAM Role
| 格式 | 示例 | 含义 |
|---|---|---|
| 基础 ID | anthropic.claude-sonnet-4-6 | 单区域按需,仅限该区域有 in-region 部署的模型 |
| 地理前缀 | us. / eu. / apac. + 基础 ID | 跨区域推理 Profile:地理边界内多区域路由,数据不出边界 |
| 全球前缀 | global.anthropic.claude-fable-5 | 路由到任意商业区域,最大吞吐与可用性 |
| ARN | arn:aws:bedrock:…:inference-profile/… | 应用推理 Profile(打 tag 做成本分摊)/ 预置吞吐 |
⚠️ 很多新模型只能通过推理 Profile 调用——直接用基础 ID 会报 on-demand throughput isn't supported。用 aws bedrock list-inference-profiles 查询。
| Claude(显式) | GPT-5.6(显式断点) | |
|---|---|---|
| 触发 | 手动插 cachePoint 标记 | prompt_cache_breakpoint 断点;默认 implicit 模式自动在最新消息加一个断点 |
| TTL | 5 分钟默认 / 1 小时可选 | 30 分钟(默认,prompt_cache_options.ttl) |
| 门槛/上限 | 1024–4096 tok(按模型)/ 4 个检查点 | 1024 tok / 4 个断点 |
| 观察指标 | cacheRead/WriteInputTokens | cached_tokens / cache_write_tokens |
⚠️ 仅 GPT-5.5 及更早是全自动缓存(≥1024 tok 前缀、写入免费);GPT-5.6 起改为显式断点、写入 1.25×。GPT 缓存走 Responses API(bedrock-mantle)。
好的缓存对象:system prompt、few-shot、工具定义、长文档
⚠️ 两家都要求前缀逐字节一致——时间戳、会话 ID 放到动态部分/标记之后,否则缓存碎片化
resp = brt.converse(
modelId="us.anthropic.claude-sonnet-4-6",
system=[
{"text": LONG_SYSTEM_PROMPT}, # >2048 tok
{"cachePoint": {"type": "default"}},
],
messages=[{"role": "user",
"content": [{"text": user_question}]}],
inferenceConfig={"maxTokens": 1024},
)
u = resp["usage"]
# 首次: cacheWriteInputTokens > 0
# 后续: cacheReadInputTokens > 0 (命中!)
print(u["cacheReadInputTokens"],
u["cacheWriteInputTokens"])
写入计价:Claude 5 分钟写 1.25×、1 小时写 2×;GPT-5.6 30 分钟写 1.25×(无 1h 档)。示例($/百万 tok):Sonnet 4.6 写 $3.75(5m) / $6.00(1h)、读 $0.30;GPT-5.6 Terra 写 $3.44(30m)、读 $0.28。
| 窗口内请求数 | 输入成本节省 |
|---|---|
| 1(仅写入) | −25%(更贵!) |
| 2 | 32% |
| 5 | 67% |
| 10 | 78% |
💡 算例:10K token system prompt 的 Agent,每轮输入成本从 $0.03 → $0.003(Sonnet 4.6),高频调用月成本差一个数量级
| 模型 | 输入 | 输出 | 缓存读 |
|---|---|---|---|
| Fable 5 | $10.00 | $50.00 | ~$1.00* |
| Opus 4.8 | $5.00 | $25.00 | $0.50 |
| Sonnet 5 促销 | $2.00 | $10.00 | — |
| Sonnet 4.6 | $3.00 | $15.00 | $0.30 |
| Haiku 4.5 | $1.00 | $5.00 | $0.10 |
促销价至 2026-08-31,之后 $3/$15。*Fable 5 缓存价按标准乘数推算,以定价页为准。EU 区 Fable 5 为 $11/$55。
| 模型 | 输入 | 输出 | 缓存读 |
|---|---|---|---|
| GPT-5.6 Sol | $5.50 | $33.00 | $0.55 |
| GPT-5.6 Terra | $2.75 | $16.50 | $0.28 |
| GPT-5.6 Luna | $1.10 | $6.60 | $0.11 |
| gpt-oss 120B | ~$0.15 | ~$0.60 | — |
💡 为什么和 OpenAI 官网价"对不上":Bedrock 当前为 In-Region 区域内推理,对标 OpenAI 的 Data Residency(数据驻留)档——两者价格完全一致;Bedrock global 跨区推理上线后,价格将与 OpenAI 标准档一致。
🌏 其他模型一句话:DeepSeek / Qwen / GLM / Kimi / MiniMax 输入价普遍在 $0.1–$1 区间,追求极致成本时选用
| 级别 | 价格 | 适用场景 |
|---|---|---|
| Standard(默认) | 基准价 | 大多数场景,按需付费 |
| Priority | +75% | 客户端低延迟敏感应用,优先处理 |
| Flex | −50% | 非实时任务(评估、摘要),高峰可能排队 |
| Batch | −50% | 离线批量异步处理 |
| Reserved | 1/3 个月承诺 | 关键业务,99.5% 可用性目标,专用容量 |
| 预置吞吐 | 按小时/模型单元 | 高稳定大流量 |
谢谢!欢迎交流讨论
定价与模型信息以 aws.amazon.com/bedrock/pricing 为准(2026-07 数据)