全球绝大多数数据仍未得到充分利用,企业希望通过创建新一波生成式AI应用程序来从这些数据中创造价值,从而产生变革性的业务影响。检索增强生成(RAG)流程是其中的关键部分,使用户能够与大量数据对话,并将手册、政策文档等转换为交互式生成式 AI 应用程序。
然而,企业在实施 RAG 流程时面临一些常见挑战。同时处理结构化和非结构化数据很难,而且处理和检索数据需要大量计算。在 RAG 流程中构建隐私和安全性也很重要。
为了解决这一问题,NVIDIA 和 Oracle 携手合作,展示了 RAG 工作流的多个部分如何利用 Oracle 云基础设施(OCI)上的 NVIDIA 加速计算平台。这项方法可以帮助企业更有效地利用结构化和非结构化数据,从而提高生成式 AI 输出的质量和可靠性。
本文将深入探讨最近在 Oracle CloudWorld 2024 上演示的 RAG 管道的每个组件:
- NVIDIA GPU 可从 Oracle 自主数据库中的大型数据集加速批量生成向量嵌入。
- 借助 NVIDIA cuVS 库加速生成 Oracle Database 23ai AI 向量搜索的向量索引。
- 使用高性能 LLM 推理NVIDIA NIMOCI 上
我们还解释了如何开始使用这些令人兴奋的功能。
使用 NVIDIA GPUs 和 Oracle 自主数据库进行嵌入生成
在当今数据丰富的企业环境中,有效地利用大量文本数据进行生成式AI是提高效率、降低成本,并最终提高生产力的关键。
NVIDIA 与 Oracle 合作,展示客户如何通过 Oracle Machine Learning (OML) Notebooks 在 Autonomous Database 中集成访问 NVIDIA GPUs。这项新发布的功能使 OML 用户能够使用 Python 直接从 Oracle 数据库表将数据加载到 OCI NVIDIA GPU 加速的虚拟机 (VM) 实例中,然后使用 GPU 生成向量嵌入,并将这些向量存储在 Oracle 数据库中,以便使用 AI 向量搜索进行高效搜索。用户可以自动完成 GPU 实例的 provision 和数据的传输,从而实现 Autonomous Database 用户的无缝访问。
加速向量搜索索引和 Oracle Database 23ai
NVIDIA cuVS 是一个开源库,用于 GPU 加速的向量搜索和聚类。cuVS 的关键功能之一是能够显著缩短索引构建时间,这是向量搜索的关键组件。
NVIDIA 与 Oracle 合作,演示了一种概念验证,用于加速 Hierarchical Navigable Small World(HNSW)算法向量索引构建。这展示了 cuVS 如何构建基于图形的索引,该索引在 GPU 上针对速度进行了优化,然后将图形转换为 Oracle 数据库上与 HNSW 兼容的索引。与仅使用 CPU 相比,GPU 与 CPU 搭配使用的最终结果可以加快整体索引生成速度。cuVS 库的一项主要功能是能够将索引创建卸载到 GPU 并部署到 CPU。
快速创建向量索引对于支持大量 AI 向量工作负载至关重要,尤其是在必须处理和刷新大量企业数据以保持开箱即用的 LLMs 根据最新信息进行更新时。在 GPU 上构建 HNSW 索引并将其部署到 Oracle 数据库可以提高 AI 工作负载的性能并降低其成本。
在 OCI 上使用 NIM 进行高性能 LLM 推理
NVIDIA NIM 为跨云、数据中心和工作站的预训练和定制 AI 模型提供用于自行托管 GPU 加速推理微服务的容器。NIM 微服务对于企业高效、安全地部署生成式 AI 模型特别有用。NIM 提供专为 NVIDIA 加速基础架构设计的优化微服务,实现与现有工具和应用程序的顺利集成。
无论是在本地还是在 Kubernetes 托管的云环境中,开发者都可以使用最少的代码快速部署 LLM。NIM 还提供开箱即用的顶级性能,从而降低延迟并提高吞吐量,从而简化实时 AI 部署,同时确保安全的操作。
在 Oracle 云基础设施上部署 NVIDIA NIM 可为企业带来以下主要优势:
- 通过可扩展的低延迟、高吞吐量推理提高TCO
- 借助预构建的云原生微服务缩短上市时间
- 使用自托管模型部署维护应用程序和数据的安全性和控制力
NIM 可以通过两种方式部署在 OCI 上。第一种方式使用 NVIDIA GPU 加速的裸机实例或 VM,这提供了专用服务器访问,以实现强大的隔离和更高的性能。首先,只需登录,创建 NVIDIA GPU 加速实例,并通过 SSH 安全连接。然后,从 NVIDIA API Catalog 下载 NIM,启动 Docker 容器,然后直接从计算实例调用模型。
第二个选项使用适用于 Kubernetes 的 Oracle 容器引擎 (OKE),使用 GitHub 上通过 NVIDIA/nim-deploy 提供的 Helm 图表,在 OCI 上轻松部署、管理和快速扩展容器化应用程序,例如 NIM。
在 Oracle CloudWorld 演示中,我们与 OCI 团队合作,展示了在使用高级并发(批量大小)时,与现有的开源替代方案相比,为 LLM 使用 NIM 如何帮助客户实现更高的吞吐量。这种性能提升在文本生成和翻译用例中尤为明显。
视频 2 在示例端到端 RAG 工作流中展示了这种整体方法,该工作流查询存储在 Oracle Database 23ai 中的 Oracle CloudWorld 2024 会话数据。这是一个示例,展示了开箱即用的 LLM 如何通过托管在 OCI 上的 NVIDIA 加速计算平台从 RAG 工作流中受益。它将具有嵌入和重新排序模型类型的 NeMo Retriever NIM 微服务、Llama 3.1 405B NIM 微服务以及 NVIDIA H100 Tensor Core GPUs 结合在一起。
开始使用
实施端到端 RAG 工作流涉及许多因素。NVIDIA 与 OCI 和 Oracle 数据库团队合作,展示了如何使用 NVIDIA GPUs 和软件加速批量生成向量嵌入、HNSW 索引创建和推理元素。通过关注 RAG 工作流中计算量最大的部分,我们展示了使用 Oracle Database 23ai 和 OCI 的组织如何越来越多地利用 NVIDIA 加速计算平台提供的性能提升。这一整体方法将帮助客户使用 AI 来利用 Oracle 数据库中存储的海量数据。
详细了解 cuVS。要试用 NVIDIA NIM,请访问 ai.nvidia.com 并注册 NVIDIA 开发者计划,以即时访问微服务。你还可以开始在 Autonomous Database、Oracle Database 23ai AI矢量搜索和 Oracle Database 23ai Free 上使用支持 NVIDIA GPU 的笔记。