RAG-Stack:协同优化RAG服务性能与质量

arXiv cs.AI 论文

摘要

本文介绍了RAG-Stack,一个通过高效探索算法-系统联合配置空间来协同优化RAG服务性能与答案质量的框架。它找到的Pareto前沿比现有配置搜索方法覆盖了显著更广的质量-性能空间。

arXiv:2608.03487v1 公告类型:cross 摘要:检索增强生成(RAG)利用从数据库检索到的信息来增强大语言模型(LLM)的生成,已成为知识密集型应用广泛使用的方法。然而,现代RAG系统暴露了许多配置选择,例如检索索引、模型选择以及模型如何调用检索。每种配置在答案质量和服务性能之间产生不同的权衡,使得为特定应用部署选择最优设置变得具有挑战性。我们提出了RAG-Stack,一个用于在不同RAG应用和服务系统中高效发现质量-性能Pareto前沿的框架。RAG-Stack由RAG-PE(一种迭代式设计空间探索算法,用于选择下一个要评估的RAG配置)、RAG-IR(多种RAG算法的工作负载抽象)和RAG-CM(一个预测给定硬件上最优部署和服务性能的性能模型)组成。这些组件共同使RAG-Stack能够在不部署每个候选的情况下搜索算法-系统联合配置空间,并将现有的Pareto前沿迁移到新的服务系统。在相同数量的优化迭代下,跨不同数据集,RAG-Stack找到的Pareto前沿覆盖的归一化质量-性能空间比在相同RAG设计空间上评估的最先进配置搜索方法所找到的多52.5%至153.2%。
查看原文
查看缓存全文

缓存时间: 2026/08/06 07:44

# RAG-Stack:协同优化RAG服务性能与质量

Source: https://arxiv.org/html/2608.03487

###### 摘要

检索增强生成(RAG)通过从数据库检索到的信息来增强LLM生成,已成为知识密集型应用中广泛使用的方法。然而,现代RAG系统暴露了许多配置选择,例如检索索引、模型选择以及模型如何调用检索。每种配置都会在答案质量与服务性能之间产生不同的权衡,这使得为特定应用部署选择最优设置变得极具挑战。在本文中,我们提出RAG-Stack,一个能够在多样化的RAG应用和服务系统中高效发现质量–性能帕累托前沿的框架。具体来说,它包含:RAG-PE,一种迭代式设计空间探索算法,用于选择下一个待评估的RAG配置;RAG-IR,一种面向多样化RAG算法的工作负载抽象;以及RAG-CM,一种可预测给定硬件上最优部署与服务性能的性能模型。这些组件共同使RAG-Stack能够在不部署每个候选配置的情况下搜索算法–系统联合配置空间,并将现有帕累托前沿迁移到新的服务系统。在相同数量的优化迭代下,跨多个数据集,RAG-Stack发现的帕累托前沿在归一化质量–性能空间上的覆盖率比在相同RAG设计空间上评估的现有最优配置搜索方法高出52.5%–153.2%。

## 1. 引言

检索增强生成(RAG)利用从外部数据源检索到的信息来增强大语言模型(LLM)(Vu et al., 2024 (https://arxiv.org/html/2608.03487#bib.bib103); Lewis et al., 2020 (https://arxiv.org/html/2608.03487#bib.bib60); Gao et al., 2024 (https://arxiv.org/html/2608.03487#bib.bib35))。通过将模型与数据库结合,RAG解决了纯模型系统的若干局限。首先,RAG可以纳入可能未编码在模型参数中的最新信息(Vu et al., 2024 (https://arxiv.org/html/2608.03487#bib.bib103))。其次,通过将生成过程锚定在检索到的证据上,RAG可以提高事实准确性并减少幻觉(Shuster et al., 2021 (https://arxiv.org/html/2608.03487#bib.bib91))。第三,RAG使模型能够使用预训练时不可用的私有或领域特定语料库(Zhang et al., 2024 (https://arxiv.org/html/2608.03487#bib.bib117); Siriwardhana et al., 2023 (https://arxiv.org/html/2608.03487#bib.bib95))。这些能力共同使RAG成为知识密集型应用中广泛采用的方法(Zhang et al., 2024 (https://arxiv.org/html/2608.03487#bib.bib117); Zhu et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib120); Chen et al., 2024a (https://arxiv.org/html/2608.03487#bib.bib22))。

参见图1。

图1.现代RAG系统包含多样化的模型组件和执行工作流。

尽管RAG的核心思想很简单,但现代RAG系统暴露了一个庞大的设计空间,涵盖(1)流水线组件和(2)执行工作流(图1 (https://arxiv.org/html/2608.03487#S1.F1)),从而在答案质量与服务性能之间产生广泛的权衡谱系。在组件层面,RAG流水线包含检索系统和生成式LLM,还可能包括查询重写和结果重排序等阶段。每个RAG组件都可以引入独特的模型、提示词和阶段特定参数选择。在工作流层面,这些组件既可以编排为*(a) 顺序流水线*,即每个查询都遵循固定的执行顺序,也可以编排为*(b) 智能体流水线*,即基于LLM的控制器动态决定何时检索以及是否需要额外的检索轮次(Li et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib61))。盲目启用每个流水线组件、选择最强大的模型或最大化检索轮数可能会提高答案质量,但也会增加服务成本并降低系统性能(更差的延迟和吞吐量)。在本文中,我们问:如何高效地探索这一质量–性能权衡空间,并在多样化的RAG应用和服务系统中识别帕累托前沿?

然而,为给定的RAG应用和服务系统识别帕累托前沿需要解决三个关键问题。

**(P1) 现有RAG配置探索算法要么忽略跨阶段交互,要么忽视各阶段信号。** 探索RAG配置的一种方法是逐阶段进行:先识别一个阶段的最佳配置,固定该配置,然后优化下一阶段(51 (https://arxiv.org/html/2608.03487#bib.bib73))。然而,最佳端到端配置取决于阶段之间的交互,因此通常无法通过独立优化每个阶段来获得。例如,当强大的重排序器过滤掉不相关段落或长上下文LLM有效利用额外证据时,增大检索top-k可以提高质量;但当没有重排序时,噪声段落到达较弱的生成器,反而可能降低质量。相比之下,全局RAG优化通过以端到端准确性作为优化信号,联合调整所有阶段的参数来捕获这些交互(Barker et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib15))。然而,这种端到端信号无法揭示哪个阶段导致了增益或损失,可能导致探索方向不明确并浪费评估次数。

**(P2) 现有RAG多目标优化器忽视了系统设计空间。** 现有的质量–性能优化器在保持服务部署固定的同时搜索算法配置(Barker et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib15); Ray et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib85)),尽管不同的算法可能需要不同的批处理策略、并行化策略和阶段放置方式才能达到最佳服务性能(Jiang et al., 2025a (https://arxiv.org/html/2608.03487#bib.bib47))。

**(P3) 基于部署的服务性能测量成本高昂,且不能跨系统迁移。** 测量服务性能需要对每个候选配置进行部署和基准测试,而所得的测量结果特定于目标系统(Li et al., 2026 (https://arxiv.org/html/2608.03487#bib.bib68))。当应用被迁移到具有不同硬件的系统时,原始帕累托前沿上的配置可能不再是帕累托最优的,因此需要重复搜索以重建前沿(Lu et al., 2021 (https://arxiv.org/html/2608.03487#bib.bib71); Jamshidi et al., 2018 (https://arxiv.org/html/2608.03487#bib.bib43))。

参见图2。

图2.RAG-Stack及其两种运行模式概览。

为解决这些问题,我们提出RAG-Stack,一个用于在任意RAG应用和服务系统中高效发现质量–性能帕累托前沿的框架(图2 (https://arxiv.org/html/2608.03487#S1.F2))。RAG-Stack从用户处接收四个输入:(1)算法设计空间,(2)新的RAG应用(即评估数据集),(3)包含质量与性能要求的优化目标,以及(4)可用系统资源。RAG-Stack既可以从零开始发现帕累托前沿,也可以通过复用已归档的质量测量结果将现有前沿迁移到新系统。对于新的RAG应用,RAG-Stack通过迭代优化循环发现帕累托前沿。首先,RAG-PE提出一个算法配置,用于在应用数据集上进行质量评估。接下来,RAG-IR抽象已执行的工作流,RAG-CM则在不要求部署到目标系统的情况下,预测该配置在可用资源下的最佳可达服务性能。最后,RAG-PE使用测得的质量和预测的性能来选择下一个配置。该循环持续进行,直到达到用户指定的停止条件或搜索预算。我们现在介绍RAG-Stack中的主要组件。

首先,RAG-PE(PlanExploration)是RAG-Stack的核心多目标贝叶斯优化器。它接收算法设计空间以及先前试验的反馈(包括数据集上的质量测量结果和RAG-CM产生的性能估计)作为输入。其输出是下一个待评估的算法配置,该配置会通过RAG执行路径发送,随后由RAG-IR表示。RAG-PE通过联合优化端到端质量与服务性能,同时利用中间阶段级质量信号引导探索,从而解决P1。

其次,RAG-IR(IntermediateRepresentation)通过将每个RAG算法配置转换为包含工作流模式以及阶段调用和输入/输出大小的执行轨迹的工作负载表示,桥接RAG-PE和RAG-CM。RAG-IR的输出是一种*系统无关的*工作负载表示,它将每个阶段的逻辑工作与其物理部署解耦,使RAG-CM能够探索部署选择并在新硬件上重新估计相同工作负载的性能。RAG-IR与RAG-CM一起解决了P2和P3。

第三,RAG-CM(CostModel)是一个机器学习与解析模型融合的性能模型。它接收RAG-IR产生的工作负载表示、系统设计空间以及用户的可用硬件资源作为输入。然后,它在内部搜索系统设计空间,并将当前RAG配置的最佳预测部署和服务性能返回给RAG-PE,从而有效解决P2。此外,RAG-CM可以在新的硬件配置下重新评估已归档的算法配置,而无需重复其质量评估,从而实现高效的前沿迁移,并进一步解决P3。

我们在RAGEval(Zhu et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib120))和MS MARCO(Bajaj et al., 2018 (https://arxiv.org/html/2608.03487#bib.bib12))上使用两种系统配置评估RAG-Stack:一种配备四块NVIDIA H100 GPU,另一种配备八块NVIDIA A100 GPU。在相同数量的探索迭代下,RAG-Stack发现的帕累托前沿(跨随机种子取平均)在RAGEval和MS MARCO上分别比在相同RAG设计空间上评估的现有最优配置搜索方法多覆盖52.5%和153.2%的归一化质量–性能空间。当将帕累托前沿迁移到新的服务系统时,RAG-Stack复用先前评估中的质量测量结果,只需执行少量额外优化迭代即可发现新前沿。由此得到的适配前沿比在新系统上从零开始重新优化得到的前沿多覆盖182.2%的归一化质量–性能空间。总之,本文做出以下贡献:

- •我们提出RAG-Stack,一个端到端框架,能够针对任意应用和系统高效发现RAG答案质量与服务性能之间的帕累托前沿。
- •我们设计了RAG-PE,一种多目标、子度量感知的贝叶斯优化器,利用端到端和中间信号高效地导航RAG配置空间。
- •我们引入RAG-CM,一种混合机器学习–解析性能模型,能够预测服务性能并在给定硬件上搜索最优部署配置。

## 2. 背景与动机

### 2.1. 用于检索的向量搜索

RAG检索器使用*向量搜索*根据语义相似度而非精确词法重叠来匹配查询与段落。在服务之前,语料段落会被嵌入并建立索引。查询时,检索器嵌入查询并返回最近的已索引段落。精确搜索会扫描整个语料库,并保证在所选度量下返回真正的最近邻,但其扩展性较差。因此,生产系统依赖*近似最近邻*(ANN)索引,这种索引通过剪枝大多数候选来降低延迟并提高吞吐量,但可能会降低召回率,并在错过相关证据时进而降低答案质量。

两个索引家族。ANN索引要么基于聚类,要么基于图。*IVF(倒排文件)家族*基于聚类:它将向量分组为多个列表,对每个查询仅扫描与其最近的少数列表。在该家族中,IVF-Flat保留完整向量,有利于召回率;IVF-PQ将每个向量压缩为短编码以节省内存和带宽;IVF-PQ FastScan利用SIMD友好的内核加速距离计算(Jégou et al., 2011 (https://arxiv.org/html/2608.03487#bib.bib44); Douze et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib29))。*HNSW*基于图:它将向量链接成一个可导航的图,并通过向最近邻贪心行走来回答查询。HNSW通常能在低延迟下达到高召回率,但它需要额外内存来存储图结构(Malkov and Yashunin, 2018 (https://arxiv.org/html/2608.03487#bib.bib72))。

参数在召回率与速度之间权衡。IVF中更大的nprobe或HNSW中更大的eSearch会检查更多候选,以提高召回率为代价增加延迟和降低吞吐量;IVF-PQ减少内存使用,但可能降低召回率。由于最佳选择取决于工作负载和部署方式,FAISS非常适合研究这些权衡:它直接暴露两个索引家族及其CPU/GPU参数(Douze et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib29)),这与Milvus等向量数据库不同,后者的服务层隐藏了许多底层选择(Wang et al., 2021 (https://arxiv.org/html/2608.03487#bib.bib105))。

### 2.2. RAG流水线与服务

RAG流水线由几个阶段构成。两个核心阶段是检索(§2.1 (https://arxiv.org/html/2608.03487#S2.SS1))和生成:检索器在语料库上执行向量搜索,检索到的段落——可选地在查询重写或重排序之后——被放入提示词中,供LLM进行预填充和解码。相同的阶段可以编排成不同的*工作流*。最简单的流水线只检索一次并生成一次。迭代式和主动检索工作流将多轮检索和生成交错进行,以提高答案质量(Asai et al., 2023b (https://arxiv.org/html/2608.03487#bib.bib6))。智能体流水线更进一步:LLM控制器在运行时决定执行哪些阶段、何时检索以及是否迭代(Singh et al., 2026 (https://arxiv.org/html/2608.03487#bib.bib94); Li et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib61); Besta et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib17))。选择组件和工作流本身就是一个质量调优问题,FlashRAG等框架允许用户组装、替换和评估这些流水线以提高答案质量(Jin et al., 2025 (https://arxiv.org/html/2608.03487#bib.bib49))。

提高质量的选择也会增加每个请求的工作量。更大的top-k、增加重排序器、迭代式检索或更大的生成器都有助于答案,但每个都会增加检索工作量、模型调用、提示词token或解码时间。服务阶段则增加第二层选择,这些选择不改变答案,但决定了

相似文章

ScalableRAG:零摄入成本的高质量RAG

arXiv cs.AI

本文介绍了ScalableRAG,一种检索增强生成方法,通过基于正则表达式的集合创建和聚合推理,在无需任何摄入成本(无需向量数据库或知识图谱)的情况下实现高准确率。它在多个数据集上优于基线方法,并提出了一个有限摄入变体以进一步提升准确率。

@ando_w: https://x.com/ando_w/status/2075468963098546520

X AI KOLs Timeline

本文介绍如何将单轮RAG升级为Agentic RAG,通过让LLM自主决定多次检索和调用工具,解决复合问题的多步推理。提供了基于Qwen3.7-Max的代码示例和实现思路。

RAG-Anything:全能型 RAG 框架

Papers with Code Trending

RAG-Anything 是一个全新的开源框架,通过整合跨模态关系和语义匹配来增强多模态知识检索,在复杂的基准测试中表现优于现有方法。

Adaptive Chunking:为RAG优化分块方法选择

Papers with Code Trending

介绍Adaptive Chunking,一个利用五项文档内在指标为RAG选择最佳分块策略的框架,将答案正确率从62-64%提升至72%,并将问题解决率提高超过30%。