BeaconKV:信标查询引导的大型推理模型KV缓存压缩 BeaconKV: Key-Value Cache Compression Guided by Beacon Queries for Efficient Large Reasoning Model Inference
利用全局查询的聚类几何结构,用信标查询预判思维回看,保留关键KV缓存并实现5.8倍显存压缩
前置知识
KV缓存
Transformer 自回归解码时,每生成一个 token 都要将其 Key、Value 向量存入缓存,后续每步解码只需计算新 token 的 query,与缓存中所有 key 做注意力再聚合 value,避免重复前向计算。缓存容量与已生成长度线性增长:$N$ 个 token、$d$ 维隐层的模型,所有层累积的缓存可达数十 GB。
本文要解决的核心对象就是 KV 缓存,LRM 长思维链使其爆炸式增长,理解缓存的线性增长机制是理解显存瓶颈和压缩动机的前提。
RoPE(旋转位置编码)
RoPE 通过对 query 和 key 施加与绝对位置相关的旋转矩阵,把相对位置信息注入注意力分数 $ ext{softmax}(q_ik_j^\top/\sqrt{d})$。pre-RoPE 查询指施加旋转前的向量,只含内容语义、不含位置信息。
BeaconKV 特意在 pre-RoPE 查询空间做聚类与 FPS 采样,以隔离内容语义与位置效应;之后又可灵活地把信标查询旋转到当前步 $t$、把近期查询保留在原位置,这一差异化位置对齐是方法的关键机制。
GQA(分组查询注意力)
GQA 让多个 query 注意力头共享同一组 KV 头,从而成倍缩小 KV 缓存容量,是 Qwen3 等现代推理模型的标准配置。评分或聚合时通常以共享的 KV 头组为单位操作。
BeaconKV 的打分在每个 GQA 组内对所有查询头做 max 聚合,且信标查询按头维护;理解 GQA 的头分组结构才能看懂其评分公式 $ ext{Score}[j]=\max_{h\in g}\max_{q}W[h,q,j]$ 与内存开销讨论。
LRM 与长思维链(CoT)
大型推理模型(如 DeepSeek-R1、Qwen3)经强化学习训练出长思维链能力,生成数千到数万 token 的推理轨迹后才给出答案,在数学、代码、科学推理上表现远超普通 LLM。
长 CoT 既是 LRM 能力的来源,也是 KV 缓存爆炸的根源;论文观察到的 Thought Revisiting Tokens 现象正发生在长推理轨迹中,是全文论证的出发点。
最远点采样(FPS)
FPS 是一种贪心多样性采样:先选平均余弦相似度最低的点作种子,之后每轮选与已选集合相似度最小(最远)的点加入,保证选出的子集在嵌入空间中几何覆盖均匀。
BeaconKV 用 FPS 从历史查询中挑选几何多样的代表作为信标查询,并把它改造成有界内存的在线版本 Continual FPS,是方法的核心算法组件。
研究动机
LRM 依靠延伸的思维链取得优异推理能力,但 KV 缓存随生成长度线性增长,形成严重显存瓶颈:例如 Qwen3-4B 生成 32K token、batch size 为 16 时,仅 KV 缓存就超过 77GB,几乎占满一张 80GB A100。现有压缩方法(RPC、R-KV、SnapKV、H2O 等)在触发驱逐时,用最近 $N_{obs}$ 个查询的注意力权重(取 max 或 mean 聚合)估计各 KV 对的重要性,隐含假设「最近查询是未来注意力模式的可靠代理」。作者发现该假设在长程推理中失效:推理轨迹中存在 Thought Revisiting Tokens(TRT)——某些解码步生成的 token 会重新关注远处的早期上下文,例如推理开头 formulated 的解题计划和题目约束,以维持全局一致性。由于触发 TRT 的全局查询零星、跨层跨头、不可预测地出现,而近期查询几乎都是只看邻近位置的局部查询,基于近期查询的方法会系统性地把未来会被 TRT 重访的远距离 KV 对提前永久驱逐,导致模型丢失关键推理线索、在受限缓存预算下准确率大幅下降。
本文的目标是本文的目标是设计一种无需训练、不改动模型架构的 KV 缓存压缩方法,使其能够在不保存完整查询历史的条件下,预判未来的全局查询(即 TRT)会重访哪些远距离 KV 对,从而在激进压缩时保留「思维回看」通路。具体量化目标包括:在 R1-Distill-Qwen-7B、R1-Distill-Llama-8B、Qwen3-4B、Qwen3-14B 四个开源 LRM 上,于 AIME24、MATH-500、LiveCodeBench、GPQA-Diamond 四个推理基准的各档缓存预算(128~4096 token)下,准确率超越 RPC、R-KV、SnapKV 等最强压缩基线;同时大幅降低峰值显存(目标 5 倍以上)、提升吞吐(4 倍以上),使 LRM 能在单卡受限显存下以更大 batch 部署长程推理。
与已有工作不同的是,本文的独特切入角度是把注意力从「键空间的统计」转向「查询空间的几何」。以往工作要么用近期查询的注意力打分(RPC、SnapKV),要么用键的冗余度/相似度(KeyDiff、R-KV),要么观察注意力模式的重复出现(LazyEviction)。作者则系统分析了触发 TRT 的全局查询在 pre-RoPE 嵌入空间中的分布,发现它们彼此余弦相似度高、与周围的局部查询相似度低,并通过 PCA 可视化确认其聚成少数几个相似组(如 token 1068 与 1090 两个 TRT 落在同一簇)。这一几何结构意味着:未来才会出现的、多样的全局查询,可以由一小簇「信标查询」——每个全局查询簇的几何代表——提前紧凑表示。于是「预测未来注意力」这个看似困难的问题被转化为「用信标做几何覆盖」这一可在线求解的问题,这是与所有已有方法的本质区别。
核心方法
直觉上,推理轨迹中被反复回看的关键上下文(题目约束、解题计划)一定会被未来的全局查询重访;如果能在驱逐时知道这些全局查询「大致朝哪个方向」,就能给对应的远距离 KV 对打高分、避免误删。BeaconKV 的技术路线分三步。第一步,在线维护信标查询:每个注意力头保留一个有界缓冲区,收集解码过程中产生的 pre-RoPE 查询,缓冲区从 $B_{min}^Q=16$ 填到 $B_{max}^Q=32$ 时触发一次 FPS 压回 16 个(「填-压」循环,即 Continual FPS),使 16 个信标持续覆盖整个推理轨迹的查询几何。第二步,构造观测查询集:缓存触发驱逐时,$Q_{obs}$ 由信标查询和最近 16 个查询组成——信标查询用 RoPE 对齐到当前解码步 $t$(模拟「如果现在发生 TRT 会看哪里」),近期查询保留原生成位置 $\tau$ 以维持局部注意力信号。第三步,max 聚合打分并驱逐:用 $Q_{obs}$ 对当前缓存计算注意力权重 $W\in\mathbb{R}^{|Q_{obs}|\times L}$,在 GQA 组内对所有头与所有观测查询取最大值作为每个 KV 位置的分数,无条件保留前缀 token 和最近 token,其余预算按分数 Top-K 填满,剩余 KV 对全部驱逐。
核心创新点是「信标查询」这一概念:TRT 对应的全局查询在 pre-RoPE 空间中聚成少数相似组,因此用 FPS 选出的每簇代表就能以极小代价(每头仅 16~32 个向量)覆盖未来所有 TRT 的注意力方向,无需存储完整查询历史。与已有方法的本质区别有三:其一,RPC/R-KV/SnapKV 的观测窗口只含驱逐时刻紧邻的近期查询,天然由局部查询主导,对零星出现的全局查询视而不见,而 BeaconKV 把观测窗口扩展为「历史几何地标 + 近期查询」,同时覆盖全局与局部两种注意力模式;其二,LazyEviction 等方法依赖注意力重要性模式重复出现这一统计规律,BeaconKV 则利用查询空间的几何结构,是对现象更底层、更鲁棒的刻画;其三,差异化 RoPE 对齐——信标被旋转到当前步 $t$、近期查询保留原位——使得同一观测集能同时回答「现在发生 TRT 会看什么」和「局部连贯性需要什么」两个问题,这是已有方法都不具备的机制。
方法步骤详情
完整流程如下(详见论文算法 2)。(1)Prefill:全部 prefill KV 对装入缓存,每个注意力头对 prefill 的 pre-RoPE 查询做一次 FPS,压到 $B_{min}^Q=n_{beacon}=16$ 个作为初始观测集,信标集与近期集置空。(2)解码累积:每个新 token 的 pre-RoPE 查询加入观测集;当 $|Q_{obs}|\geq B_{max}^Q=n_{beacon}+n_{recent}=32$ 时,执行 $Q_{obs}\leftarrow\text{FPS}(Q_{obs},B_{min}^Q)$ 压回 16 个——这就是 Continual FPS 的填-压循环,内存有界且持续吸收新查询模式。(3)信标固化:当缓存长度达到 $B_{max}^{KV}-n_{recent}$ 时,当前观测集经 FPS 固化为信标查询,其后的 $n_{recent}=16$ 个查询作为近期查询单独保存(连同位置 $\tau$)。(4)驱逐打分:缓存达到 $B_{max}^{KV}$ 时,构造 $Q_{obs}=\{\text{RoPE}(q,t)\mid q\in Q_{beacon}\}\cup\{\text{RoPE}(q,\tau)\mid q\in Q_{recent}\}$,计算注意力权重后取 $\text{Score}[j]=\max_{h\in g}\max_{q\in Q_{obs}}W[h,q,j]$。(5)选择保留:恒保 $I_{keep}=\{1,\dots,n_{prefix}\}\cup\{L-n_{recent}+1,\dots,L\}$(前缀+最近 token),剩余预算 $B_{min}^{KV}-|I_{keep}|$ 按分数 Top-K 填充并按位置排序回写缓存。(6)滚动更新:驱逐后把保留的信标与近期查询合并、再做 FPS 压回 $B_{min}^Q$,信标/近期集清空,进入下一轮。缓存预算满足 $B_{min}^{KV}=\frac{7}{8}B_{max}^{KV}$,即每次驱逐 $\frac{1}{8}$ 的输出 token。
技术新颖性
技术新颖性体现在四个层面。(a)现象学发现:首次系统刻画 LRM 推理中的 TRT 现象,用「query 位置与 top-$K$($K=150$)attended key 位置的平均距离是否超过 200」把查询定量分为局部/全局两类,并证明全局查询跨多层多头普遍出现(Figure 3),不是某个头的孤立行为。(b)几何洞察:证明全局查询在 pre-RoPE 空间低熵聚类(对邻近查询余弦相似度低、彼此相似度高、PCA 投影成少数簇),把「预测未来注意力」重构为查询空间的几何覆盖问题,这是理论视角上的创新。(c)算法工程:Continual FPS 是首个面向推理流式的有界内存在线 FPS 变体,克服了 Naive FPS 需要在 GQA 模型上保存海量查询头的显存问题;Figure 7 显示其精度与离线理想采样(K-Means、Naive FPS)相当,而查询历史占用远小于后者。(d)系统属性:全程 training-free、不引入额外记忆模块、不改架构,与需要蒸馏/微调门控的 TRIM-KV、LightThinker、FastKVzip 形成鲜明对比,也不同于把缓存留在显存里只做稀疏注意力计算的 Quest/Multipole Attention 一类方法。
实验结果
准确率方面(Figure 8):在 4 个模型 × 4 个基准 × 多档预算(128~4096)的网格中,BeaconKV 几乎在所有配置下准确率最高,且预算越紧优势越大;相对现有压缩方法的最大提升达 31.7 个百分点(Qwen3-14B、AIME24、预算 1024)。归因实验(Table 3):与「Initial+Recent」基线(保留开头查询+近期查询)在预算 1024 下对比,Qwen3-14B 的 AIME24 为 57.92% 对 23.75%(+34.17 点)、MATH-500 为 84.20% 对 67.30%、GPQA-Diamond 为 61.11% 对 60.23%、LiveCodeBench 为 49.46% 对 40.23%;R1-Distill-7B 的 AIME24 为 39.17% 对 20.42%,说明收益来自持续捕捉演化中的全局查询模式,而非仅仅保住推理开头。效率方面(Table 4,Qwen3-4B、32K 生成、单张 A100 80GB):Full KV 在 batch 14 时峰值显存 77.0GB、吞吐 82.3 tokens/s、解码延迟 5573.4s、LCB 准确率 54.4%;BeaconKV(2K 预算)把峰值显存压到 13.3GB(5.8 倍降低)、吞吐升至 356.4 tokens/s(4.3 倍)、延迟降到 1287.3s,准确率仍达 51.1%,几乎无损。同预算对比:2K 预算 batch 192 时与 RPC 吞吐(704.8 对 725.4)和显存(79.3 对 79.0GB)相当,LCB 准确率 +6.3 点(51.1% 对 44.8%);1K 预算 batch 320 时 +12.3 点(42.2% 对 29.9%)。与 SnapKV 对比(Table 5,同设置):SnapKV 仅 30.9%、RPC 29.9%、BeaconKV 42.2%,且解码延迟仅增加约 2.6%(7790.9s 对 7593.7s)。消融(Table 1):(16,16) 的信标/近期配置取得最佳权衡(64.6% 准确率、4355.7s),过度偏信标如 (1,31) 准确率 63.5% 但延迟暴涨到 10871.3s;消融聚合方式(Table 2):Max 整体优于 Mean,低预算差距更大(256 预算下 23.3% 对 18.8%),验证了 TRT 信号稀疏而高幅、Max 保真、Mean 稀释的假设。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| AIME24(Qwen3-14B,KV预算1024) | pass@1 准确率 (%) | 57.92 | 现有最优压缩基线约 26.2;Initial+Recent 为 23.75 | 最高 +31.7 个百分点 |
| AIME24(Qwen3-4B,KV预算2048) | pass@1 准确率 (%) | 64.6(信标/近期=16/16) | RPC(32 近期查询)51.3 | +13.3 个百分点 |
| LiveCodeBench(Qwen3-4B,KV预算1K,batch 320,32K生成) | pass@1 准确率 (%) | 42.2 | RPC 29.9 / SnapKV 30.9 | +12.3 个百分点 |
| 峰值显存(Qwen3-4B,2K预算,batch 14,32K生成) | GPU 峰值内存 (GB) | 13.3 | Full KV 77.0 | 5.8× 降低 |
| 吞吐(Qwen3-4B,2K预算,batch 14,32K生成) | 吞吐 (tokens/s) | 356.4 | Full KV 82.3 | 4.3× 提升 |
| MATH-500(Qwen3-14B,KV预算1024) | pass@1 准确率 (%) | 84.20 | Initial+Recent 67.30 | +16.9 个百分点 |
局限与改进
作者在附录 C 中承认两点局限:其一,评估集中在开源 LRM 的长程推理任务,BeaconKV 在非推理型长上下文任务(长文档检索、文本摘要、通用长文生成)上的有效性尚未验证,性能增益能否泛化到更广负载仍需实验;其二,方法含多个超参(信标查询数、近期查询数、KV 缓存预算),主实验采用固定配置($n_{beacon}$ 上限 32 下限 16、$n_{recent}=16$),最优设置可能随模型与任务变化,超参敏感性分析与推理中自适应调整策略留待未来。我自己的观察还有几点:Table 1 显示信标比例过高时延迟显著恶化((1,31) 达 10871.3s,约为 RPC 的 2.6 倍),说明观测集注意力打分有明显额外计算;TRT 的定量判定依赖 $K=150$、平均距离阈值 200 等启发式,换模型可能需要重新标定;Table 3 中 GPQA-Diamond 提升很小(Qwen3-4B 50.25 对 49.87),暗示知识密集型任务的全局回看模式与数学/代码不同;此外论文未讨论信标机制与 PagedAttention 等显存分页系统的 kernel 级融合,以及逐头维护 FPS 缓冲在极大 batch 下的工程开销。
独立分析的弱点
独立分析出以下弱点,并附改进方向。(1)信标更新与 TRT 出现解耦:Continual FPS 每 16 个新查询触发一次压缩,是固定节奏而非事件驱动;若推理风格突然切换(从局部计算转入大范围回顾),信标可能滞后于真实全局查询分布——可引入在线 TRT 检测器(如注意力距离实时监控),检测到全局查询时立即触发 FPS 刷新。(2)Max 聚合对噪声敏感:单个信标或单头的注意力尖峰即可决定一个 KV 对的存留,易受采样温度与注意力噪声影响——可用带权软最大(如 log-sum-exp)或对高置信查询加权,在保真与稳健间折中。(3)GQA 组内冗余:多个查询头共享同一组 KV,却各自独立维护 16 个信标,存在向量级冗余——组内共享信标集或做跨头聚类可进一步压缩查询开销。(4)任务偏科:数学/代码收益大,GPQA 等知识型任务收益微弱,说明需针对不同推理类型设计差异化信标策略,例如按任务自适应分配 $n_{beacon}$。(5)未与稀疏注意力叠加:BeaconKV 只做缓存驱逐,注意力计算仍对保留集合全量进行,与 Quest/ReSA 类稀疏注意力正交,二者结合有望同时压缩显存与计算量,论文未探索这条乘法式加速路线。
未来方向
作者提出的方向包括:在非推理长上下文任务(检索、摘要、通用生成)上系统验证方法泛化性;对信标数、近期数、缓存预算做系统的敏感性分析;以及开发自适应压缩策略,让信标查询数量和 KV 预算在生成过程中按需动态调整,而非全程固定。基于本文成果还可延伸:其一,把信标查询作为推理动态的诊断工具——信标簇的数量与迁移轨迹刻画了模型的「回看结构」,可用于分析 LRM 的验证-回溯循环、比较不同模型的推理风格;其二,与显存分页系统(PagedAttention)和稀疏注意力(Quest、ReSA)做系统级联合优化,把信标打分融合进 attention kernel,消除驱逐步的额外延迟;其三,推广到多模态推理模型与投机解码管线,研究视觉 token 与草稿 token 是否也呈现 TRT 式回看;其四,探索半监督或轻量训练版信标选择器,用少量数据学习比 FPS 更贴合任务的查询采样策略,同时保持对分布外的鲁棒性。
复现评估
可复现性总体较好。论文是 ICML 2026(PMLR 306)正式接收论文,附录 D 给出了 FPS(算法 1)与 BeaconKV(算法 2)完整伪代码,包括缓冲区阈值、RoPE 对齐方式、打分公式与保留集合的精确构造;实验设置披露充分:四个模型均为开源权重(R1-Distill-Qwen-7B、R1-Distill-Llama-8B、Qwen3-4B、Qwen3-14B),采样参数为 top-p 0.95、温度 0.6、最大生成 32768 token,AIME24 报告 8 次运行平均 pass@1、其余基准 4 次平均,四个基准(AIME24、MATH-500、LiveCodeBench、GPQA-Diamond)全部公开可下载,基线 RPC、R-KV、SnapKV 均有公开实现。需要注意的复现门槛:效率实验需要 A100 80GB 级 GPU(batch 320 × 32K 生成的开销不小);Continual FPS 逐头缓冲与 GQA 组内 max 聚合需要修改推理框架(vLLM 或 HF generate)内部逻辑,工程量中等;正文中未明确给出官方代码开源链接,需自行实现。中等难度:熟悉推理框架的研究生可在数周内复现核心结果。
论文图表
(a) 展示第 18 层第 16 头中各查询对缓存 key 的注意力权重分布:多数查询(如 token 1066~1092)集中在邻近 key(约 900~1092),而 token 1068 和 1090 的注意力转向远处的 key(约 100~450);(b) 展示局部与全局查询的「注意力距离」(query 位置与其 top-K attended key 位置的距离)分布,局部查询集中在零附近,全局查询分布明显分离且覆盖大范围 key 位置。
这是 TRT 现象最直接的可视化证据,一图定义了局部/全局查询两类注意力模式,是整篇论文论证链条的起点,读者必须先看懂这张图才能理解后续所有设计。
把 AIME24 推理轨迹的实际文本与四个查询(局部查询 1089/1091、全局查询 1068/1090)的 top-K 注意目标叠加展示:局部查询关注正被计算的邻近步骤,全局查询回看开头的题目约束(Aya 散步问题)与解题计划,全文版见附录 Figure 9。
把抽象的注意力统计落到具体 token 语义上,证明 TRT 重访的确实是「题目约束/解题计划」这类推理关键内容,直接支撑「这些 KV 对被误删会伤推理质量」的核心论点。
统计输出 token 512~639 区间内全局查询在各层×各头的出现次数热力图:全局查询在多个层和多个头都以不同频率出现,而非集中在某一层或某个头(判定标准见附录 B:top-K 中 K=150、平均注意力距离阈值 200)。
说明 TRT 是跨层跨头的普遍现象而非孤立组件的行为,从而论证信标查询必须逐头维护、方法设计具有普遍必要性。
(a) 展示解码区间内查询间的 pre-RoPE 余弦相似度矩阵:相邻查询彼此高度相似(局部查询主导),而 1068、1090 两个全局查询与周围相似度显著偏低却彼此高度相似;(b) 把低平均相似度的查询投影到 PCA 二维空间,显示全局查询聚成少数相似组,1068 与 1090 落在同一簇内。
这是「信标查询」概念的经验基础——全局查询数量少且聚类,才能用 FPS 选出的紧凑代表集覆盖未来 TRT;没有这张图,方法的核心假设就悬空了。
附录 E 中的完整 token 级可视化:整条 AIME24 推理轨迹文本上用彩色下划线标出全局查询(1068、1090)与局部查询(1089、1091)各自最关注的 token,全局查询回看开头的题目条件(9 公里散步、速度 $s$ 与 $s+2$ 的两个场景、咖啡店 $t$ 分钟)和解题计划,局部查询只关注附近的计算步骤。
Figure 2 的完整放大版,供想深入核查 TRT 注意力目标语义的读者逐 token 验证,是理解「被保留的关键 KV 到底是什么内容」的最细粒度材料。