今天,我们很高兴地宣布 Cloudflare AI Search 在开发者体验方面的一系列改进,让您能够开箱即用地轻松管理搜索解决方案。此前,您需要自行将 Cloudflare 各项基础组件(Workers AI、AI Gateway、Vectorize、R2、Browser Run)拼接在一起,而现在,AI Search 可以自动完成这一切——而且做得更好。我们的目标是让您的智能体拥有自己的搜索引擎,能够轻松找到数据,从而为自身及其人类用户提供更好的答案。
我们还为 AI Search 客户带来了定价方案的早期预览,让您了解其扩展方式。我们在定价建模时兼顾了可预测性和可扩展性:使用默认模型时,嵌入向量和重排序完全免费,因此无需担心预测 token 数量的问题。
在 AI Search 中,用户现在可以:
- 为您的智能体建立数据集合索引:让结构化与非结构化数据轻松可供您的智能体使用,从单个文件到您拥有的网站均可。(目前,数据必须位于您 Cloudflare 账户下的某个 zone 中,但更多所有权验证方式即将推出。)
- 网站接入无需站点地图:此前,AI Search 要求网站必须提供站点地图才能使用网站集成功能。现在,您可以选择“发现”(Discover)解析选项,将没有站点地图的网站添加为数据源。
- 获得用于跨命名空间搜索的单一公共端点:当您在命名空间上启用公共 URL 时,即可获得一个 /search 端点和 /mcp 端点,无需身份验证即可一次搜索多个实例或网站,方便您与客户轻松共享。
- 为公共端点绑定您自己的自定义域名:您现在可以将自己的域名添加到公共 URL 之上,从而为您的 /search 和 /mcp 端点打上品牌标识(例如 search.example.com/mcp)。您还可以添加 Cloudflare Access 来创建私有搜索实例。
- 通过 AI Search 插件为基于 EmDash 构建的网站添加语义搜索:如果您的网站运行在 EmDash(我们的开源 CMS)上,AI Search 插件即可为您的网站内容添加语义搜索能力。
- 预览 AI 搜索的新定价模式:我们希望定价是可预测的,并能随你的使用规模一同扩展,因此我们将嵌入和重排序的成本内置其中:当你使用 Workers AI 目录中的精选模型时,这两项服务免费。
最后,我们还将分享 AI 搜索在我们自身平台上的应用示例,包括 Cloudflare.com、我们的开发者文档、EmDash、Cloudflare Dev Stack MCP——甚至包括你正在阅读的这篇博客文章(试试按 cmd+K)。
AI 搜索的实际应用:为全新的 Cloudflare Dev Stack MCP 提供支持
我们使用 AI 搜索的方式之一,是在全新的 Cloudflare Dev Stack MCP 中。你现在就可以在我们的 AI Playground 中试用它。它为编码智能体提供来自 Cloudflare 开发者生态系统的、带引用的最新文档,让它们基于最新的功能和修复进行构建,而不是依赖过时的训练数据。
以下是我们如何利用 AI 搜索中当前可用的功能来构建它的:
1. 为每个站点建立索引
我们为每个 Cloudflare 旗下的站点创建了一个 AI 搜索实例:Docs、Blog、API Docs、Community、Astro、Vite、Vitest、Hono、Replicate、OpenNext。(这些站点均归 Cloudflare 所有。)
它们跨越不同的域名,但由于 Cloudflare 拥有这些网站数据,AI 搜索能够将它们视为一个整体,并以相同的方式全部摄取。将 AI 搜索指向一个站点或一组站点,它就会处理爬取、摄取、嵌入和检索。创建实例只需一条命令,对于没有站点地图的网站,你可以添加 `--parse-type discover` 参数,通过跟踪链接来发现页面(由 Browser Run 的 /crawl 功能提供支持):
npx wrangler ai-search instance create cloudflare-community \
--namespace dev-stack \
--source https://community.cloudflare.com \
--type web-crawler \
--parse-type discover 2. 将多个实例合并为一次搜索
现在到了有趣的部分:跨全部 10 个实例回答单个查询。有两种方法可以实现。
方案 A:在 Worker 中实现(我们在 Cloudflare Stack MCP 中采用的方式)
我们将命名空间绑定到一个 Worker,以创建远程 MCP 服务器,并在全部 10 个实例上发起一次多实例调用。我们选择这条路径,是因为我们要将堆栈搜索集成到 Cloudflare 的 MCP 服务器中,因此它会作为一个工具,与智能体已经连接的 Cloudflare 工具一同发布。
在 wrangler.jsonc 中的绑定配置:
{
"ai_search_namespaces": [
{ "binding": "AI_SEARCH", "namespace": "cloudflare-stack" }
]
} 然后,一个工具发起一次调用,该调用会扇出到你指定的各个实例:
// One tool, one call that searches every surface in the namespace at once.
context.registerTool(
'search_dev_stack',
{
description: 'Search current docs across the Cloudflare stack.',
inputSchema: z.object({ query: z.string() }),
},
async ({ query }) => {
const res = await context.env.AI_SEARCH.search({
query,
ai_search_options: {
instance_ids: ['developers-cloudflare-com', 'astro', /* ...every surface */],
retrieval: { max_num_results: 10 },
reranking: { enabled: true },
},
})
// res.chunks come back cited and tagged with the instance they came from.
return { content: [{ type: 'text', text: format(res.chunks) }] }
}
) 方案 B:开启公共端点(无需编写代码)
如果你完全不想编写 Worker,可以在命名空间上启用公开 URL。你立刻就能获得 /search 和 /mcp 端点,它们会查询每个实例,无需认证,也无需部署任何东西。

当你像我们一样把搜索集成到现有应用或 MCP 服务器中时,就用 Worker。而当你只想一键获得一个可分享的搜索端点时,就用公开端点。
3. 打造品牌并锁定访问
公开端点自带一个默认的公开 URL,但你可以在其上挂载自己的自定义域名来打造品牌端点(例如 search.example.com/mcp)。
如果搜索需要设为私密,可以在域名前添加 Cloudflare Access。该端点现在需要登录才能访问,因此只有经过授权的人员(或智能体)才能查询它。

亲自试试:使用 Dev Stack MCP
借助 Cloudflare Dev Stack MCP 服务器,你可以询问任何工具,或描述你想构建的应用,就能获得带引用的最新答案,告诉你如何在 Cloudflare 技术栈上以最佳方式构建它。

AI Playground 值得一试,但真正的妙处在于把 MCP 接入你的编码智能体,这样技术栈的最新文档只需一次工具调用即可获取。这取代了通常的备选方案(先搜索网页再抓取整页),后者速度慢、消耗大量 token,而且常常落到错误或过时的来源上。要在你选择的智能体中使用,只需把 Dev Stack MCP URL 放入你的 MCP 配置即可。例如:
{
"mcpServers": {
"dev-stack": { "url": "https://stack.mcp.cloudflare.com/mcp" }
}
} 为我们的博客、开发者文档和 Cloudflare.com 提供搜索支持
我们像客户一样使用 AI Search 来构建:Cloudflare 博客的搜索已经在运行它,今天开发者文档和 Cloudflare.com 也加入了进来。所有这些都使用混合搜索,即语义搜索和关键词搜索在同一次查询中结合,因此既能处理开放式的“这是做什么的”问题,也能处理对名称或关键词的精确查找。我们最近在 EmDash(我们新的开源 CMS)上重建了博客,而我们的新
EmDash AI Search 集成正是现在驱动该搜索的技术。你也可以把它添加到自己的 EmDash 站点,开箱即用地获得针对你内容的相同搜索体验。
AI Search 遵守所有机器人策略
AI Search 由后台的 Browser Run /crawl 驱动,但更进一步,它会以自己专属的机器人身份标识自身:Cloudflare-AI-Search。与 Browser Run 一样,它遵循 robots.txt,以不可变的公开用户代理标识自己,并会尊重站点已设置的所有机器人管控措施。
预览定价:可预测的定价
AI Search 目前处于测试阶段,免费使用,计费功能尚未启用;在开始计费之前,我们会提前通过邮件充分通知您。随着我们逐步迈向正式可用(GA),以下是摄取、存储和查询,以及嵌入向量和重排序的定价预览(预览价格在计费开始前可能有所调整):
预览用量价格 | 每月免费额度(所有 Workers 套餐) | |
|---|---|---|
摄取 | ||
基础摄取 | $0.75 / 1M tokens | 5M tokens † |
图像处理(附加项) | +$0.50 / 1M tokens | 5M tokens † |
存储 | ||
存储数据 | $2.00 / GB-月 | 10 GB |
查询 | ||
语义搜索(混合搜索和向量搜索) | $0.75 / 1k 次查询 | 2,000 次查询 ‡ |
全文搜索 | $0.10 / 1k 次查询 | 2,000 次查询 ‡ |
嵌入向量与重排序 | ||
摄取与查询 | 使用特定 Workers AI 模型免费;第三方单独计费 | 不适用 |
† 每月 5M 摄取 tokens 的单一池,涵盖当前支持的任何文件类型(例如文本、图像)。‡ 每月 2,000 次查询的单一池,两种查询类型共享。
我们的目标是提供可预测的定价,从您的搜索所依赖的模型开始。嵌入向量将您的文本转换为搜索匹配所依据的向量,而重排序则重新排列结果,使最相关的内容排在前面。这两者在使用 AI Search 默认设置或使用 Workers AI 目录中的特定模型时均免费运行,因此索引和每次搜索背后的模型成本无需您担心。答案生成和查询改写是可选的步骤,在您选择的模型上运行,按 Workers AI 使用量计费,或者您也可以使用 AI Gateway 额度搭配任何模型/提供商。
使用预览定价的示例账单
以下是一份 Workers Paid 套餐的月度账单示例,用于创建一个新的 AI Search 实例,数据源包含 20,000 份文档(约 2,000 万 token 的文本),外加 1,000 张图片(假设每张约 1,000 token),每月执行 30,000 次语义查询,并使用默认的 AI Search 嵌入向量和重排序模型。数据摄取按块处理,重叠率约为 10%,在下方以 × 1.1 体现:
计费项目 | 用量 | 价格 | 本月费用 |
|---|---|---|---|
基础数据摄取 | (2,000 万 token 文本 + 100 万 token 图片)× 1.1 - 500 万免费额度 = 1,810 万 token | $0.75 / 100 万 token | $13.58 |
图片附加费 | 100 万 token 图片 × 1.1 = 110 万 token | $0.50 / 100 万 token | $0.55 |
存储 | 约 1.2 GB(在 10 GB 免费额度内) | $2 / GB-月 | $0 |
查询(语义) | 30,000 - 2,000 免费额度 = 28,000 次 | $0.75 / 1,000 次 | $21.00 |
嵌入向量(Workers AI) | 用量已包含在所选的 Workers AI 模型中 | $0 | $0 |
重排序(Workers AI) | 用量已包含在所选的 Workers AI 模型中 | $0 | $0 |
总计 | 约 $35 |
图片会计入基础数据摄取量,同时也会产生图片附加费。存储按每份文档约 10 KB、每张图片约 1 MB 估算。索引建立基本属于一次性成本,因此后续月份主要是查询费用,接近 $21。
立即开始使用
AI Search 现已可启用并使用。将其指向你的网站,开启混合搜索以同时支持语义匹配和关键词匹配,你就拥有了一个面向自有数据的搜索引擎,可供你的智能体直接使用。一条命令即可快速创建:
npx wrangler ai-search create my-search \
--namespace my-namespace \
--source https://my-website.com \
--type web-crawler \
--hybrid-search 创建完成后,你可以查询它,通过 /mcp 将其接入智能体,或者为公开的 /search 端点绑定自定义域名,与你的用户共享。更多信息请参阅 AI Search 文档。