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

