**利用 Tavily Search API 提升 AI 应用搜索能力**

264 阅读2分钟

引言

在现代AI应用中,实时获取准确和真实的数据至关重要。Tavily Search API 通过为大型语言模型(LLMs)提供特别设计的搜索引擎,能够在短时间内返回高质量的搜索结果。本篇文章将介绍如何集成和使用 Tavily Search API,帮助开发者提升 AI 应用的搜索能力。

主要内容

一、Tavily Search API 概述

Tavily Search 是一个专为 AI 代理(如 LLMs)设计的搜索引擎,提供快速、准确和真实的结果。它支持异步操作,并返回丰富的结果数据,包括标题、URL、内容和答案。

二、集成步骤

首先,确保安装必要的软件包:

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

接着,设置 Tavily API key:

import getpass
import os

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

三、实例化 Tavily Search 工具

可以通过 langchain_community.tools 模块创建 TavilySearchResults 实例:

from langchain_community.tools import TavilySearchResults

tool = TavilySearchResults(
    max_results=5,
    search_depth="advanced",
    include_answer=True,
    include_raw_content=True,
    include_images=True,
    # 使用API代理服务提高访问稳定性
)

代码示例

下面的代码示例展示了如何调用 TavilySearchResults 工具:

tool.invoke({"query": "What happened at the last Wimbledon"})

使用模型生成的 ToolCall 进行调用:

model_generated_tool_call = {
    "args": {"query": "euro 2024 host nation"},
    "id": "1",
    "name": "tavily",
    "type": "tool_call",
}
tool_msg = tool.invoke(model_generated_tool_call)

print(tool_msg.content[:400])

常见问题和解决方案

  1. 网络访问问题:由于某些地区的网络限制,开发者可能需要使用API代理服务来确保访问的稳定性。

  2. API 调用限制:注意 Tavily API 的免费调用次数上限,如需更多调用可考虑付费计划。

总结和进一步学习资源

本文介绍了 Tavily Search API 的基本集成和使用方法。通过该工具,开发者可以显著提升AI应用的搜索能力。

参考资料

结束语:如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---