RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG) 原创

发布于 2025-9-9 09:44
浏览
0收藏

前文在​​RAG常见13种分块策略大总结(一览表)​​​提到,分块策略在RAG中至关重要,目的是提高效率、相关性和上下文保持。但也会带来冗余。引发长上下文 RAG 应用的效率痛点:

在 RAG 等依赖外部知识的任务(如多轮对话、长文档总结)中,LLMs 需要将检索到的大量段落拼接为长上下文输入,但这会引发两大问题:

  • 高延迟与高内存消耗:长上下文需占用大量键值缓存(KV Cache),且生成第一个token的时间(TTFT,Time-to-First-Token)随上下文长度呈二次方增长,后续token生成时间(TTIT)呈线性增长,导致系统吞吐量显著下降,难以满足Web级检索等低延迟场景需求。
  • 冗余计算严重:RAG 上下文由多个检索段落拼接而成,但其中仅小部分与查询直接相关;且检索段落因多样性或去重处理,语义相似度极低,形成“块对角注意力模式”(即不同段落间的交叉注意力几乎为零)。现有 LLM 解码时会对整个上下文进行全量计算,而这些与查询无关的段落计算大多是不必要的。

下面看下meta的解决思路/目标:在不损失 RAG 任务性能(如回答准确性、困惑度)的前提下,通过针对性优化 RAG 解码过程,大幅降低延迟(尤其是 TTFT)和内存消耗,同时扩展 LLM 的有效上下文窗口

模型架构

该模型由一个仅解码器的LLM(LLaMA)和一个轻量级编码器模型(Roberta )组成。

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

REFRAG架构:输入上下文被分块,并由轻量级编码器处理以生成块嵌入,这些嵌入可预先计算以实现高效重用。一个轻量级强化学习策略决定扩展少数块。这些块嵌入与问题输入的 token 嵌入一起送入解码器。

REFRAG的解码过程分为预处理(离线/在线) 和生成(在线) 两个阶段,完整流程如上。

阶段1:上下文预处理

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

阶段2:解码器生成(带动态扩展)

将“主输入token嵌入((用户的核心输入,如查询q)) + 压缩块嵌入(RAG 检索到的长上下文)”作为解码器输入,生成答案;同时通过RL策略动态扩展关键块,避免压缩导致的信息丢失:

  1. 解码器输入构造
    解码器接收两类输入的拼接序列:

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

  1. RL动态块扩展
    并非所有块都适合压缩(如与查询强相关的块压缩后可能丢失关键信息)。REFRAG通过轻量级RL策略,在解码前或解码中决定:

       a.对低信息块:保留压缩嵌入eicnk,减少计算;

       b.对高信息块:替换为原始块的token嵌入(即“扩展”),确保信息完整。
     RL策略以“下一段预测的困惑度(Perplexity)”为负奖励,学习选择最优扩展块,且扩展不破坏解码器的自回归特性(可在上下文任意位置进行)。

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

  3.答案生成解码器基于处理后的输入序列生成答案:RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区,生成过程与原生LLM完全一致,无需修改解码器架构。

训练方法逻辑概述

REFRAG 不修改基础 LLM 解码器架构,通过 “预训练 + 微调” 让解码器学会理解和利用编码器生成的压缩块嵌入。

  • 对齐阶段:通过 “重建任务” 让编码器生成的块嵌入能准确还原原始上下文,同时让投影层将块嵌入映射到解码器兼容的维度(解决 “压缩后信息丢失” 问题)。
  • 优化阶段:通过 “课程学习” 降低训练难度,让模型从单块重建逐步过渡到多块处理,避免直接训练长序列导致的优化困难(解决 “多块压缩难以收敛” 问题)。
  • 适配阶段:通过 “RL 选择性压缩” 动态决定哪些块保留原始 token(扩展)、哪些用压缩嵌入(压缩),在保证性能的前提下最大化效率(解决 “全量压缩可能损失关键信息” 问题)。

实验

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

RAG长上下文加速解码策略-meta基于RAG的解决思路浅尝(REFRAG)-AI.x社区

REFRAG: Rethinking RAG based Decoding,https://arxiv.org/pdf/2509.01092


本文转载自​​大模型自然语言处理​​​   作者:llmnlp

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
收藏
回复
举报
回复
相关推荐