Loading...
正在加载...
请稍候

《REFRAG: Rethinking RAG based Decoding》研究报告

✨步子哥 (steper) 2025年11月27日 06:06
### **一、研究背景与核心问题** #### **1. RAG系统的瓶颈** - **长上下文处理挑战**:RAG需拼接大量检索段落(通常占输入90%+),导致: - **延迟激增**:TTFT(Time-to-First-Token)随上下文长度呈二次方增长(公式:`TTFT ∝ (24d² + 4ds)lbs / f`)。 - **内存压力**:KV缓存随上下文线性增长(`KV Cache ∝ 4dlb(s+o)`)。 - **计算冗余**:检索段落间语义相似度低(因去重/多样性操作),注意力矩阵呈块对角稀疏结构(图7),传统自注意力计算存在大量无效操作。 #### **2. 现有方案不足** - **通用长上下文优化**(如StreamingLLM、CEPE)未针对RAG的稀疏性设计,无法动态压缩任意位置文本。 - **提示词压缩**(如LLMLingua)依赖启发式规则,且破坏自回归生成结构,不支持多轮对话。 --- ### **二、REFRAG核心技术** #### **1. 架构设计(图1)** - **双模型协同**: - **轻量编码器**(如RoBERTa-Large):将检索文本分块(每块`k`个token),生成压缩嵌入`c_i = M_enc(C_i)`。 - **投影层**:对齐编码器与解码器空间(`e^cnk_i = φ(c_i)`)。 - **解码器**(如LLaMA):接收问题token + 块嵌入,生成答案。 - **关键优势**: - 输入长度从`s`压缩至`s/k`,KV缓存减少`k`倍。 - 支持任意位置压缩("compress anywhere"),兼容多轮对话。 #### **2. 选择性压缩策略(图5)** - **RL策略网络**:动态决定块是否压缩。 - **状态**:块嵌入序列`{c_i}`。 - **动作**:选择保留原始token的块索引`l = {l_j}`。 - **奖励**:负对数困惑度(`r = -log PPL`),使用GRPO优化方差。 - **效果**:仅保留10%关键块(`p=0.1`),性能接近全上下文(表13)。 #### **3. 训练方案** - **课程学习(表8)**: 1. **重建任务**:冻结解码器,训练编码器从块嵌入重建原始token(`x_{1:k} → c_1 → x_{1:k}`)。 2. **渐进式CPT**:从单块重建扩展到多块,逐步增加难度(图6)。 - **微调阶段**:混合压缩/非压缩块输入,适配下游任务。 --- ### **三、实验验证** #### **1. 核心性能(表1-2)** | **模型** | **压缩率** | **困惑度↓** | **TTFT加速** | |----------------|------------|-------------|--------------| | LLaMA-Full | 1× | 1.069 | 1× | | CEPE (SOTA) | - | 1.107 | 8.2× | | **REFRAG16** | 16× | **1.062** | **16.5×** | | **REFRAG32** | 32× | 1.103 | **30.85×** | - **上下文扩展**:支持16倍上下文长度(16384 tokens),困惑度仍低于LLaMA-32K(表2)。 #### **2. RAG任务表现(表3, 图4)** - **相同延迟下**: - **强检索器**:REFRAG16(8段落)比LLaMA(1段落)精度高1.22%。 - **弱检索器**:精度提升1.93%,因压缩上下文可容纳更多相关段落。 - **相同精度下**:TTFT加速5.26倍(10段落场景)。 #### **3. 多轮对话(表4-5)** - **TopiOCQA数据集**:6轮对话中,REFRAG8比LLaMA-FT精度高25.37% vs 19.52%,因压缩避免历史截断。 #### **4. 长文档摘要(表21)** - **相同token预算**: - ArXiv摘要:REFRAG16 Rouge-L达22.66(LLaMA为18.28)。 - PubMed摘要:Rouge-L提升23.07→23.20。 --- ### **四、技术优势总结** | **维度** | **REFRAG创新** | **对比方案局限** | |----------------|----------------------------------|--------------------------------| | **压缩灵活性** | 任意位置块压缩 | CEPE仅支持前缀压缩 | | **计算效率** | TTFT加速30.85×,吞吐提升6.78× | CEPE加速仅8.2× | | **精度保持** | RL策略动态选择关键块 | LLMLingua依赖启发式规则 | | **上下文扩展** | 16倍上下文长度,精度不降 | LLaMA-32K需全量计算,精度下降 | --- ### **五、应用场景与局限** #### **适用场景** 1. **高吞吐RAG系统**:如搜索引擎、智能客服。 2. **多轮知识对话**:历史对话与检索内容混合压缩。 3. **长文档分析**:科研论文/法律文档摘要。 #### **局限性** - **压缩率上限**:`k>64`时性能显著下降(图10)。 - **编码器依赖**:轻量编码器(RoBERTa)在复杂任务中表现受限(图11)。 - **语言支持**:实验仅限英文数据集。 --- ### **六、结论** REFRAG通过**块级压缩**与**RL选择性扩展**,首次实现RAG场景下的高效解码: 1. **系统层面**:TTFT加速30.85倍,内存减少16倍,吞吐提升6.78倍。 2. **模型层面**:支持16倍上下文扩展,在RAG/多轮对话/摘要任务中全面超越LLaMA、CEPE等基线。 3. **工业价值**:为低延迟知识密集型应用(如Meta AI搜索)提供可扩展解决方案。 > **代码开源**:https://github.com/facebookresearch/refrag > **论文版本**:arXiv:2509.01092v2 (2025年10月更新) --- 本报告基于论文实验数据与技术原理,重点突出REFRAG在**稀疏注意力利用**、**动态压缩策略**及**训练范式创新**上的突破,为高效RAG系统设计提供理论依据与实践参考。

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!