你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
注释
Azure AI 搜索可通过Azure门户、REST API 和Azure SDK获取。 它也是 Foundry IQ 的基础;Foundry IQ 是一个托管式知识层,可将企业内容转化为供 Microsoft Foundry 门户中的智能体使用的、可复用且具备权限感知能力的知识库。
本教程将构建一个网站,用于搜索书籍目录,并将网站部署到Azure 容器应用。 部署使用Azure开发人员 CLI(azd)和托管标识作为Azure AI 搜索的默认身份验证方法。
在本教程中,你将了解:
- 使用Azure开发人员 CLI 部署Azure AI 搜索并自动设定索引种子。
- 在 C# 应用中集成搜索查询、建议、分面、分页和文档查找。
- 将应用部署到使用托管标识作为默认身份验证方法的Azure 容器应用。
该示例有什么作用?
此示例网站提供对 10000 本书籍的目录的访问权限。 你可以通过在搜索栏中输入文本来搜索目录。 在你输入文本时,网站使用搜索索引的建议功能自动补全文本。
查询完成后,网站会显示包含部分详细信息的书籍列表。 可以选择一本书以查看其完整详细信息,这些详细信息存储在搜索索引中。
搜索体验包括:
- 搜索 - 为应用程序提供搜索功能。
- 建议 - 在搜索栏中键入用户时提供建议。
- 分面和筛选器 - 提供按作者或语言筛选的分面导航结构。
- 分页结果 - 提供用于滚动结果的分页控件。
- 文档查找 - 按 ID 查找文档以检索详细信息页的所有内容。
如何对示例进行组织?
此示例代码包含以下组件:
| 应用 | 目的 | GitHub存储库位置 |
|---|---|---|
client |
React 应用(呈现层)用于显示具有搜索的书籍。 它调用 API。 | /azure-search-static-web-app/client |
api |
C# Azure Functions API(业务层),托管在 Azure 容器应用 上的容器中,该容器使用 .NET SDK 调用 Azure AI 搜索 API。 | /azure-search-static-web-app/api |
bulk-insert |
.NET创建索引并加载文档的项目。 部署 azd 通过 postprovision 挂钩自动运行此部署。 |
/azure-search-static-web-app/bulk-insert |
infra |
Bicep用于azd部署Azure AI 搜索、Azure 容器应用和支持资源的基础结构。 |
Azure-Samples/azure-search-static-web-app |
设置开发环境
为本地开发环境安装以下软件。 该azd up命令预配所有Azure资源,包括Azure AI 搜索,因此无需事先创建它们。
- .NET 9 或更高版本
- Git
- Visual Studio Code
- 适用于 Visual Studio Code 的 C# Dev 工具扩展
-
Azure开发人员 CLI (
azd) - Docker Desktop 或其他与 Docker 兼容的容器运行时
本教程不会在本地运行 Azure Functions API。 若要在本地运行,请安装 Azure Functions Core Tools。
使用 Git 克隆搜索示例
可以从本地克隆部署示例。 该azd up命令从本地存储库读取应用程序和基础结构文件,生成容器,预配Azure资源,并将客户端和 API 部署到Azure 容器应用。
在 Bash 终端中,将示例应用程序克隆到本地计算机。
git clone https://github.com/Azure-Samples/azure-search-static-web-app.git在同一 Bash 终端中,转到此搜索示例的存储库目录。
cd azure-search-static-web-app使用 Visual Studio Code 命令
code .打开存储库。 除非另有指定,否则请完成Visual Studio Code中的剩余任务。code .