长上下文 · 高效 AI · Transformer
FlashMemory-DeepSeek-V4:KV 缓存压到 13.5%
用神经索引器预测下一步要用哪些 KV 块、只留在显存里,FlashMemory-DeepSeek-V4 把物理 KV 缓存压到全量基线的 13.5%,准确率几乎不降。
快速答案
FlashMemory-DeepSeek-V4 把解码时的 KV 缓存压到全量上下文基线的 13.5%,下游准确率基本持平,平均还小涨约 0.6 个百分点。核心是「前瞻稀疏注意力」(LSA):一个小型神经索引器提前预测接下来的 token 真正会注意到哪些 key-value 块,只有这些块留在显存里。在 50 万 token 的上下文规模下,它把 KV 缓存开销压下了 90% 以上。
它要解决的 KV 缓存难题
长上下文解码先撑爆的不是算力,而是显存。Transformer 见过的每个 token 都会在缓存里留下一对 key/value 向量,缓存随上下文长度线性增长。到 50 万 token 时,真正塞不进显卡的是 KV 缓存,而不是模型权重。已有做法要么按过去的注意力分数淘汰 token(这是被动的,会扔掉之后才重要的块),要么对所有块统一压缩(把少数承载答案的关键块也糊掉)。FlashMemory-DeepSeek-V4 赌的是:在解码下一段之前,就能预测它会去查询哪些历史块,只让那些块保持「热」。
前瞻稀疏注意力怎么工作
LSA 把 KV 历史切成块,在注意力前面放一个可学习的「神经记忆索引器」。索引器按每个块与即将到来的查询的相关度打分,把最相关的块调进显存,其余卸载在外。关键设计在「前瞻」二字:它不是从「过去注意了什么」来决定保留什么,而是预判下一段的需求——一个沉寂了几千个 token、随后突然变关键的块,可以在被用到之前就被提前拉回来。
索引器是个双编码器:一个编码器嵌入查询状态,一个嵌入候选块,相关度就是点积,形状和稠密检索系统一模一样。正是这个设定,让训练变便宜。
解耦训练才是真正的巧思
训练这一面比推理更值得讲。一般来说,要训练一个嵌在注意力内部的组件,就得在训练时把完整骨干模型加载进显存——对 DeepSeek-V4 这种规模的模型,这极其昂贵。FlashMemory-DeepSeek-V4 把索引器写成标准双编码器,用现成的检索训练框架独立训练,全程不加载庞大的骨干模型。这种解耦才是真正的工程贡献:它把「改动前沿模型的注意力」变成了「训练一个检索器」,小团队也跑得动。
关键结果
- KV 缓存:平均为全量基线的 13.5%,在评测任务上常驻缓存约缩到七分之一。
- 准确率:平均 +0.6 个百分点,在所测基准上稀疏化几乎是「白嫖」,而非拿质量换显存。
- 50 万上下文下:KV 缓存开销压下 90% 以上,而这正是稠密解码直接爆显存的地方。
- 在 LongBench-v2、LongMemEval、RULER 上评测——都是主流的长上下文与长记忆套件,而非单一自造基准。
- 代码与权重已在 GitHub 和 Hugging Face 的
libertywing/FlashMemory-Deepseek-V4仓库开源。
局限与存疑
需要说实话的是,「平均 +0.6%」掩盖了方差:索引器一旦预测错哪个块重要,就可能丢掉恰好承载答案的那一段,而在「大海捞针」式查询上,单次灾难性漏检并不会体现在平均准确率里。论文报告的是在检索友好型基准上的平均值;真正难的是需要一次性整合大量分散块的推理,那也正是前瞻预测最容易漏判的地方。索引器本身还带来额外延迟、要多部署一个模型,所以 90% 的显存收益并不等于 90% 的成本收益。再加上它是一份 11 页、绑定特定 DeepSeek-V4 骨干的技术报告,LSA 迁移到其他架构有多顺、双编码器超过 50 万 token 还撑不撑得住,都还是未知数。
常见问题
FlashMemory-DeepSeek-V4 里的前瞻稀疏注意力是什么?
它是一种注意力方案,只保留神经索引器预测下一批 token 会查询的 key-value 块,而不是留住整个 KV 缓存。靠预判未来需求而非对过去注意力做反应,它把显存控制在一定范围内,同时保住承载答案的关键块。
FlashMemory-DeepSeek-V4 能把 KV 缓存压多少?
平均压到全量上下文基线的 13.5%,约为七分之一;在 50 万 token 上下文下压下 90% 以上的 KV 缓存开销,下游平均准确率持平到约 +0.6%。
为什么 FlashMemory-DeepSeek-V4 的训练比别的稀疏注意力更便宜?
因为索引器被写成标准双编码器、用普通检索框架训练,训练索引器时根本不必把骨干模型加载进显存。这种解耦把「改前沿模型的注意力」变成了小团队也能跑的检索训练任务。
FlashMemory-DeepSeek-V4 用了哪些基准?
LongBench-v2、LongMemEval 和 RULER——都是成熟的长上下文与长记忆基准,而非单一自造测试,这让「显存换准确率」的结论更可信。
一句话:预测下一批 token 需要哪些 KV 块、只留这些,50 万 token 解码也能塞下且不掉准确率。阅读 arXiv 原文。