生成式人工智能/大语言模型

使用重排序微服务提升信息检索准确性和降低成本

需要高性能信息检索的应用涉及各个领域,包括搜索引擎、知识管理系统、AI 代理和 AI 助手。这些系统需要准确且计算高效的检索流程,以提供精确的见解、增强用户体验并保持可扩展性。检索增强生成 (RAG) 用于丰富结果,但其有效性从根本上取决于底层检索机制的精度。

基于 RAG 的系统的运营成本由两个主要因素驱动:计算资源和检索精度欠佳导致的不准确成本。应对这些挑战需要在不影响性能的情况下优化检索工作流。重新排序模型有助于提高检索准确性并降低总体支出。然而,尽管有可能对模型进行重新排序,但由于担心信息检索工作流程会增加复杂性和感知到的边际收益,这些模型一直未得到充分利用。

在本文中,我们公布了 NVIDIA NeMo Retriever 重排序模型的重大性能进步,展示了它如何重新定义计算相关性得分在现代流程中的作用。通过详细的基准测试,我们将重点介绍成本 – 性能权衡,并展示灵活的配置,这些配置能够满足从轻量级实现到企业级部署等各种应用程序的需求。

什么是重新排序模型?

重排序模型 通常称为重排序器或交叉编码器,是一种旨在计算两个文本之间相关性分数的模型。在 RAG 环境中,重排序模型评估一段落与给定查询的相关性。有些方法只使用嵌入模型,为每个段落生成独立的语义表示,并依靠启发式相似度指标 (例如余弦相似度) 来确定相关性,而重排序模型则会直接比较同一模型内的查询通道对。这一次只创建一段文字的语义表示,然后使用启发式指标来衡量相关性。重排序模型评估一段落与给定查询的相关性。

通过同时分析查询和通道之间的模式、上下文和共享信息,重新排序模型可提供更细致、更准确的相关性评估。这使得交叉编码器在预测相关性方面比使用嵌入模型的启发式分数更准确,因此成为高精度检索工作流的关键组件。

Graphic showing that embedding models generate a semantic representation of text that can then be used to calculate similarity by measuring the distance between two vectors. Reranking models implicitly generate a similarity score.
图 1、关于嵌入模型和重排序模型如何计算语义相似性的高层次概念视图

使用交叉编码器为整个语料库中的每个查询通道对生成相关性分数,计算成本高昂。为解决此问题,我们通常分两步流程使用交叉编码器(图 2)。

在第一步中,使用嵌入模型创建查询的语义表示,然后使用该表示将潜在候选项从数百万个缩小到一个较小的子集,通常是数十个段落。在第二步中,交叉编码器模型会处理这些入围候选项,并对其进行重新排序,以生成最终的高度相关集–通常只有五个段落。这种两阶段工作流程平衡了效率和准确性,使交叉编码器成为重新排序模型的重要工具。

Graphic showing use of the embedding model to select candidates from the entire vector database. These candidates are reranked by a reranking model to obtain the most relevant chunks.
图 2. 在 RAG 管道中一起使用嵌入模型和重新排序模型的一般两步式工作流

重新排序模型如何改善 RAG?

与使用嵌入或重新排序模型相比,运行 大语言模型 (LLM) 的计算成本要高得多。这种成本直接随 LLM 处理的 token 数量增加。RAG 系统使用检索器获取最重要的 N 个相关信息块 (通常为 3 到 10 个),然后使用 LLM 根据这些信息生成答案。增加 N 的值通常需要在成本和准确性之间做出权衡。N 越高,检索器包含最相关信息块的可能性就越大,但同时也会增加 LLM 步骤的计算成本。

检索器通常依赖于嵌入模型,但将重新排序模型整合到 pipeline 中可提供三个潜在优势:

  • 最大限度地提高准确性,同时降低运行 RAG 的成本,以抵消重新排序模型的影响。
  • 保持准确性,同时大幅降低运行 RAG 的成本。
  • 提高 RAG 的准确性并降低运行 RAG 的成本。

有人可能会问,如何使用重新排序模型来实现这些结果?关键在于高效利用两步检索过程。增加第二步中用于重新排序的候选项数量可提高准确性。然而,这也会增加所产生的成本,尽管与 LLM 相比微不足道。正确看待问题:与使用 NVIDIA NIM 微服务构建的 NeMo Retriever Llama 3.2 重排序模型 相比,Llama 3.1 8B 模型处理五个数据块并生成答案的成本约高出 75 倍。

重排序模型统计数据

在了解相关前提后,本节将深入探讨性能基准测试。需要理解三个数字,才能消化以下信息:

  • N_Base: RAG pipeline 在不重新排序的情况下使用的 chunks 数量(Base Case)。
  • N_Reranked:RAG pipeline 在重新排序时使用的 chunk 数量。
  • K:在第 2 步中使用重新排序过程进行排名的候选人数量。

使用这三个变量,形成三个方程,作为所有三个场景的基础:

  • 方程 1: N_Reranked <= N_Base
  • 方程 2:RAG_Savings = LLM_Cost(N_Base) – (Reranking_Cost(K) + LLM_Cost(N_Reranked))
  • 方程 3:Accuracy_Improvement = Reranking_Accuracy_Boost(K) + Accuracy(N_Reranked) – Accuracy(N_Base)

最大限度地提高准确性,同时降低运行 RAG 的成本,以抵消重新排序模型的影响

此场景的目标是最大限度地提高准确性,同时将 RAG 节省的成本降至零。因此,方程 2 需要最大化 K,最大化 N_Reranked,并针对给定的 N_Base。这些最大化需要通过遵循方程 3 并在方程 1 中将 RAG_Savings 设置为 0 来实现。

插入 NVIDIA NIM 中的值可得到图 3 中总结的结果。Base Accuracy 是指具有 N_base 个 chunk 的管道的准确性,而 Improved Accuracy 是指使用 N_base-1 个 chunk 和一个 reranking 模型来实现管道的准确性。

Bar chart comparing Base Accuracy and Improved Accuracy showing that adding a reranking model improves accuracy across the board for a wide range of chunks for Llama 3.1 70B model.
图 3、对于使用 Llama 3.1 70B 模型的 RAG 工作流,使用和不使用重排序模型的检索系统的准确性

保持准确性,同时降低运行 RAG 的成本

此场景的目标是最大限度地节省成本,同时不会对准确性造成不利影响。看看方程 1。为了最大限度地节省 RAG,对于给定的 N_Base,我们需要最小化 K 和 N_Reranked。要执行此操作,请将准确性改进设置为 0,并在处理 N_Base 数据块时平衡 K 和 N_Reranked 以匹配准确性。平衡这些变量会得到图 4 所示的结果。

Bar chart showing that adding a reranking model reduces the cost of RAG by reducing the number of chunks.
图 4、为使用 N_Base 数据块的 Llama 3.1 70B 模型运行 RAG 工作流的成本可以通过减少使用的数据块数量并使用重新排序模型弥补准确性损失来降低

提高准确性并降低运行 RAG 的成本

在滑块上,前两个场景可视为两个极端。一个极端是最大限度地降低成本,另一个极端是最大限度地提高准确性。用户可以选择增加或减少要减少的 chunks 数量以及要重新排序的 chunks 数量,以在两个极端之间保持平衡。

使用 NVIDIA NeMo Retriever 升级您的 RAG 系统

重排序模型不仅是可选的增强功能,还是对 RAG 流程的变革性补充,将效率和精度提升到新的水平。 NVIDIA NeMo Retriever 重排序 NIM 微服务 通过在降低成本和提高准确性方面提供显著优势,重新定义了范式。基准测试表明,显著节省了 21.54% 的成本。

重新排序模型配置的灵活性使开发者能够在成本效益和性能提升之间实现理想的平衡,满足任何组织中不同的用例和可扩展性需求。其优势主要在于降低了 RAG 的生成成本。通过减少 LLM 为生成答案而必须处理的输入 token 数量,可以降低成本。

这些结果对将重新排序模型视为复杂性微不足道的改进的过时看法提出了挑战,展示了它们在优化现代机器学习工作流程中的重要作用。

要立即开始使用此 NeMo Retriever Llama 3.1 重排序 NIM 微服务并升级您的 RAG 系统,请在 build.nvidia.com 上试用。您还可以访问 NVIDIA AI Blueprint for RAG ,作为使用 NVIDIA NIM 构建的 embedding 和 reranking 模型构建自己的 pipeline 的起点。

与我们一起参加 NVIDIA GTC 2025 ,探索用于构建检索工作流和代理工作流的最新技术,这些技术可以在您的数据中发现快速、准确的见解。查看以下相关会议:

 

 

标签