[ blog · comparison ]9 min read

Tavily、Exa、Serper、API Pick 對比:給 LLM 用的網頁搜尋 API 怎麼選?

Sarah Choy2026年5月2日 發佈2026年5月3日 更新約 9 分鐘閱讀
Tavily、Exa、Serper、API Pick 對比:給 LLM 用的網頁搜尋 API 怎麼選?

Tavily、Exa、Serper、API Pick 都自稱是「給 LLM 用的搜尋層」。它們在回傳結構、過濾維度與計費方式上差別其實不小。下面是來自第一線工程師的橫向對比。

一句話總結

  • 想要一個托管 RAG 端點直接吐 LLM 友善答案,選 Tavily —— 代價是排序不透明、有月費門檻。
  • 做語意/相似度發現、能接受時效性弱一點,選 Exa;規模上去後預算要算清楚。
  • 需要原始 Google SERP、自己做清洗與排序,選 Serper。
  • 想要事先整理好的 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 預先整理好的語意網頁搜尋。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。預先整理的 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
作者
Sarah Choy
CEO, API Pick

Sarah Choy 是 API Pick 的 CEO,專注於為 AI Agent 與 LLM 工作流打造可用於正式環境的 API。