const client = tavily({apiKey: process.env.GATEWAY_KEY,apiBaseURL:'http://localhost:3014/compat/tavily',});await client.search('AI agents');
现有 SDK 调用保持不变。
供应商和回退顺序,由你配置。
供应商自由选,路由由你定。
使用自己的密钥接入所需供应商,为搜索、新闻和网页提取分别设置调用顺序,统一通过 search2ai 发起请求。
SEARCH1API_KEY=your_provider_keyTAVILY_KEY=your_backup_provider_keySEARCH_SERVICE=search1api,tavilyNEWS_SERVICE=tavily,search1apiCRAWL_SERVICE=search1api,jina
按需添加供应商
内置供应商直接配置;其他服务通过实现并注册适配器接入,扩展自己的搜索网关。
上游失败自动回退
遇到限流、超时或请求失败,按配置尝试下一个上游,并返回响应来源和失败原因。
可选结果缓存
开启内存缓存,或在 Workers 上使用 Cloudflare KV,自行设置缓存时长。
只换 API Base 和 Key,业务代码照常运行。
已经在用 Exa、Tavily、Search1API、SearXNG 或 Firecrawl?将已支持的 API 和 SDK 调用指向 search2ai,保留原有调用方式与结果解析,由网关连接你配置的上游。
Tavily SDK · 仅修改连接配置 — typescript diffimport { tavily } from '@tavily/core';const client = tavily({- apiKey: process.env.TAVILY_API_KEY,+ apiKey: process.env.GATEWAY_KEY,+ apiBaseURL: 'http://localhost:3014/compat/tavily',});const results = await client.search('AI agent frameworks');
现有 SDK 调用保持不变。
| 现有 API | 网关接入 |
|---|---|
| Exa | /compat/exaPOST /search, /contents |
| Tavily | /compat/tavilyPOST /search, /extract |
| Search1API | /compat/search1apiPOST /search, /news, /crawl |
| SearXNG | /compat/searxngGET/POST /search (JSON) |
| Firecrawl | /compat/firecrawlPOST /v2/scrape, /v1/scrape |
在网关配置 AUTH_KEYS,并将其中一个网关 Key 填入 SDK。各供应商的上游密钥由网关管理。
兼容范围以文档列出的接口和参数为准。供应商专有能力需使用对应上游,跨供应商转换支持其中一部分;Firecrawl 兼容单页抓取。
接入你正在使用的技术栈。
给 AI 客户端添加工具,通过 HTTP 调用,或直接嵌入你的应用。
先将上游密钥保存到 .env,启动服务,再在另一个终端发送搜索请求。
HTTP API — bash# .envSEARCH1API_KEY=your_provider_key# Terminal 1npx -y search2ai serve --host 127.0.0.1# Terminal 2curl http://localhost:3014/v1/search \-H 'Content-Type: application/json' \-d '{"query":"hono cloudflare workers","max_results":3}'
需要 Node.js ≥ 22.18,并配置至少一个支持所需操作的上游。示例使用 Search1API,也可以选择其他受支持的服务商。
搜索与新闻:Search1API、Tavily、Brave、Exa、Serper、SerpAPI、Google、SearXNG。网页提取:Search1API、Tavily、Exa、Jina、Firecrawl。具体能力与筛选支持因上游而异;Google 的新闻操作使用按日期排序的普通搜索。
仅启用你配置的服务商。上游所需的凭据、配额与使用费用由各服务商独立管理。
希望直接使用托管搜索?
直接使用 Search1API,或将它接入 search2ai 作为上游。不必运行自己的网关,也能获得搜索、新闻与网页提取能力。
试用 Search1APIMIT 开源许可,公开构建。