Tavily Python SDK

在 Python 中集成 Tavily API,实现智能搜索、网页内容提取、爬取、站点地图及研究报告功能。

Star 数
★ 1.4k
最近更新
12 天前
License
MIT
主语言
Python

30 秒速览

运行形态
代码库 / SDK
可在哪里用
平台专用
费用
有免费版,另有付费云服务
上手难度
低 · 几分钟可跑通
开始前需要
PythonpipShell / 命令行网络访问
典型场景
需要为 AI 应用集成实时网络搜索能力的开发者,使用 search 获取最新信息。
不适合
  • 需要完全离线或数据不出本地的团队,所有功能都依赖 Tavily 云端 API
  • 需要 crawl、map、research 等完整功能的用户,这些端点必须付费或受邀才能使用
  • 高并发生产环境,无密钥模式有速率限制且免费额度仅每月 1000 积分

这个 Agent 能做什么,适合哪些场景?

Tavily Python SDK 是一个官方 Python 库,用于与 Tavily API 交互,提供搜索、提取、爬取、地图和研究等完整功能。它支持无密钥模式以快速试用搜索和提取,但完整功能需要 API 密钥。SDK 提供了同步和异步客户端,支持自定义会话注入和请求追踪。该库面向开发者,用于将网络搜索和内容提取集成到应用程序中,尤其适合 RAG 应用和需要实时网络数据的 AI 系统。

SDK 通过 TavilyClient 和 AsyncTavilyClient 类提供核心功能:search 执行网络搜索并返回结果,get_search_context 生成适合 RAG 的上下文字符串,qna_search 返回直接答案。extract 从多个 URL 提取原始内容和图片,crawl 根据起始 URL 遍历网站页面,map 发现网站结构,research 创建研究报告并支持流式输出。SDK 还支持通过自定义 requests.Session 或 httpx.AsyncClient 注入代理网关,以及通过 project_id、session_id 等标识符进行请求追踪。所有方法均返回标准字典或流式响应。

  1. 需要为 AI 应用集成实时网络搜索能力的开发者,使用 search 获取最新信息。
  2. 构建 RAG 应用的团队,使用 get_search_context 生成基于事实的上下文,提升生成准确性。
  3. 需要从多个网页提取结构化内容的用户,使用 extract 批量获取原始文本和图片。
  4. 需要分析网站结构的 SEO 或内容分析师,使用 map 可视化站点层级。
  5. 需要自动化生成研究报告的研究人员,使用 research 异步创建报告并检索结果。
  6. 企业环境中通过 API 网关代理请求的开发者,使用自定义 session 注入集中式认证。

如何安装或部署这个 Agent?

通过 pip 安装:pip install tavily-python。需要 Python 3.x 环境。无需密钥即可试用,但完整功能需在 tavily.com 注册并获取 API 密钥。

如何使用这个 Agent?

首先导入并实例化客户端:from tavily import TavilyClient; client = TavilyClient(api_key="tvly-YOUR_API_KEY")。然后调用方法,例如 response = client.search("Who is Leo Messi?")。无密钥模式下可省略 api_key。对于异步,使用 from tavily import AsyncTavilyClient 并 await 调用。

这个 Agent 有哪些优点和局限?

优点
  • 提供无密钥试用模式,降低了入门门槛,方便快速评估。
  • 覆盖搜索、提取、爬取、地图和研究五大功能,满足多样化的网络数据需求。
  • 支持同步和异步客户端,适应不同应用场景。
  • 自定义会话注入功能,方便企业通过 API 网关进行集中管理。
局限
  • 核心功能依赖于 Tavily 专有 API,存在供应商锁定风险。
  • 搜索和提取之外的爬取、地图、研究功能需要 API 密钥,且爬取目前仅限邀请制。
  • 无密钥模式有速率限制,不适合高并发生产环境。
  • 免费额度每月 1000 积分,超出部分需付费,长期成本需评估。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Tavily Python SDK 当前 46 · 缺口较多 代码库 / SDK免费版 + 付费版 ★ 1.4k 12 天前 Python —
wigolo 54 · 缺口较多 命令行工具免费 + 模型费 ★ 5.5k 22 天前 TypeScript Codex · Claude Code · OpenAI API · Claude API
Youtu-Agent 27 · 缺口较多 命令行工具免费 + 模型费 ★ 4.6k 7 个月前 Python OpenAI API
Atomic Agents 64 · 存在缺口 代码库 / SDK免费 + 模型费 ★ 6.3k 今天 Python OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
46/ 100 五分制 2.3 / 5
信任安全 7/29
可靠稳定 8/14
适用触发 10/18
规范维护 9/18
有效结果 9/13
证据核验 3/8
查看各维度的扣分理由
信任安全7 / 29 · 1.2/5

证据显示:SDK 支持自定义 session/client 注入,允许用户控制认证和代理,但默认使用 API key,权限最小化不足;无用户确认机制;数据流透明度较好,README 明确说明请求头、session 跟踪和 human_id 哈希;敏感数据处理方面,API key 作为参数传递,但未说明存储或日志处理;依赖安全未提及,requirements.txt 仅列出包名无版本;外部影响方面,SDK 会发起网络请求,但未说明速率限制或滥用防护;回滚机制未提及;来源归属方面,MIT 许可证和版权声明存在,但发布者未验证。扣分原因:缺少权限最小化设计、用户确认、依赖安全、回滚机制,敏感数据处理不完整。

可靠稳定8 / 14 · 2.9/5

证据显示:README 和代码示例一致,API 方法命名清晰;依赖可用性方面,requirements.txt 仅列出包名,未固定版本,存在依赖漂移风险;失败消息方面,README 提到 TavilyKeylessLimitError 异常携带结构化字段,但未展示其他错误处理。扣分原因:依赖版本未固定,错误处理覆盖不全。

适用触发10 / 18 · 2.8/5

证据显示:README 面向开发者,提供了多种使用场景(搜索、提取、爬取、映射、研究)和代码示例;能力边界明确,keyless 模式限制 search 和 extract;触发精度方面,方法参数说明较详细,但未提供完整的 API 参考;环境适配方面,支持同步和异步客户端,以及自定义 session 注入。扣分原因:触发精度因缺少完整 API 参考而受限。

规范维护9 / 18 · 2.5/5

证据显示:README 结构清晰,包含安装、使用、文档链接;安装说明简单;命名稳定,API 方法命名直观;示例丰富,覆盖主要功能;已知限制方面,仅提到 keyless 模式限制,未提及其他限制;许可证为 MIT,版权声明存在;版本变更日志未提供;维护责任方面,有支持邮箱和社区链接,但发布者未验证。扣分原因:缺少版本变更日志,已知限制不全面。

有效结果9 / 13 · 3.5/5

证据显示:输出可用性方面,返回结构化 JSON 响应,便于程序处理;边际价值方面,提供搜索、提取、爬取、映射、研究等高级功能,简化 API 交互;成本效益方面,免费额度 1000 积分/月,但未提供详细定价。扣分原因:成本信息不完整。

证据核验3 / 8 · 1.9/5

证据显示:README 中的功能描述与代码示例一致,但未提供独立的测试结果或第三方验证;跨来源佐证方面,有 CI 徽章,但未提供测试详情;事实与推断分离方面,README 区分了功能描述和示例,但未明确标注哪些是推断。扣分原因:缺乏独立验证和测试证据。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 源码中未见:依赖安全审查安装前固定版本并做一次依赖扫描(如 npm audit、pip-audit);优先放在容器里运行。
  • 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
  • 发布者身份未验证,使用前应确认来源可信度。
  • 依赖版本未固定,存在供应链风险,建议锁定版本。
  • API key 作为参数传递,需注意日志和存储安全。
  • 缺少版本变更日志,升级时需谨慎。
证据充分度:低 评估于 2026年8月9日 审查版本 de924695765d 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

常见问题

无密钥模式下可以使用哪些功能?
无密钥模式仅支持 search 和 extract 方法,其他方法会报错提示需要 API 密钥。
如何获取 API 密钥以及费用如何?
在 tavily.com 注册即可获得 API 密钥,免费额度为每月 1000 积分,超出需付费,具体价格见文档。
爬取功能是否开放给所有用户?
爬取功能目前仅限邀请制,需要访问 crawl.tavily.com 了解更多信息。
是否支持异步调用?
是的,SDK 提供了 AsyncTavilyClient 客户端,支持异步操作。
能否通过代理或网关使用?
可以,SDK 支持传入自定义 requests.Session 或 httpx.AsyncClient,但需提供 api_base_url 指向网关。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents