你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Cosmos DB 中的检索增强生成 (RAG)

检索增强生成 (RAG) 将大型语言模型 (LLM) 的强大功能与可靠的信息检索系统相结合,以创建更准确且上下文相关的响应。 与仅依赖于预先训练的数据的传统生成式模型不同,RAG 体系结构通过集成实时信息检索增强了 LLM 的功能。 这种增强可确保响应不仅是生成式的,而且是基于最相关的最新可用数据。

Azure Cosmos DB 是支持矢量搜索的操作数据库,是实现 RAG 的绝佳平台。 它能够同时处理单一数据库中的操作和分析工作负载,还具有多租户和分层分区键等高级功能,因此可为构建复杂的生成式 AI 应用程序提供坚实的基础。

使用 Azure Cosmos DB 的主要优势

统一数据存储和检索

Azure Cosmos DB 支持在统一数据库系统中无缝集成矢量搜索功能。 这意味着操作数据和矢量化数据共存,无需单独的索引系统。

实时数据引入和查询

Azure Cosmos DB 支持实时引入和查询,非常适合 AI 应用程序。 该能力对 RAG 体系结构至关重要,因为其数据的新鲜度可能会显著影响生成的响应的相关性。

可伸缩性和全局分发

Azure Cosmos DB 专为大规模应用程序设计,提供全局分发和即时自动缩放功能。 这将确保已启用 RAG 的应用程序能够应对高查询量,并且可以不受用户位置影响而提供一致的性能。

高可用性和可靠性

Azure Cosmos DB 为吞吐量、延迟和可用性提供了全面的 SLA。 这种可靠性将确保 RAG 系统始终能够以最少的故障时间生成响应。

具有分层分区键的多租户

Azure Cosmos DB 通过各种性能和安全隔离模型支持多租户,因此能够更轻松地管理同一数据库中不同客户端或用户组的数据。 此功能对于 SaaS 应用程序特别有用,因为在这类应用程序中,隔离租户数据对于安全性和合规性至关重要。

全面的安全功能

借助内置功能(如端到端加密、基于角色的访问控制 (RBAC) 和虚拟网络 (VNet) 集成),Azure Cosmos DB 可确保数据始终安全。 这些安全措施对于处理敏感信息的企业级 RAG 应用程序至关重要。

使用 Azure Cosmos DB 实现 RAG

提示

有关 RAG 示例,请访问:AzureDataRetrievalAugmentedGenerationSamples

下面是使用 Azure Cosmos DB 生成 RAG 应用程序的简化过程:

  1. 数据引入:在 Azure Cosmos DB 中存储文档、图像和其他类型的内容。 利用数据库对矢量搜索的支持,为矢量化内容编制索引和进行检索。
  2. 查询执行:当用户提交查询时,Azure Cosmos DB 可使用其矢量搜索功能快速检索最相关的数据。
  3. LLM 集成:将检索到的数据传递给 LLM(例如 Azure OpenAI),以生成响应。 Cosmos DB 提供的结构化数据增强了模型输出的质量。
  4. 响应生成:LLM 处理数据并生成全面的响应,然后将该响应传递给用户。