[ blog · comparison ]9 min read

Tavily vs Exa vs Serper vs API Pick: chọn Web Search API nào cho LLM?

Sarah ChoyĐăng ngày 2 tháng 5, 20269 phút đọc
Tavily vs Exa vs Serper vs API Pick: chọn Web Search API nào cho LLM?

Tavily, Exa, Serper và API Pick đều hứa hẹn là lớp tìm kiếm cho LLM của bạn. Chúng khác nhau rõ rệt về hình dạng đầu ra, bộ lọc và cách tính phí. Đây là so sánh song song từ một người đưa agent ra production.

Tóm tắt

  • Chọn Tavily khi bạn muốn một endpoint RAG được host trả về câu trả lời sẵn sàng cho LLM — đánh đổi bằng xếp hạng không minh bạch và mức phí thuê bao tối thiểu.
  • Chọn Exa cho khám phá ưu tiên ngữ nghĩa, nơi xếp hạng neural quan trọng hơn độ mới; hãy dự trù ngân sách theo quy mô.
  • Chọn Serper nếu bạn cần SERP Google thô và sẽ tự làm việc dọn dẹp, xếp hạng và tạo snippet.
  • Chọn API Pick Web Search khi bạn muốn snippet JSON đã được định dạng sẵn, giá tín dụng theo từng lệnh gọi minh bạch, bộ lọc quốc gia & ngày, và chỉ trả phí cho phản hồi HTTP 200.

'Web search API cho LLM' thực sự nghĩa là gì

Các API tìm kiếm tổng quát như Google Custom Search, Bing Web Search và SerpAPI trả về trang kết quả của công cụ tìm kiếm — cũng những liên kết xanh và rich snippet mà con người nhìn thấy. Định dạng đó sai cho một mô hình ngôn ngữ. Một agent không muốn phân tích cú pháp một SERP. Nó muốn một danh sách nhỏ, đã xếp hạng gồm tiêu đề, URL và snippet văn bản sạch để trích dẫn thẳng vào cửa sổ ngữ cảnh. Cả bốn API ở đây đều hứa hẹn điều đó, nhưng chúng đánh đổi khác nhau về cách thực hiện.

Chúng ta sẽ so sánh trên năm trục thực tế: hình dạng đầu ra, lọc, mô hình giá, sự tiện dụng khi tích hợp, và những gì chúng không làm.

Các ứng viên, mỗi cái một đoạn

Tavily

RAG-as-a-service được host. tavily.search trả về snippet đã xếp hạng; tavily.qna gói tìm kiếm cùng một câu trả lời LLM nhanh. Phù hợp mạnh cho trợ lý chat nơi bạn muốn 'đưa cho mô hình một blob sẵn sàng để trả lời'. Dựa trên thuê bao với tín dụng sử dụng.

Exa (trước đây là Metaphor)

Chỉ mục neural / ưu tiên ngữ nghĩa. Được thiết kế quanh ý 'tìm cho tôi các URL giống URL này' và xếp hạng dựa trên embedding, với tùy chọn lấy highlight hoặc toàn bộ nội dung. Mạnh nhất khi độ mới ít quan trọng hơn sự tương đồng chủ đề. Thuê bao kèm phí vượt tín dụng.

Serper

API SERP Google thô. Trả về dạng JSON của một trang kết quả tìm kiếm Google thực — organic, knowledge graph, places, videos. Bạn tự làm việc dọn snippet và xếp hạng. Rẻ theo truy vấn, nhưng lớp định dạng cho LLM thì bạn tự dựng.

Tìm kiếm web ngữ nghĩa trả-theo-mức-dùng, được định dạng cho tool calling của LLM. POST /api/search/web trả về 5 (tối đa 10) kết quả đã xếp hạng kèm tiêu đề, URL và snippet đã được dọn sẵn, cộng bộ lọc tùy chọn country_codestart_date/end_date. 15 tín dụng mỗi lệnh gọi (~0,015$), chỉ trừ khi thành công.

Đặt cạnh nhau

So sánh phản ánh định vị chung của mỗi nhà cung cấp tại thời điểm viết. Luôn xác nhận giá và hạn mức trên trang giá của từng nhà cung cấp trước khi tích hợp.
TavilyExaSerperAPI Pick
Hình dạng đầu raSnippet đã xếp hạng + câu trả lời LLM gói kèm tùy chọnURL đã xếp hạng + highlight/nội dung tùy chọnJSON SERP Google thôTitle + URL + snippet thân thiện LLM đã xếp hạng
Bộ lọc quốc giaHạn chếCó (country_code)
Bộ lọc khoảng ngàyCó (qdr)Có (start_date / end_date)
Endpoint schema toolCó — GET /api/search/web/tool-schema
Mô hình giáThuê bao + tín dụngThuê bao + tín dụngTheo truy vấnTín dụng trả-theo-mức-dùng, 5$ / 5k
Tính phí khi thất bại?TùyTùyKhông — chỉ HTTP 200
Phù hợp nhấtRAG được host / trợ lý chatKhám phá ngữ nghĩa / tương đồngPipeline SERP tùy chỉnhTool calling cho agent AI, pipeline RAG

Hình dạng đầu ra: phần quan trọng nhất

Lý do hạng mục này tồn tại là vì LLM không thể suy luận hiệu quả trên một blob HTML SERP. Chúng suy luận trên văn bản ngắn, có nhãn, đã xếp hạng. Vì vậy yếu tố dự báo lớn nhất xem một search API có hoạt động tốt như một tool agent hay không chính là: snippet sạch đến mức nào?

Tavily và API Pick dọn snippet một cách quyết liệt. Exa trả về highlight hoặc nội dung tùy theo cờ — ổn thôi, nhưng bạn quyết định xin bao nhiêu. Serper đưa cho bạn SERP thô và giả định bạn sẽ chạy một extractor sau đó. Đó là lựa chọn hợp lý nếu bạn đã vận hành một content extractor; nếu không, đó là công việc ẩn.

Với API Pick, một phản hồi điển hình trông như sau:

{
  "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
}

Hình dạng đó rơi thẳng vào một phản hồi function-calling mà không cần phân tích cú pháp thêm.

Lọc: quốc gia và độ mới

Hai chiều lọc quan trọng cho agent production:

  • Quốc gia / locale: một agent tài chính ở Anh không nên mặc định chỉ nhận nguồn của Mỹ.
  • Khoảng ngày: một agent nghiên cứu thị trường hỏi 'tuần này có gì xảy ra' phải loại bỏ mọi thứ cũ hơn 7 ngày.

Cả bốn API đều cung cấp một dạng nào đó của cả hai, nhưng khả năng biểu đạt khác nhau. API Pick dùng chuỗi ngày ISO (start_date="2026-04-01") rõ ràng không mơ hồ, so với các nhóm qdr thô hơn của Google (giờ / ngày / tuần / tháng vừa qua).

Mô hình giá: thuê bao vs trả-theo-mức-dùng

Các API dựa trên thuê bao (Tavily, Exa) hoạt động tốt khi bạn có lưu lượng ổn định, dự đoán được. Chúng trở nên bất tiện trong ba mô hình phổ biến:

  • Bạn đang làm prototype và không muốn cam kết hằng tháng.
  • Lưu lượng của bạn dạng bùng nổ (ví dụ agent nghiên cứu chạy theo lô).
  • Bạn xây các agent retry quyết liệt khi gặp lỗi cục bộ.

API Pick dùng mô hình tín dụng — 5$ mua được 5.000 tín dụng; Web Search tốn 15 tín dụng mỗi lệnh gọi; tín dụng không bao giờ hết hạn và chỉ bị trừ trên phản hồi HTTP 200. Điều khoản cuối đó quan trọng hơn nghe có vẻ: một vòng lặp agent retry năm lần trên một lỗi 502 nhất thời là miễn phí, không phải 5×.

Sự tiện dụng khi tích hợp

Tích hợp ít ma sát nhất là khi bạn có thể dán một JSON schema tool vào code agent mà không cần viết wrapper. API Pick công bố các schema sẵn dùng:

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

# Returns OpenAI tool definition + Claude tool use definition

Với 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"]}],
)

Với 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": "What's new in RAG research this week?"}],
)

Những gì không API nào trong số này làm được

Không API web search nào trả lời đáng tin cậy 'mọi X từ domain này kể từ 2019'. Để bao phủ kho lưu trữ sâu, bạn vẫn cần ghép tìm kiếm với một crawler tập trung hoặc một dataset chuyên biệt theo domain. Không cái nào dedupe hoàn hảo các URL gần giống nhau. Và không cái nào giải quyết vấn đề thượng nguồn là một nguồn cũ kỹ hoặc thẩm quyền thấp — đó là quyết định chất lượng nội dung mà agent của bạn phải đưa ra.

Chọn nhanh

Tốt nhất cho: RAG được host kèm câu trả lời
Chọn Tavily. Một endpoint, mô hình đã tự chọn nguồn, nhanh nhất để có một trợ lý chat hoạt động.
Tốt nhất cho: khám phá ngữ nghĩa / tương đồng
Chọn Exa. Xếp hạng neural là luận điểm cốt lõi của nó; embedding hoạt động tốt hơn tìm kiếm từ khóa cho 'tìm thêm cái giống URL này'.
Tốt nhất cho: xây pipeline SERP của riêng bạn
Chọn Serper. JSON SERP Google thô rẻ nhất. Bạn tự dọn dẹp.
Tốt nhất cho: tool calling cho agent AI, giá minh bạch, không có mức tối thiểu hằng tháng
Chọn API Pick. Snippet sẵn sàng cho LLM đã định dạng, bộ lọc quốc gia và ngày, trả-theo-mức-dùng, chỉ tính phí khi thành công, schema tool sẵn để dán. Dùng thử →

Câu hỏi thường gặp

API nào có giá mỗi lệnh gọi tốt nhất?

Giá mỗi lệnh gọi khác nhau. API Pick Web Search tốn 15 tín dụng mỗi lệnh gọi (≈ 0,015$ ở mức 5$ / 5.000 tín dụng) và chỉ trừ tín dụng cho phản hồi HTTP 200. Tavily và Exa dùng thuê bao hằng tháng cộng phí vượt theo tín dụng; Serper tính phí theo truy vấn. Nếu lưu lượng của bạn dạng bùng nổ hoặc bạn chạy lại các lệnh gọi thất bại khi agent retry, mô hình chỉ-tính-khi-thành-công thường thắng về chi phí thực tế.

Tất cả có hoạt động với OpenAI function calling và Claude tool use không?

Có. Tất cả đều cung cấp giao diện JSON-in / JSON-out, nên bạn có thể bọc bất kỳ cái nào thành một hàm tool. API Pick còn công bố một endpoint schema tool OpenAI/Claude (GET /api/search/web/tool-schema) để bạn dán đúng định nghĩa JSON vào vòng lặp agent của mình.

API Pick có phải là wrapper của Tavily không?

Không. API Pick chạy pipeline tổng hợp chỉ mục tìm kiếm, xếp hạng và tạo snippet riêng. Đầu ra cố ý đơn giản hơn Tavily: title + URL + snippet thân thiện với LLM đã xếp hạng, kèm bộ lọc tùy chọn quốc gia và khoảng ngày. Bạn có thể gọi POST /api/search/web trực tiếp mà không cần lớp RAG được host.

Còn độ trễ thì sao?

Cả bốn đều được thiết kế cho lệnh gọi agent đồng bộ. Độ trễ P50 gần như tương đương (dưới một giây với truy vấn ngắn). Khoảng cách độ trễ thực sự là khi một API còn chạy thêm một lệnh gọi LLM downstream bên trong endpoint tìm kiếm — các API tìm kiếm thuần trả về nhanh hơn các endpoint tổng hợp 'search + answer'.

Lựa chọn thay thế Tavily tốt nhất là gì?

Nếu bạn rời Tavily vì mức phí thuê bao tối thiểu hoặc giá vượt mức không minh bạch, API Pick Web Search là phương án thay thế trả-theo-mức-dùng gần nhất: cùng hình dạng (JSON đã xếp hạng, định dạng snippet), bộ lọc quốc gia/ngày, không có mức tối thiểu hằng tháng.

Các API dùng trong bài viết này

Sarah Choy
Viết bởi
Sarah Choy
CEO, API Pick

Sarah Choy là CEO của API Pick. Cô viết về việc xây dựng các API sẵn sàng cho production cho AI agent và quy trình LLM.