LuAITools.com
Submit
AI 编程工具

Amazon Bedrock

Amazon Bedrock 是 AWS 的生成式 AI 开发平台,为开发者提供多种基础模型和 API 能力,用于构建和部署企业级 AI 应用。

访问官网

☁️ Amazon Bedrock 是什么:AWS 的全托管基础模型服务平台

Amazon Bedrock 是亚马逊云科技推出的一项全托管生成式 AI 服务。简单说,它把市面上主流的基础模型集中到了一个平台上,你用同一套 API 就能调用 Anthropic、Meta、Mistral、Cohere、DeepSeek 以及亚马逊自家的 Nova 系列模型,不用分别去各家官网注册、对接、维护密钥。

它的定位和 SageMaker 不一样。SageMaker 面向的是需要从头训练、深度定制模型的数据科学家和 ML 工程师,基础设施管理更多、灵活性更高。Bedrock 面向的是想把 AI 能力快速集成到应用里的开发者——serverless 架构,不需要管 GPU 实例,不需要配推理集群,调用即付费。AWS 官方的决策指南说得很直白:如果你主要用预训练模型做推理,选 Bedrock;如果你需要大量训练和定制,选 SageMaker。

截至 2026 年中,Bedrock 上可用的模型大约有 100 多个,来自约 18 家模型提供商,覆盖文本、代码、图像和视频生成[reference:1]。这个规模本身就说明了 Bedrock 的核心卖点:你不用绑定某一家模型厂商,换模型只需要改一行 model ID,不用重新搭架构

Amazon Bedrock
Amazon Bedrock

🧩 核心功能:不止是调用模型,还有一整套构建模块

Bedrock 最有价值的地方在于它不只是一个模型 API 网关,而是围绕模型调用提供了一整套配套能力。

Knowledge Bases(知识库)是使用频率最高的附加功能之一。你把文档放到 S3 里,Bedrock 自动做分块、嵌入、索引,然后模型回答问题时会自动检索相关内容来增强回答质量。这就是所谓的 RAG(检索增强生成),不需要自己搭向量数据库和检索管道。

Agents(智能体)让模型可以调用外部工具和 API 完成多步骤任务。比如让 Agent 去查数据库、发邮件、更新 CRM 记录,它会自动规划调用顺序。Bedrock 的 Agent 开发和框架无关,你用 LangChain、Strands 或者自定义逻辑都可以。

Guardrails(护栏)是企业场景里很重要的功能。你可以配置内容过滤策略、拦截提示注入攻击、检测和脱敏 PII(个人身份信息)、限制模型讨论某些话题。Guardrails 是模型无关的,切换模型不需要重新配置。实测延迟在 100 毫秒以内,对生产环境影响不大[reference:2]。

Flows(工作流)支持把多个模型调用和数据处理步骤串联起来,形成一个端到端的生成式 AI 工作流。比如“接收用户问题 → 检索知识库 → 调用模型生成回答 → 做内容过滤 → 返回结果”这一整套流程可以在 Flows 里可视化编排。

此外还有 Data Automation 用于处理非结构化数据,Prompt Management 用于管理和复用提示词模板,以及 Model Evaluation 用于对比不同模型在特定任务上的表现。

🔌 如何上手:从注册到第一次 API 调用

Bedrock 没有独立的客户端软件或 App,它是 AWS 控制台里的一个服务,通过 API、SDK 和 CLI 调用。开始使用分几步:

第一步,准备 AWS 账号和凭证。你需要一个 AWS 账号,然后在 IAM 里创建一个有 Bedrock 访问权限的 IAM 用户,拿到 Access Key 和 Secret Key。如果是新 AWS 账号,目前可以拿到最多 200 美元的免费额度,其中一部分可以通过使用 Bedrock 等指定服务额外获得[reference:3]。

第二步,在控制台里启用想用的模型。Bedrock 的模型不是开箱即用的,你需要在控制台的 Model access 页面手动勾选要启用的模型。部分模型需要提交使用申请,审批通过后才能调用。这一步是很多新手第一次踩坑的地方——API 报错说模型不可用,很可能就是忘了启用。

第三步,用 SDK 调用模型。最常用的方式是 Python 的 boto3。核心代码大概长这样:

import boto3, json
bedrock = boto3.client("bedrock-runtime", region_name="us-east-1")
response = bedrock.invoke_model(
  modelId="us.anthropic.claude-sonnet-4-20250514-v1:0",
  contentType="application/json",
  body=json.dumps({
    "anthropic_version": "bedrock-2023-05-31",
    "max_tokens": 512,
    "messages": [{"role": "user", "content": "你好"}]
  })
)
result = json.loads(response["body"].read())

不同模型提供商的请求体格式不一样,Anthropic 用 anthropic_version,Meta 用 prompt 字段。如果想用统一的格式,推荐使用 Converse API,它把各家模型的请求格式统一了,换模型只需要改 modelId[reference:4]。

使用技巧方面,有几个实际经验值得记:第一,region_name 的选择会影响可用的模型列表和价格,us-east-1 的模型最全、上新最快。第二,如果不想在代码里硬编码密钥,可以用 AWS CLI 的配置或 IAM Role。第三,Bedrock 也支持通过 API Gateway + Lambda 的方式暴露成 HTTP 接口,方便前端直接调用[reference:5]。

🌍 全球使用情况:企业级 AI 平台中的头部玩家

Bedrock 的用户规模在 2025 到 2026 年增长很快。2024 年官方披露的是“超过 1 万名用户”,到 2026 年第一季度,Bedrock 客户数量已经超过 12.5 万,其中近 80% 的财富 100 强公司在使用 Bedrock[reference:6]。客户支出在 2026 年 Q1 环比增长了 170%,当季处理的 token 总量超过了此前所有年份的累计总和[reference:7]。

SDK 层面的数据也能佐证使用规模。Ruby 版的 aws-sdk-bedrock gem 累计下载超过 1340 万次aws-sdk-bedrockagentruntime 超过 1040 万次。.NET 版的 Bedrock SDK 下载量约 52.6 万次[reference:8][reference:9]。这些数字反映的是开发者在实际项目中集成 Bedrock 的活跃程度,不只是试用的量。

地域覆盖方面,Bedrock 已在全球 33 个商业 AWS 区域可用,支持跨区域推理(cross-Region inference),可以把请求路由到有容量的区域来处理,避免单区域配额瓶颈[reference:10]。亚太区域包括东京、首尔、孟买、新加坡、悉尼、雅加达、墨尔本等,欧洲有法兰克福、伦敦、巴黎、苏黎世、米兰、斯德哥尔摩、西班牙等。中国用户通常使用海外区域(如 us-east-1 或 ap-northeast-1)来调用 Bedrock 服务。

💰 收费情况:按量计费,但实际账单可能比预期高

Bedrock 采用按量计费模式,没有预付费门槛,没有最低消费。主要的计费模式有五种:

On-Demand(按需推理)是最常用的模式,按处理的 token 数量计费。输入 token 和输出 token 分开定价,不同模型价格差异很大。以 us-east-1 为例,最便宜的 Amazon Nova Micro 输入价格约 $0.035/百万 token,而 Claude Fable 5 的输入价格高达 $10/百万 token。主流模型如 Claude Sonnet 5 的输入价格约 $2/百万 token,输出 $10/百万 token[reference:12]。

Batch(批处理)比按需便宜 50%,适合不需要实时响应的任务,比如批量文档处理、数据标注。提交任务后 Bedrock 在后台处理,结果异步返回[reference:13]。

Provisioned Throughput(预置吞吐量)适合流量稳定且量大的场景。你按“模型单元”购买固定的吞吐量,按小时或按月计费。好处是性能可预测、不会因为其他用户的流量波动而受影响。

Prompt Caching(提示词缓存)可以节省最多 90% 的输入 token 费用[reference:14]。如果你在多次请求里反复使用同一段系统提示词或上下文,开启缓存后系统会复用计算结果,不用每次都重新处理。对于需要长系统提示的场景,这个功能省下来的钱很可观。

但这里必须提醒一个很多团队踩过的坑:Bedrock 的实际账单经常比预估高 1.5 到 2 倍。CloudZero 分析了 140 亿美元的云和 AI 支出后发现,预算 5 万美元的团队最终花了 8.5 万,预算 20 万的团队花了 34 万[reference:15]。多出来的成本主要来自几个“定价页上看不到”的地方:Knowledge Bases 背后的 OpenSearch Serverless 最低消费、嵌入模型的推理费用、Guardrails 的每次评估费用,以及 Agent 在完成一个查询时会链式调用多次模型,token 消耗被放大的问题[reference:16]。

最有效的控制手段有两个:在每次 API 调用时显式设置 maxTokens(不设的话系统会按模型最大输出长度预留配额,既浪费配额也可能多花钱),以及定期用 Cost Explorer 和 CloudWatch 监控 token 消耗趋势。

⚠️ 常见问题与实战避坑指南

报 ThrottlingException(429 错误)怎么办?这是 Bedrock 最高频的问题。原因通常是超过了 RPM(每分钟请求数)或 TPM(每分钟 token 数)配额。新账号的默认配额可能很低,有些模型甚至默认是 0,需要手动申请提升[reference:17]。最容易被忽略的原因是没有设置 maxTokens——Bedrock 在请求开始时就会按“输入 token + maxTokens”来预留配额,如果 maxTokens 没设,系统默认按模型最大输出长度(64K 甚至 128K)预留,实际并发能力会被压缩到十分之一甚至更低。

提示 ModelNotAvailableException 是什么原因?你请求的模型在当前区域不可用,或者你还没有在控制台里启用它。Bedrock 不同区域的模型可用性不一样,us-east-1 最全,部分区域只有少数几个模型。解决方法是在控制台确认模型状态,或者换到支持该模型的区域。

token 用量和账单对不上怎么办?除了 token 费用,还要检查 Knowledge Bases 的索引和查询费用、Guardrails 的评估费用、Agent 的多次调用放大效应。建议在 AWS 控制台开启 Cost Explorer,按服务和用量类型拆分账单。

知识库检索效果不好怎么调?几个可以尝试的方向:调整分块大小(默认值不一定适合你的文档类型)、更换嵌入模型、增加重排序模型(Rerank)、调整检索返回的文档数量。Bedrock 支持在 Knowledge Bases 配置里更换这些参数。

🔒 安全与合规:企业场景下的实际考量

Bedrock 在安全方面的设计是企业级产品该有的水平。你的数据不会离开 AWS 的基础设施,不会用于训练基础模型,调用日志可以配置记录到 CloudWatch 或 S3 中,访问权限通过 IAM 精细控制。

Guardrails 提供了六类默认的安全策略:内容过滤(毒性、仇恨、暴力、色情)、提示注入防御、拒绝话题(用自然语言定义不允许讨论的主题)、敏感信息检测(PII 和凭证)、词汇过滤、以及上下文 grounding 检查(检测模型回答是否基于提供的源材料,降低幻觉风险)[reference:19]。这些策略是模型无关的,切换模型不需要重新配置。

对于需要满足合规要求的场景,Bedrock 在 AWS GovCloud 区域也有部署,部分模型通过了 FedRAMP 授权[reference:20]。金融、医疗等强监管行业的团队可以在合规范围内使用。

📝 写在最后:谁适合用 Bedrock,谁不适合

Bedrock 最适合的团队是:已经在用 AWS 生态,需要把 AI 能力集成到现有应用里,但不想自己管模型推理基础设施。如果你已经在用 S3、Lambda、IAM、CloudWatch,Bedrock 和它们的对接是天然的,不需要额外搭一套系统。

它不太适合的场景:如果你只是偶尔调用一次模型做实验,直接用模型厂商的 API 可能更简单;如果你的团队没有 AWS 使用经验,Bedrock 的 IAM 配置、配额申请、成本监控这些环节会有不少学习成本;如果你需要极高的推理吞吐量且对延迟非常敏感,自建推理集群可能更可控。

Bedrock 的定位一直很清楚:它不追求做“最好用的 AI 工具”,它追求做“最适合放进企业技术栈里的 AI 底座”。如果你的场景匹配这个定位,它是一个值得认真评估的选择。

评论