Azure AI 搜索的 C# 示例

了解演示 Azure AI 搜索解决方案的功能和工作流的 C# 代码示例。 这些示例使用适用于 .NET 的 Azure SDKAzure AI 搜索客户端库,可以通过以下链接进行浏览。

目标 链接
包下载 nuget.org/packages/Azure.Search.Documents/
API 参考 Azure.Search.Documents
API 测试用例 github.com/Azure/azure-sdk-for-net/tree/main/sdk/search/Azure.Search.Documents/tests
源代码 github.com/Azure/azure-sdk-for-net/tree/main/sdk/search/Azure.Search.Documents/src
更改日志 https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/search/Azure.Search.Documents/CHANGELOG.md

SDK 示例

Azure SDK 开发团队中的代码示例演示 API 用法。 可以在 GitHub 上找到这些示例。

示例 说明
Hello world (同步) 使用同步方法创建客户端、进行身份验证和处理错误。
你好,世界(异步) 使用异步方法创建客户端、进行身份验证和处理错误。
服务级操作 获取服务统计信息并创建多个搜索对象,包括索引、索引器、数据源、技能集和同义词映射。 最后,查询索引。
索引操作 获取存储在索引中的文档计数。
FieldBuilderIgnore 使用属性处理不受支持的数据类型。
为文档编制索引(推送模型) 使用推送模型,通过向索引发送 JSON 有效负载来为文档编制索引。
客户管理的加密密钥 使用客户管理的加密密钥来保护敏感内容。
矢量搜索 为矢量字段编制索引并执行矢量搜索。
语义排名 在索引中配置语义排名器并运行语义查询。

文档示例

来自 Azure AI 搜索团队的代码示例演示了功能和工作流。 以下许多示例在教程、快速入门和操作指南文章中被引用,这些文章详细解释了代码。 可以在 GitHub 上的 Azure-Samples/azure-search-dotnet-samplesAzure-Samples/search-dotnet-getting-started 中找到这些示例。

示例 说明
快速入门 快速入门的 C# 部分的源代码 :全文搜索。 使用示例数据创建、加载和查询索引。
quickstart-rag C# 部分的源代码用于快速入门:生成性搜索(RAG)。 利用 Azure OpenAI 的聊天补全模型,使用来自 Azure AI 搜索的基础数据。
quickstart-semantic-search C# 部分的 快速入门:语义排名 源代码。 将语义排名添加到索引架构并运行语义查询。
quickstart-vector-search 快速入门的 C# 部分的源代码 :矢量搜索。 索引和查询向量内容。
create-mvc-app 教程的源代码 :将搜索添加到 ASP.NET Core (MVC) 应用。 将基本搜索、分页和其他服务器端行为添加到 MVC Web 应用,与大多数示例中使用的控制台应用程序不同。
搜索网站 教程的源代码 :向 Web 应用添加搜索。 构建一个端到端搜索应用,该应用使用推送 API 进行批量上传,以及用于托管应用和处理搜索请求的丰富客户端。
tutorial-ai-enrichment 教程的源代码 :来自 Azure Blob 的 AI 生成的可搜索内容。 创建循环访问 Azure Blob 以提取信息和推断结构的技能集。
多数据源 教程的源代码 :从多个数据源编制索引。 将两个数据源中的内容合并到一个索引中。
optimize-data-indexing 教程 :使用推送 API 优化索引的源代码。 使用优化技术将数据推送到索引中。
DotNetHowTo 使用 .NET 客户端库的源代码。 在了解 API 时创建和管理多个搜索对象。
DotNetToIndexers 教程的源代码 :为 Azure SQL 数据编制索引。 使用计划、字段映射和参数配置 Azure SQL 索引器。
DotNet加密使用CMK指南 源代码用于配置由客户管理的密钥进行数据加密。 创建使用客户管理的密钥加密的对象。
DotNetVectorDemo 创建、加载和查询矢量索引。
.NET 集成向量化演示 扩展矢量工作流,以包括基于技能的自动化,用于数据分块和嵌入。

加速器

加速器是一种端到端的解决方案,其中包括可用于特定场景下改编的代码和文档,以便您实现自己的应用。

示例 说明
search-qna-maker-accelerator 结合了 Azure AI 搜索和 QnA Maker 的解决方案。 请参阅实时演示网站

演示

演示存储库为演示中显示的示例或方案提供概念证明源代码。 与加速器不同,演示解决方案不设计用于适应。

示例 说明
covid19search 基于 Azure AI 搜索的 Covid-19 搜索应用的源代码存储库。
AzureSearch_JFK_Files 基于 Azure AI 搜索的 JFK 文件解决方案的源代码存储库。

其他示例

以下示例也由 Azure AI 搜索团队发布,但未在文档中引用。 关联的README文件提供使用说明。

示例 说明
检查存储使用情况 使用 Azure 函数按计划检查搜索服务存储。
export-data 使用 C# 控制台应用对大型索引进行分区和导出。
索引备份恢复 将索引从一个服务复制到另一个服务,使用索引架构和文档创建 JSON 文件。
data-lake-gen2-acl-indexing 使用 Microsoft Entra ID 和基于角色的访问控制进行保护,为 Azure Data Lake Gen2 文件和文件夹建立索引。
multiple-search-services 查询多个搜索服务并将结果合并到单个页面中。
搜索聚合 从索引提取并筛选聚合。
Azure 搜索强劲技能 将可用的自定义技能纳入您自己的解决方案。