Tavily、Exa、Serper、API Pick 对比:给 LLM 用的网页搜索 API 怎么选?

Sarah Choy发布于 2026年5月2日约 9 分钟阅读
Tavily、Exa、Serper、API Pick 对比:给 LLM 用的网页搜索 API 怎么选?

Tavily、Exa、Serper、API Pick 都自称是「给 LLM 用的搜索层」。它们在返回结构、过滤维度和计费方式上差别其实很大。下面是来自一线工程师的横向对比。

一句话总结

  • 想要一个托管的 RAG 端点直接吐 LLM 友好答案,选 Tavily —— 代价是排序不透明,且有月费门槛。
  • 做语义/相似度发现、能接受时效性弱一点,选 Exa;规模上去后预算要算清楚。
  • 需要原始 Google SERP、自己做清洗和排序,选 Serper。
  • 想要预先 shaping 好的 JSON 摘要、按调用透明计费、按国家与日期过滤,且只对 HTTP 200 收费 —— 选 API Pick Web Search。

「给 LLM 用的网页搜索 API」到底指什么

通用搜索 API(Google Custom Search、Bing Web Search、SerpAPI)返回的是搜索引擎结果页 —— 也就是人类用户在浏览器里看到的那一堆蓝色链接和富摘要。这种格式对语言模型并不合适。Agent 不想去解析 SERP,它想要的是一份精炼的 ranked 列表:标题、URL、可以直接塞进上下文的干净文本。本文这四家 API 都在做这件事,但路径不同。

我们沿五个实操维度比较:返回结构、过滤、计费模型、集成体验,以及它们「都不做什么」。

四家选手,一段话过完

Tavily

托管型 RAG 服务。tavily.search 返回 ranked 摘要,tavily.qna 把搜索和一次轻量 LLM 回答打包在一起。 适合「直接给模型一个答案就绪的 blob」的聊天助手场景。订阅 + credit 计费。

Exa(前 Metaphor)

以神经/语义索引为核心。围绕「找一些和这个 URL 相似的 URL」、embedding 排序展开,可选拉 highlights 或全文。当时效性不重要、主题相似度重要时表现最好。订阅 + 超额 credit。

Serper

原始 Google SERP API。返回的就是真实 Google 搜索结果页的 JSON 结构 —— organic、knowledge graph、places、videos 全有。摘要清洗和排序你自己做。单次便宜,但 LLM-shaping 这层得自己写。

按量计费、为 LLM tool calling 预先 shaping 好的语义网页搜索。POST /api/search/web 默认返回 5 条(最多 10 条)ranked 结果: title、URL、清洗过的 LLM 友好 snippet,可选 country_code start_date / end_date 过滤。每次调用 15 credits(≈ $0.015),且只对成功扣费。

横向对比表

表中描述为各厂商写作时的总体定位。集成前请到各家定价页确认最新报价与配额。
TavilyExaSerperAPI Pick
返回结构ranked 摘要 + 可选 LLM 答案ranked URL + 可选 highlights / 全文原始 Google SERP JSONranked title + URL + LLM 友好 snippet
国家过滤有限支持有(country_code)
日期过滤有(qdr)有(start_date / end_date)
Tool schema 端点有 — GET /api/search/web/tool-schema
计费模型订阅 + credit订阅 + credit按查询次数按量 credit,$5 / 5,000
失败是否扣费视套餐视套餐不扣 — 仅 HTTP 200
最佳场景托管 RAG / 聊天助手语义发现 / 相似度自建 SERP 管线AI Agent tool calling、RAG 管线

返回结构:最重要的一项

这一品类之所以存在,根本原因就是 LLM 在 SERP HTML 上推理效果差。它需要的是简短、命名清晰、有排序的文本。所以「snippet 干不干净」是预测一家搜索 API 能不能当 Agent 工具用的最强单一指标。

Tavily 与 API Pick 会主动清洗 snippet。Exa 视参数返回 highlights 或 contents —— 也行,但你来决定要多少。Serper 给原始 SERP,默认你后面会接一个抽取器;如果你已经有抽取管线,这没问题,否则这就是隐藏成本。

API Pick 的典型返回长这样:

{
  "results": [
    {
      "title": "Retrieval-augmented generation - Wikipedia",
      "url": "https://en.wikipedia.org/wiki/Retrieval-augmented_generation",
      "snippet": "Retrieval-augmented generation (RAG) is a technique that combines\nsearch with text generation, often using vector search to ground LLM\nanswers in retrieved documents."
    }
    /* …more */
  ],
  "result_count": 5,
  "credits_used": 15,
  "remaining_credits": 985
}

这个结构可以直接作为 function calling 的工具结果返回给模型,不需要二次解析。

过滤:国家与新鲜度

生产级 Agent 通常关心两个过滤维度:

  • 国家 / 地区:英国的金融 Agent 默认不该全是美国来源。
  • 日期范围:「本周发生了什么」类的市场调研 Agent,必须能拒掉一周以前的内容。

四家都支持,但表达力不同。API Pick 用 ISO 日期字符串(如 start_date="2026-04-01")非常明确,比 Google 的 qdr(过去一小时 / 一天 / 一周 / 一月)更细。

计费模型:订阅 vs 按量

订阅型(Tavily、Exa)适合流量稳定可预测的场景。在以下三种常见模式下会变得别扭:

  • 原型阶段不想被月费绑住。
  • 流量波动大(比如批量跑的研究 Agent)。
  • Agent 经常对部分失败做积极重试。

API Pick 是 credit 模型 —— $5 = 5,000 credits,Web Search 一次 15 credits,credit 永不过期,只对 HTTP 200 扣费。这一点比看起来重要:Agent 因为偶发 502 重试 5 次,是免费的,不是 5×。

集成体验

最低摩擦的集成是「粘贴 JSON 工具定义就能用」。API Pick 直接给现成的:

# OpenAI function tool 定义
curl https://www.apipick.com/api/search/web/tool-schema

# 返回包含 OpenAI tool 定义 + Claude tool use 定义

OpenAI Assistants 集成:

from openai import OpenAI
import requests

client = OpenAI()
schema = requests.get("https://www.apipick.com/api/search/web/tool-schema").json()

assistant = client.beta.assistants.create(
    name="Research Agent",
    model="gpt-4o",
    tools=[{"type": "function", "function": schema["openai"]}],
)

Claude tool use:

import anthropic
import requests

schema = requests.get("https://www.apipick.com/api/search/web/tool-schema").json()
client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    tools=[schema["claude"]],
    messages=[{"role": "user", "content": "本周 RAG 研究有什么新进展?"}],
)

这几家都不做的事

没有一家网页搜索 API 能可靠地做「这个域名从 2019 年起的全部 X」。深档案覆盖仍然需要搜索 + 定向爬虫或专门数据源的组合。它们都不能完美去重高度相似的 URL。也没有一家能解决上游问题 —— 来源是否陈旧、权威度是否够,仍然要由你的 Agent 自己判断。

快速选型

最佳场景:托管 RAG,自带答案
选 Tavily。单端点、模型已经替你挑了来源,跑通聊天助手最快。
最佳场景:语义 / 相似度发现
选 Exa。神经索引是它的核心论点;embedding 在「找更多类似这个 URL」上比关键词搜索强。
最佳场景:自己搭 SERP 管线
选 Serper。最便宜的原始 Google SERP JSON,清洗你来。
最佳场景:AI Agent 工具调用、定价透明、无月费
选 API Pick。预先 shaping 的 LLM 友好 snippet,country 与 date 过滤,按量计费、只对成功扣费、tool schema 一行 curl 就拿到。立即试用 →

常见问题

哪家的单次调用成本最低?

因计费模型不同,单价口径不一致。API Pick Web Search 每次调用 15 credits(按 $5 / 5,000 credits 折算约 $0.015),且仅对 HTTP 200 扣费。Tavily 与 Exa 多为月度订阅 + 超出额度按 credit 计;Serper 按查询次数计费。如果你的流量波动大,或 Agent 会在失败时自动重试,「只对成功扣费」往往在真实账单上更划算。

这几家都能配 OpenAI function calling 和 Claude tool use 吗?

都可以。它们都是 JSON in / JSON out,包成 tool function 都能用。API Pick 还额外提供 tool schema 端点(GET /api/search/web/tool-schema),可以直接把生成好的 OpenAI/Claude 工具定义粘进 Agent 代码,不用手写。

API Pick 是 Tavily 的二次封装吗?

不是。API Pick 自己跑索引聚合、排序与摘要清洗管线。返回结构刻意比 Tavily 简单:title + URL + LLM 友好的 snippet,加可选的 country 与 date 过滤。直接调 POST /api/search/web 就行,不需要套一层托管 RAG。

延迟怎么样?

四家都为同步 Agent 调用设计,短查询 P50 都在亚秒级。真正的延迟差距在于:是否在搜索端点里串了一次下游 LLM 调用 —— 纯搜索 API 总是比「搜索 + 答案」组合端点更快。

Tavily 替代品里哪家最像?

如果你想离开 Tavily 是因为月费门槛或超额费用不透明,API Pick Web Search 是最接近的按量替代:返回结构相同(ranked 的 LLM 友好 JSON),有 country / date 过滤,无月费下限。

本文涉及的 API

作者
Sarah Choy
CEO, API Pick

Sarah Choy 是 API Pick 的 CEO,专注于为 AI Agent 与 LLM 工作流构建可用于生产的 API。