Skip to main content
Exa 是一个完全为 LLM 设计的搜索引擎。使用自然语言查询在互联网上搜索文档,然后从所需文档中检索清理后的 HTML 内容 与基于关键词的搜索(如 Google)不同,Exa 的神经搜索能力使其能够语义理解查询并返回相关文档。例如,我们可以搜索 "fascinating article about cats",并比较来自 GoogleExa 的搜索结果。Google 基于关键词 “fascinating” 给我们返回 SEO 优化的列表文章。Exa 则直接有效。 本笔记本将介绍如何将 Exa 搜索与 LangChain 结合使用。

设置

安装

安装 LangChain Exa 集成包:

凭证

您需要一个 Exa API 密钥才能使用此集成。通过在此注册可获得 10 美元免费额度(完成某些操作如首次搜索可获得更多)。

使用 ExaSearchResults 工具

ExaSearchResults 是一个可与 LangChain 代理一起使用的工具,用于执行 Exa 搜索。它为搜索操作提供了更结构化的接口:

ExaSearchResults 的高级功能

您可以使用高级搜索选项,如控制搜索类型、实时爬取和内容过滤:

使用 ExaFindSimilarResults 工具

ExaFindSimilarResults 允许您查找与给定 URL 类似的网页。这对于查找相关内容或竞争分析很有用:

在代理中使用

我们可以将 ExaSearchResults 和 ExaFindSimilarResults 工具与 LangGraph 代理一起使用。这使代理能够根据用户的查询动态搜索信息并查找类似内容。 首先,让我们设置语言模型。您需要提供您的 OpenAI API 密钥:
我们需要安装 langgraph:

使用 ExaSearchRetriever

ExaSearchRetriever 是一个使用 Exa 搜索来检索相关文档的检索器。
用于 TextContentsOptionsmax_characters 参数以前称为 max_length,现已弃用。请确保使用 max_characters

基本用法

以下是使用 ExaSearchRetriever 的一个简单示例:

高级功能

您可以使用高级功能,如控制结果数量、搜索类型、实时爬取、摘要和文本内容选项:

API 参考

有关所有 Exa API 功能和配置的详细文档,请访问 Exa API 文档