使用 Tavily 搜索 API 获取实时精确搜索结果

技术背景介绍

Tavily 搜索 API 是一个专为 AI 代理(如大型语言模型)而设计的搜索引擎。它能够快速提供实时、准确且事实性强的搜索结果。这使得 Tavily 成为可以嵌入到 AI 应用中的理想工具,提升信息获取的效率和准确性。

核心原理解析

Tavily 搜索 API 提供了异步的原生调用方式,可以返回包括标题、URL、内容和答案在内的数据。API 可以根据需求设置不同的搜索深度和结果数量。通过与其他语言模型(如 OpenAI、Anthropic)结合使用,我们可以构建强大的搜索和回答系统。

代码实现演示(重点)

在这部分,我们将展示如何集成 Tavily 搜索 API 并进行实际搜索操作。

1. 安装所需包

首先,我们需要安装相关的 Python 包:

%pip install -qU "langchain-community>=0.2.11" tavily-python

2. 设置 API 凭据

我们需要获取 Tavily API 密钥,可以通过访问官网注册获取。然后设置 API 密钥:

import os
import getpass

if not os.environ.get("TAVILY_API_KEY"):
    os.environ["TAVILY_API_KEY"] = getpass.getpass("Tavily API key:\n")

3. 实例化 Tavily 搜索工具

实例化 Tavily 搜索工具,包括设置最大结果数、搜索深度等参数:

from langchain_community.tools import TavilySearchResults

tool = TavilySearchResults(
    max_results=5,
    search_depth="advanced",
    include_answer=True,
    include_raw_content=True,
    include_images=True,
)

4. 进行搜索调用

使用 Tavily 搜索工具执行搜索操作:

result = tool.invoke({"query": "What happened at the last wimbledon"})

for item in result:
    print(f"URL: {item['url']}")
    print(f"Content: {item['content']}\n")

结果输出示例:

URL: https://www.theguardian.com/sport/live/2023/jul/16/wimbledon-mens-singles-final-2023-carlos-alcaraz-v-novak-djokovic-live?page=with:block-64b3ff568f08df28470056bf
Content: Carlos Alcaraz recovered from a set down to topple Djokovic 1-6, 7-6(6), 6-1, 3-6, 6-4 and win his first Wimbledon title in a battle for the ages

5. 与语言模型结合

我们可以将 Tavily 搜索工具与其他语言模型结合使用,构建更智能的搜索与回答系统。例如,结合 OpenAI 的 GPT 模型:

import openai

# 使用稳定可靠的API服务
client = openai.OpenAI(
    base_url='https://yunwu.ai/v1',
    api_key='your-api-key'
)

llm_with_tools = client.bind_tools([tool])
response = llm_with_tools.invoke({"query": "who won the last women's singles wimbledon"})

print(response)

应用场景分析

Tavily 搜索 API 可以广泛应用于以下场景:

  • 智能问答系统:与大型语言模型集成,为用户提供实时的、准确的回答。
  • 资讯聚合平台:快速汇总最新的新闻和信息。
  • 研究工具:帮助研究人员高效地进行文献检索。

实践建议

在实际使用 Tavily 搜索 API 时,应注意以下几点:

  1. API 配额管理:合理规划和监控 API 调用次数,避免超过配额。
  2. 搜索深度设置:根据具体需求调整搜索深度,以平衡结果质量与响应速度。
  3. 结合其他工具:充分利用 Tavily 与其他语言模型结合的优势,提升系统的智能化水平。

如果遇到问题欢迎在评论区交流。

—END—

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值