Cloudflare 在 8 月 7 日的 Agents Week 期间发布了 Radar Researcher。它是一个 beta 工具,让你用自然语言查询 Cloudflare Radar 的全球互联网数据,然后返回真实的、可交互的图表。你不需要找对页面,也不需要读 API 文档写查询。
为什么要做这个
Cloudflare Radar 从 2020 年上线到现在,一直在发布从全球网络看到的互联网流量数据。用户群很广,从普通访客到网络专家都有。数据来源包括公共 DNS 解析器 1.1.1.1 的查询、全球网络的 HTTP 流量、Cloudflare Speed Test 收集的网络质量数据等等。这些数据全部通过免费 API 开放。
但数据多了之后,问题也来了。记者要写最新的网络中断报道,没时间翻遍每一页找合适的图。研究者想拿数据做分析,不一定熟悉 Cloudflare 的整套 API 词汇表。AI 工具正在降低专业门槛,你不需要掌握数据集的结构和术语就能拿到有用的答案。
Radar Researcher 就是这个思路的产物。
它能做什么
Radar Researcher 在 Radar 的每一页都能打开。你点开侧边栏,它会停靠在你正在看的内容旁边,你可以边聊天边浏览。
功能清单:
- 用自然语言提问,返回 Radar 上那种可交互图表,外加简短解释。
- 选择回答深度。可以要一句话的简洁答案,也可以要一份完整的多主题报告。
- 每次回答后,它会建议几个有用的后续问题。
- 对话历史可搜索、可固定、可分享。分享链接 30 天后自动过期。
- 你可以检查它的推理过程,看它调用了哪些数据集、查询了什么、怎么得出答案。
- 输入方式支持打字、语音,或者直接从 Radar 的搜索栏启动。
Radar 上任何一张图表旁边都有一个「Explain with AI」按钮。点了之后,Radar Researcher 会直接拿到这张图的截图、背后的原始数据和你当前的筛选条件(位置、日期范围、过滤器),然后开始解释。截图让它看到你看到的,原始数据保证引用的每个数字都精确,筛选条件让解释针对你的具体视图,而不是泛泛而谈。
两个用例
第一个例子是查网络质量。你问「葡萄牙的家庭网络质量怎么样?」,Radar Researcher 会读懂问题,调用 Radar 的 Internet Quality API,分析结果,然后用自然语言回答,外加渲染跟 Radar Internet Quality 页面一样的可交互图表。你接着可以问「跟西班牙比呢?」,它会再去取数据。它还会主动建议下一步,比如葡萄牙最常见的网络中断类型。
第二个例子是调查网络中断。2026 年初,伊朗经历了一系列政府指示的网络封锁,其中一次持续了将近三个月,直到 5 月流量才部分恢复。报道这种事件需要拉多个视图,随着情况发展不断刷新。你可以直接问 Radar Researcher:「2026 年初伊朗网络封锁期间发生了什么?」
它会运行一次短调查。它查 Cloudflare Radar 记录的伊朗中断事件,拉对应的流量数据,然后用自然语言解释时间线:伊朗的 HTTP 流量指数从 1 月 7 日的 0.58 左右跌到 1 月 9 日几乎为零,1 月 17 日左右开始部分恢复,到 1 月 27 日回到接近封锁前的水平。它会画一张 HTTP 流量指数图,中断窗口直接标在折线上,外加一张记录的中断事件表,还会标出 2 月 28 日开始的第二次封锁。
技术实现
Radar Researcher 完全跑在 Cloudflare 自己的开发者平台上。核心是一个运行 Cloudflare Agents SDK 的 Worker。每个对话是一个有状态的 Durable Object,自带 SQLite 数据库,所以聊天历史、标题、流式响应都持久化。即使你在回答到一半时离开页面,生成也会在服务端继续,重连后恢复。
「大脑」是 Workers AI,跑的是 Kimi K2.7 这样的开源模型。它不赌单一模型,而是跑一条有序的故障转移链,横跨三个不同的模型家族。如果某个模型暂时满载,请求会透明地级联到下一个,所以任何单一提供商的事故都不会让 Researcher 下线。每次调用都经过 AI Gateway,用于日志、成本跟踪、缓存和安全护栏。
最有意思的部分是它怎么拿到 Radar 的数据。Cloudflare 没有为 Radar 的几百个端点逐个手写工具,而是把 agent 连到统一的 Cloudflare MCP 服务器,用的是 Code Mode。模型只拿到三个工具(search、execute、docs),然后写代码直接查 Radar API。它搜索 OpenAPI 规范找到对的端点,再执行一小段代码拉实时数据。因为完整的 API 规范在 MCP 服务器上,Radar 的 API 没有任何部分硬编码进提示词。Radar 加新数据集,Researcher 不用改代码就能用。
每个回答都包含一个可展开的跟踪,显示模型的推理过程和它调用的具体工具,你能看到它怎么得出答案。
从 Markdown 到真实图表
语言模型的回答是 Markdown:文本、表格、列表。但 Cloudflare 不想要数字墙,他们想要跟 Radar 上一样的丰富、可交互图表。更糟的是,当模型尝试直接把数据写进答案时,它倾向于四舍五入、总结或截断,这正是数据工具最不想要的。
他们的解法是把数据完全排除在模型的文字之外。Radar Researcher 拿到数据时,代码返回一个小信封,把 API 路径和结果配对。然后模型不贴数字,而是发出一个轻量级图表规范,只引用那个路径:
{
"type": "speedFlower",
"title": "Internet speed quality — Portugal",
"dataFrom": "/radar/quality/speed/summary?location=PT"
}
Radar 的前端把图表的 dataFrom 匹配到拿到的结果,用跟站点其他地方一样的可视化组件渲染。图表永远忠实于 API,Radar Researcher 能用上他们全套可视化词汇:时间序列、堆叠面积图、甜甜圈图、柱状图、地图、直方图等等。
小细节
不是所有事情都需要大模型。小而快的模型处理边缘任务:一个给每个新对话写短标题,另一个在每个答案下面建议后续问题。它们都在旁边跑,从不拖慢你的实际回复。
Radar Researcher 还拿到一点关于此时此地的上下文。Cloudflare 传给它当前日期和时间,外加你在 Radar IP 页面能看到的那些关于你连接的高层细节,比如你的 IP 位置和网络。这样当你问「这里的流量怎么样?」,它能根据你所在位置定制答案。
所有东西通过 Radar 的前端(也是一个 Worker)经过 service binding 到达你,有按 IP 的速率限制,可分享的对话存在 R2 里。从计算到推理到网关到存储到数据,每一层都是 Cloudflare。
为 agent 准备的 Radar
Radar Researcher 展示了 Cloudflare 如何用 AI agent 帮人们探索数据。但故事还有另一面:当 agent 不是他们的,而是一个运行在你浏览器里、代表你行事的通用助手时会怎样?
今天,一个想用某个网站的 agent 大多只能抓页面然后猜它怎么工作,这既脆弱又慢还容易出错。WebMCP 是一个正在形成的 Web 标准,修复了这个问题:页面可以注册一小套定义良好的工具,任何浏览器 agent 都能发现并直接调用,而不是逆向工程 DOM。
Cloudflare 给 Radar 加了 WebMCP 支持,用了标准提供的两种方式:
- imperative API 让他们用 JavaScript 注册工具,这些工具直接调用驱动 UI 的同一段代码,所以 agent 能直接开 Radar。筛选到国家、地区、大陆或 ASN;改日期范围;搜索页面、章节、实体(域名、ASN、IP 等);跳到任何章节。
- declarative API 把 Radar 现有的 HTML 表单变成工具,方法是给它们加几个属性,所以 agent 能用 URL Scanner 扫一个 URL,查一个域名的报告,或者测一个网站的后量子 TLS 密钥交换支持。
每一个都只是在驱动用户界面里已经有的功能,而且是纯粹的渐进增强:在没有 WebMCP 的浏览器里,这些工具就不在那里,什么都不会改变。
这也是言行一致的案例。Radar 自己的 URL Scanner 评估一个站点的 agent-ready 程度,其中一项检查就是找这种 WebMCP 集成。通过自己实现它,Radar 现在通过了自己的 agent-readiness 检查,更重要的是,成为了一个人和 agent 都能轻松导航的站点。
现在可以试用
Radar Researcher 今天以 beta 形式在 Cloudflare Radar 上线。任何页面的头部都能找到 Researcher 按钮。它完全基于 Cloudflare 的开发者平台构建,才刚开始:Cloudflare 会持续扩展它理解的数据集,磨尖它的分析,加新的数据交互方式。
Cloudflare 想知道什么有用。他们在社交媒体上收反馈:@CloudflareRadar(X)、noc.social/@cloudflareradar(Mastodon)、radar.cloudflare.com(Bluesky),或者邮件 radar@cloudflare.com。