做 AI Agent 的人都遇到过这个问题:模型的知识有截止日期。
用户问"今天的 AWS re:Invent 有什么新公告",Agent 一脸懵——它的训练数据停在几个月前。你可以接一个搜索 API(Google、Bing、Tavily),但又多了一堆麻烦:
- API Key 管理
- 搜索请求里包含用户的 prompt,外泄了怎么办?
- 返回结果要清洗、截断、格式化
- 还得处理限流、重试、fallback
6 月 17 日 AWS Summit New York,亚马逊云科技在 Bedrock AgentCore 上发布了 Web Search 功能——一个全托管的 Agent 联网搜索工具,零数据外泄,通过 MCP 协议开箱即用。
核心卖点:搜索请求不出 AWS
和接第三方搜索 API 不同,AgentCore Web Search 的关键区别是:
传统方案:
用户 prompt → 你的 Agent → 第三方搜索 API(Google/Bing/Tavily)↑用户意图泄露给第三方AgentCore Web Search:
用户 prompt → 你的 Agent → AgentCore Gateway → AWS 搜索基础设施↑数据全程在 AWS 内部
对于金融、医疗、政务这些对数据主权敏感的行业,这是一个刚需。你的用户问了什么,搜了什么,全部留在你的 AWS 环境里,不会发到 Google 或 Bing 的服务器上。
底层是什么
Web Search 不是简单包了一层 Bing API。根据官方博客,它构建在 Amazon 的搜索基础设施上——就是支撑 Alexa+、Amazon Quick 和 Kiro 联网搜索的那套系统。
它用的是多源 Grounding 方案:
- Amazon Web Index:Amazon 自己的网页索引
- Amazon Knowledge Graph:结构化知识图谱(经过验证的事实数据)
两者结合的好处:网页搜索给你最新资讯,知识图谱给你经过校验的事实。Agent 不容易被某个野鸡网站的错误信息带偏。
怎么用
步骤一:创建 Gateway + Web Search 工具
在 AgentCore 控制台里:
- 创建一个 Gateway(如果还没有的话)
- 添加 Tool Target → 选 MCP Target → Connectors → Web Search
- 搞定
或者用 CLI:
# 创建 Gateway 并添加 Web Search connector
aws bedrock-agentcore create-gateway \--name "my-agent-gateway" \--targets '[{"name": "web-search","protocol": "MCP","targetConfiguration": {"mcpTargetConfiguration": {"targetType": "CONNECTOR","connectorTargetConfiguration": {"connectorType": "WEB_SEARCH"}}}}]'
步骤二:Agent 代码里调用
用 Strands SDK 接入:
from strands import Agent
from strands.tools.mcp import MCPClient
from mcp import stdio_client# 连接 AgentCore Gateway(Web Search 作为 MCP Tool)
web_search_tool = MCPClient(transport=stdio_client(command='npx',args=['-y', '@anthropic/bedrock-agentcore-mcp-client','--gateway-url', 'https://gateway.bedrock-agentcore.us-east-1.amazonaws.com/my-gateway/mcp/sse'])
)agent = Agent(model='us.anthropic.claude-sonnet-4-20250514-v1:0',tools=[web_search_tool],system_prompt="你是一个技术助手。如果用户问的问题涉及最新信息,使用 web_search 工具获取当前数据。"
)# Agent 自动判断何时联网搜索
response = agent("Bedrock AgentCore 最近有什么新功能发布?")
print(response)
Agent 收到问题后,会自动判断需不需要联网。如果需要,它调用 Web Search 工具,拿到结果后结合搜索内容生成回复。
步骤三:看搜索返回什么
Web Search 返回的结构:
{"results": [{"title": "New in Amazon Bedrock AgentCore - AWS Blog","url": "https://aws.amazon.com/blogs/machine-learning/new-in-amazon-bedrock-agentcore/","snippet": "Today we announced new capabilities including Managed Knowledge Base...","publishedDate": "2026-06-17"},{"title": "AWS Summit New York 2026 Announcements","url": "https://aws.amazon.com/blogs/aws/top-announcements...","snippet": "Here's our roundup of the biggest announcements from the event...","publishedDate": "2026-06-17"}]
}
每条结果都带 URL 和发布时间。Agent 可以引用出处,告诉用户"根据 2026 年 6 月 17 日的官方博客..."。
实际场景
场景一:客服 Agent 回答产品最新动态
agent = Agent(system_prompt="""你是亚马逊云科技的客服助手。回答用户关于产品功能、定价、最新更新的问题。如果用户问到最近的更新或公告,用 web_search 搜索最新信息。回答时引用来源 URL。"""
)# 用户问:"Bedrock 现在支持哪些模型?"
# Agent 联网搜索 → 返回最新模型列表 + 来源链接
场景二:竞品监控 Agent
agent = Agent(system_prompt="""你是一个竞品分析助手。定期搜索指定关键词,汇总最新动态。输出格式:标题 | 来源 | 日期 | 摘要"""
)response = agent("搜索最近一周 'AI coding assistant' 相关的新闻和公告")
场景三:研究助手
agent = Agent(system_prompt="""你是一个技术研究助手。用户给你一个技术主题,你搜索最新的博客、论文、发布说明。整理成结构化报告,每条信息标注来源。"""
)response = agent("帮我调研一下 MCP 协议的生态发展现状,有哪些主流 server 实现?")
和自接搜索 API 的对比
| 维度 | 自接 Google/Bing API | AgentCore Web Search |
|---|---|---|
| 数据主权 | 搜索请求发给第三方 | 全程 AWS 内部 |
| Key 管理 | 自己管 API Key | IAM 统一管理 |
| 搜索质量 | 通用网页搜索 | Web Index + Knowledge Graph |
| MCP 集成 | 自己写 wrapper | 原生 MCP Target |
| 运维 | 限流/重试/fallback 自己搞 | 全托管 |
| 合规审计 | 需要自己记日志 | CloudTrail 自动记录 |
注意事项
几个坑提前说:
- 搜索结果是英文为主:Amazon 的 Web Index 对中文内容覆盖可能不如百度/搜狗。如果你的业务场景需要搜中文内容,实测一下再决定
- 不是实时搜索:虽然比模型训练数据新得多,但索引也有延迟。当天发的文章不一定马上搜得到
- 目前只支持通过 MCP 调用:如果你的 Agent 框架不支持 MCP,需要包一层适配
开始使用
Web Search 已经 GA,不需要申请。直接在 AgentCore 控制台 创建 Gateway 时添加 Web Search connector 即可。
如果你想快速验证效果,可以用 MCP Inspector(无需写代码):
# 安装 MCP Inspector
npx @modelcontextprotocol/inspector# 连接你的 Gateway URL
# 找到 web_search 工具 → 输入查询 → 看返回结果
文档地址:https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/gateway.html
本文基于 2026 年 6 月 17 日 AWS Summit New York 发布的 AgentCore Web Search 功能撰写。更多 Summit 新功能解读持续更新中。
