名称: tavily
描述: 使用 Tavily Search API 进行 AI 优化的网络搜索。适用于需要全面网络研究、时事查询、特定领域搜索或 AI 生成答案摘要的场景。Tavily 针对大语言模型消费进行了优化,提供清晰的结构化结果、答案生成和原始内容提取。最适合研究任务、新闻查询、事实核查和收集权威来源。
Tavily 是一个专门为大语言模型和 AI 应用优化的搜索引擎。与传统搜索 API 不同,Tavily 提供 AI 就绪的结果,包括可选的答案生成、干净的内容提取和域名过滤功能。
核心功能:
- 基于搜索结果生成 AI 答案摘要
- 为 LLM 处理优化的清晰、结构化结果
- 快速(basic)和全面(advanced)两种搜索模式
- 域名过滤(包含/排除特定来源)
- 专注于当前事件的新闻搜索
- 附带相关视觉内容的图片搜索
- 用于深度分析的原始内容提取
graph TB
A[用户查询] --> B{搜索模式}
B -->|basic| C[快速搜索<br/>响应时间 1-2 秒]
B -->|advanced| D[全面搜索<br/>响应时间 5-10 秒]
C --> E[Tavily API]
D --> E
E --> F{主题过滤}
F -->|general| G[广泛网络搜索]
F -->|news| H[新闻来源<br/>最近 7 天]
G --> I[域名过滤]
H --> I
I --> J{包含特定域名?}
J -->|是| K[过滤到指定域名]
J -->|否| L{排除特定域名?}
K --> M[搜索结果]
L -->|是| N[移除不需要的域名]
L -->|否| M
N --> M
M --> O{响应选项}
O --> P[AI 答案<br/>摘要]
O --> Q[结构化结果<br/>标题、URL、内容、分数]
O --> R[图片<br/>如请求]
O --> S[原始 HTML 内容<br/>如请求]
P --> T[返回给代理]
Q --> T
R --> T
S --> T
style E fill:#4A90E2
style P fill:#7ED321
style Q fill:#7ED321
style R fill:#F5A623
style S fill:#F5A623
# 带 AI 答案的简单查询
scripts/tavily_search.py "什么是量子计算?"
# 获取多个结果
scripts/tavily_search.py "Python 最佳实践" --max-results 10
# 全面研究模式
scripts/tavily_search.py "气候变化解决方案" --depth advanced
# 新闻聚焦搜索
scripts/tavily_search.py "2026 年 AI 发展" --topic news
# 仅搜索可信域名
scripts/tavily_search.py "Python 教程" \
--include-domains python.org docs.python.org realpython.com
# 排除低质量来源
scripts/tavily_search.py "如何编程" \
--exclude-domains w3schools.com geeksforgeeks.org
# 包含相关图片
scripts/tavily_search.py "埃菲尔铁塔建筑" --images
| 模式 | 速度 | 覆盖范围 | 适用场景 |
|---|---|---|---|
| basic | 1-2 秒 | 良好 | 快速事实、简单查询 |
| advanced | 5-10 秒 | 优秀 | 研究、复杂主题、全面分析 |
决策树:
1. 需要快速事实或定义? → 使用 basic
2. 研究复杂主题? → 使用 advanced
3. 需要多角度信息? → 使用 advanced
4. 时间敏感查询? → 使用 basic
| 主题 | 时间范围 | 来源 | 适用场景 |
|---|---|---|---|
| general | 所有时间 | 广泛网络 | 常青内容、教程、文档 |
| news | 最近 7 天 | 新闻网站 | 当前事件、近期发展、突发新闻 |
决策树:
1. 查询包含"最新"、"近期"、"当前"、"今天"? → 使用 news
2. 寻找历史或常青内容? → 使用 general
3. 需要最新信息? → 使用 news
添加到你的 Clawdbot 配置中:
{
"skills": {
"entries": {
"tavily": {
"enabled": true,
"apiKey": "tvly-你的_API_密钥_在此"
}
}
}
}
通过 Clawdbot 的配置系统在脚本中访问。
export TAVILY_API_KEY="tvly-你的_API_密钥_在此"
添加到 ~/.clawdbot/.env 或你的 shell 配置文件中。
tvly- 开头)# 带答案的全面研究
scripts/tavily_search.py "解释量子纠缠" --depth advanced
# 多个权威来源
scripts/tavily_search.py "REST API 设计最佳实践" \
--max-results 10 \
--include-domains github.com microsoft.com google.com
# 最新新闻
scripts/tavily_search.py "AI 政策更新" --topic news
# 领域内近期发展
scripts/tavily_search.py "量子计算突破" \
--topic news \
--depth advanced
# 仅学术来源
scripts/tavily_search.py "机器学习算法" \
--include-domains arxiv.org scholar.google.com ieee.org
# 技术文档
scripts/tavily_search.py "React hooks 指南" \
--include-domains react.dev
# 收集视觉参考
scripts/tavily_search.py "现代网页设计趋势" \
--images \
--max-results 10
# 获取原始 HTML 内容用于深度分析
scripts/tavily_search.py "Python async/await" \
--raw-content \
--max-results 5
AI 生成的答案提供基于搜索结果合成的简明摘要:
{
"answer": "量子计算是一种利用量子力学现象进行计算的计算类型..."
}
何时使用:
- 需要快速摘要
- 希望获得来自多个来源的综合信息
- 寻找问题的直接答案
何时跳过(使用 --no-answer):
- 只需要来源 URL
- 希望自己进行综合
- 节省 API 信用额度
每个结果包含:
- title:页面标题
- url:来源 URL
- content:提取的文本片段
- score:相关性分数(0-1)
- raw_content:完整 HTML(如果启用了 --raw-content)
当启用 --images 时,返回搜索过程中找到的相关图片的 URL。
basic 开始(更快、更便宜)advanced:包含域名用于:
- 学术研究(.edu 域名)
- 官方文档(官方项目站点)
- 可信新闻来源
- 已知的权威来源
排除域名用于:
- 已知的低质量内容农场
- 不相关的内容类型(非视觉查询的 Pinterest)
- 有付费墙或访问限制的网站
basic 深度max_results 限制在你实际会使用的数量include_raw_content脚本提供有用的错误信息:
# 缺少 API 密钥
错误:需要 Tavily API 密钥
设置:设置 TAVILY_API_KEY 环境变量或传递 --api-key
# 包未安装
错误:未安装 tavily-python 包
安装方法:pip install tavily-python
from tavily_search import search
result = search(
query="什么是机器学习?",
api_key="tvly-...",
search_depth="advanced",
max_results=10
)
if result.get("success"):
print(result["answer"])
for item in result["results"]:
print(f"{item['title']}: {item['url']}")
scripts/tavily_search.py "Python 教程" --json > results.json
# 搜索并提取内容
scripts/tavily_search.py "React 文档" --json | \
jq -r '.results[].url' | \
xargs -I {} curl -s {}
对比 Brave Search:
- ✅ AI 答案生成
- ✅ 原始内容提取
- ✅ 更好的域名过滤
- ❌ 比 Brave 慢
- ❌ 消耗信用额度
对比 Perplexity:
- ✅ 对来源有更多控制
- ✅ 提供原始内容
- ✅ 专门的新闻模式
- ≈ 答案质量相似
- ≈ 速度相似
对比 Google Custom Search:
- ✅ LLM 优化的结果
- ✅ 答案生成
- ✅ API 更简单
- ❌ 索引规模较小
- ≈ 成本结构相似
# 赋予可执行权限
chmod +x scripts/tavily_search.py
# 检查 Python 版本(需要 3.6+)
python3 --version
# 安装依赖
pip install tavily-python
# 验证 API 密钥格式(应以 tvly- 开头)
echo $TAVILY_API_KEY
# 使用显式密钥测试
scripts/tavily_search.py "测试" --api-key "tvly-..."
max_results 以节省信用额度basic 深度代替 advanced请参阅 api-reference.md 获取:
- 完整的 API 参数文档
- 响应格式规范
- 错误处理详情
- 成本和速率限制信息
- 高级使用示例
tavily-python 包(安装:pip install tavily-python)