特征压缩卡在键重建这一步
长上下文推理受限于键值(KV)缓存:它随上下文长度增长,带来内存压力和内存访问延迟。论文把已有做法归为两类。按 token 压缩的方法减少保留的缓存状态数量,但在激进压缩下直接删除状态会丢失信息,而基于驱逐的方法往往需要先构建完整 KV 再删除,限制了预填充阶段的计算节省。按特征压缩的方法缩小每个 token 的 KV 维度,但压缩后的键通常必须先还原到完整维度,才能施加位置编码(RoPE)。
这个还原步骤正是 SlimKV 要解决的瓶颈。RoPE 依赖位置,一旦键以低秩形式存储,就无法把它并入一个与位置无关的单一投影。论文的核心问题由此而来:沿两个维度同时压缩,能否既避开这一重建开销,又突破单轴压缩的局限?
beacon 状态自带隐式位置线索
SlimKV 建立在基于 beacon 的软压缩之上:它把历史上下文折叠进 beacon 状态,而不是硬删除 token。第一项改动是直接在低秩约束下训练 beacon 的 KV 投影,使每个 beacon 状态既概括历史 token,又形成紧凑的潜空间 KV 表示。第二项改动是按层分配秩,以适配各层低秩程度的差异;它采用带下限约束的等能量准则,λ 设为 0.5,在全局秩预算与每层最低容量之间取得平衡。
更出人意料的发现与位置有关。作者测试了去掉键侧 RoPE 后的效果,发现一种位置不对称性:去掉 RoPE 会同时损害 beacon 键和原始 token 键,但 beacon 记忆 token 的退化要小得多。他们还报告,无 RoPE 的 beacon 状态重建随机字符序列的准确率远高于随机猜测,并将其解读为:在没有显式键侧 RoPE 的情况下,beacon 状态获得了不可忽视的位置线索。这是论文对一项实测现象的自身解释,而非已被证明的机制。
潜空间注意力省去重建步骤
利用这种不对称性,SlimKV 在训练中对 beacon 的 KV 投影施加无 K-RoPE 约束,同时让原始 token 键和所有查询保留 RoPE。beacon 键不再显式施加 RoPE 后,解码改用潜空间注意力:查询被投影到 beacon 的潜空间,注意力分数直接与缓存的潜空间键计算,值也在潜空间聚合后再做上投影。论文把分数写作 (Q' U_K) C_K^T,把值聚合写作 (A C_V) U_V^T,其中查询投影在分组查询注意力分组之后计算。
实际后果是,解码时 beacon 键无需被还原到完整维度。论文还分析了 ALiBi,认为它在代数上与该方案兼容,因为 ALiBi 在查询-键乘积之后才加入位置偏置。这一分析是理论性的;论文报告的实验都在基于 RoPE 的主干模型上进行。
LongBench 增益集中在高压缩比
SlimKV 在 Llama-3.1-8B-Instruct 和 Qwen2.5-14B-Instruct 上评估,主干模型冻结,只训练 beacon 分支的 QKV 投影:先在 0.5B 个 RedPajama token 上预训练,再在 LongAlpaca、BookSum 和合成数据上微调,所有样本都短于 20K token。基线包括 Full KV、用于低秩压缩的 PALU、用于驱逐的 KVZip 和 SnapKV,以及用于软压缩的 Activation Beacon。
在 LongBench 上,SlimKV 在 16x/32x 压缩下优于基线,在 4x/8x 下也保持领先,并保留未压缩模型 96% 以上的分数。低压缩比的平均分具体显示了这一格局:在 Llama-3.1-8B 的 4x 设置下,SlimKV-f2 得 48.10,Activation Beacon 为 48.21,PALU 为 46.66,KVZip 为 36.39;在 Qwen2.5-14B 的 8x 设置下,SlimKV 达到 49.94,Activation Beacon 为 45.50。因此优势在压缩最激进时最大,在最温和的设置下则接近持平。
任务类型决定增益落在哪里
论文的分任务分析补充了一个对选择压缩设置很重要的条件。SlimKV-f4 在文档问答任务上增益最稳定,包括单文档和多文档问答;作者将其归因于无 RoPE 的 beacon 记忆在相同总预算下既保留了检索式推理所需的语义证据,又缓解了按 token 压缩的压力。摘要类任务的增益较小但稳定,这与它们更依赖全局语义聚合、而非精确 token 位置相符。
少样本和代码任务则更不一致,也更依赖主干模型:SlimKV 在 Qwen2.5-14B 上提升明显,在 Llama-3.1-8B 上较小;代码任务结果也有波动,作者将其与这类任务更依赖局部顺序、格式和结构线索联系起来。同样的边界也体现在位置设计本身:原始 token 键保留 RoPE,只有 beacon 键去掉它。
加速确实存在,内存由压缩比决定
在 Llama-3.1-8B 上生成 128 个 token 的解码延迟,把 SlimKV 与一个基于重建的变体区分开来:后者保留 beacon 键的 RoPE,并在注意力前还原出完整维度的 K/V。在 128K 上下文、16x 压缩下,SlimKV 的注意力耗时为 6.35 秒,端到端为 14.24 秒;重建变体分别为 8.73 秒和 16.79 秒,Full KV 为 46.64 秒和 48.08 秒。在 32x 下,SlimKV 对应数值为 7.65 秒和 13.78 秒。摘要把这一结果概括为:在 128K 长度下,相比未压缩模型,注意力最高加速 7.34 倍,端到端解码最高加速 3.38 倍。
峰值内存的表现不同,也容易被误读。SlimKV 与重建变体的峰值分配内存几乎相同,因为重建只改变计算流程,不改变存储的缓存大小;真正降低内存的是压缩比,在 32K 设置下从 16x 的 25.72 GB 降到 32x 的 23.41 GB。首 token 时延相比重建变体只有小幅改善,主要来自跳过键侧 RoPE 计算以及 beacon 状态的全键还原。
SlimKV 适合与不适合的场景
论文与 MLA 的对比进一步凸显了取舍。MLA 同样使用低秩 KV 表示来避免全维重建,但它保留 token 粒度并另设一条位置键分支,而且与模型架构紧密耦合,需要昂贵的基座模型预训练。SlimKV 则把 token 联合压缩成 beacon 状态及其 K/V 特征,在带 RoPE 的预填充过程中获得 beacon 的位置线索,无需单独的位置键缓存,并且只训练 beacon 投影就能改造预训练的 GQA-RoPE 主干。
这条改造路径同时也是适用范围的上限。SlimKV 主要在基于 RoPE 的语言模型和纯文本长上下文任务上评估;它在其他位置编码方案下的表现,以及向多模态 KV 缓存的扩展,都尚未验证。因此证据支持的优先级很具体:当基于 RoPE 的主干需要激进压缩,且长上下文工作以检索式任务为主时,SlimKV 的无重建 beacon 设计正是其准确率与延迟优势同时成立的场景。对于顺序敏感的代码或格式密集任务,论文自身的结果显示增益最不可靠。
本文引用的文献
SlimKV: Joint Token-Feature KV Cache Compression with Reconstruction-Free Beacon Attention
SlimKV 沿 token 与特征两轴把 KV 缓存压缩成低秩 beacon 状态,并对 beacon 键去掉键侧 RoPE,使注意力无需全键重建即可在潜空间中进行;它在 16x/32x 压缩下领先 LongBench 基线,在 4x/8x 下保留未压缩模型 96% 以上的分数,并在 128K 长度下实现最高 7.34 倍注意力加速和 3.38 倍端到端解码加速。
