Azure Cognitive Search)是微软的云搜索服务,为开发者提供基础设施、API 和工具,用于大规模执行向量、关键词和混合查询的信息检索。
AzureAISearchRetriever 是一个集成模块,用于从非结构化查询中返回文档。它基于 BaseRetriever 类,针对 Azure AI 搜索的 2023-11-01 稳定 REST API 版本,这意味着它支持向量索引和查询。
本指南将帮助您开始使用 Azure AI 搜索检索器。有关所有 AzureAISearchRetriever 功能和配置的详细文档,请参阅 API 参考。
AzureAISearchRetriever 取代了即将弃用的 AzureCognitiveSearchRetriever。我们建议切换到基于搜索 API 最新稳定版本的新版本。
集成详情
设置
要使用此模块,您需要:- 一个 Azure AI 搜索服务。如果您注册 Azure 试用版,可以免费创建一个。免费服务配额较低,但足以运行本笔记本中的代码。
- 一个包含向量字段的现有索引。有多种创建方式,包括使用向量存储模块。或者,尝试 Azure AI 搜索 REST API。
-
一个 API 密钥或 Azure AD 令牌。
- API 密钥在您创建搜索服务时生成。如果您只是查询索引,可以使用查询 API 密钥,否则请使用管理员 API 密钥。详情请参阅查找 API 密钥。
- Azure AD 令牌可与 Azure 托管标识一起使用。详情请参阅使用标识将应用连接到 Azure AI 搜索。
AzureAISearchRetriever)。搜索索引提供可搜索的内容。
使用 API 密钥
安装
此检索器位于langchain-community 包中。我们还需要一些额外的依赖项:
实例化
对于AzureAISearchRetriever,提供 index_name、content_key 和 top_k,将其设置为要检索的结果数量。将 top_k 设置为零(默认值)将返回所有结果。
用法
现在您可以使用它从 Azure AI 搜索中检索文档。 这是您将调用的方法。它将返回与查询相关的所有文档。示例
本节演示如何在内置示例数据上使用检索器。如果您已经在搜索服务上拥有向量索引,可以跳过此步骤。 首先提供端点和密钥。由于我们在此步骤中创建向量索引,请指定一个文本嵌入模型以获取文本的向量表示。此示例假设使用 Azure OpenAI 并部署了 text-embedding-ada-002。因为此步骤会创建索引,请确保为搜索服务使用管理员 API 密钥。langchain-vector-demo。这将创建一个与该索引名称关联的新向量存储。
state_of_the_union.txt 文件。我们将文本分成 400 个令牌的块,没有重叠。最后,文档作为嵌入添加到我们的向量存储中。
index_name 变量是上一步中的 langchain-vector-demo。如果您跳过了向量存储创建,请在参数中提供您的索引名称。在此查询中,将返回排名最高的结果。
在链中使用
API 参考
有关所有AzureAISearchRetriever 功能和配置的详细文档,请参阅 API 参考。
将这些文档连接到 Claude、VSCode 等,通过 MCP 获取实时答案。

