← 专题深读

专题深读 · 2026-11-11 · 进阶 · 作者 bombong

分层稀疏注意力:读取 1000 万 token 的注意力设计

稀疏注意力让每个查询只读取部分键,但决定读取哪些键的步骤仍要扫描全部内容,因此随着长度增加成为瓶颈。分层稀疏注意力把键从粗粒度摘要到细粒度 token 逐层组织,并自上而下缩小候选范围,将选择成本降到长度的对数级别。

目录
要点
  • 块稀疏注意力真正的瓶颈在于“选择”而不是“读取”。如果给所有块或键打分,选择成本仍会随长度成比例增长。
  • 分层设计把键从粗粒度摘要到细粒度 token 组织成树,每层只保留得分最高的少数几个,将单个查询的选择成本降到长度的对数级别。
  • 成败取决于摘要的质量。均值这类一阶摘要可能错估注意力质量,因此出现了二阶统计量、应用 RoPE 之前的摘要、蒸馏得到的摘要键等改进。
  • 分组方式也在从连续块扩展到把语义相近的键归为一组的聚类索引,近期研究同时报告了 100 万至 1000 万 token 区间的速度与准确率。
  • 报告的倍数大多是 128K 以上、单个注意力层或内核级别的数值,因此需要分别核实端到端速度、按长度划分的检索准确率,以及超出训练长度区间的表现。

为什么需要:连选择本身都很昂贵

注意力(Attention)在计算新 token 时,要衡量它与前面所有 token 的相关度。长度为 N 时有 N² 个配对,因此把上下文窗口(Context window)扩大一倍,计算量就变为四倍。所以读取长文档的模型,无论是在一次性处理初始提示词的预填充阶段,还是在逐个生成 token 的解码阶段,成本都会迅速增长。

降低这一成本的代表性方法是块稀疏注意力。它把序列切分成固定大小的块,每个查询只对少数看起来相关的块做精确计算。COBS 研究(paper)总结指出,这种方式对硬件友好,并能缓解读取 KV 缓存(KV cache)的瓶颈。由于按块连续读取内存,GPU 处理起来也更方便。

问题在于决定保留哪些块的步骤。PISA(paper)指出,现有的块选择要给所有查询-块对打分,因此选择本身仍与长度的平方成正比。实际服务中的模型也存在同样现象。AttentionIndex(paper)报告称,即使是 DeepSeek-V4、GLM-5 这类由轻量索引器挑选键的可学习稀疏注意力,索引器也要给前面所有的键打分;在 100 万 token 时,这一选择步骤占预填充时间的一半以上。

于是问题变了:从“少读什么”转向“如何低成本地选出要读什么”。分层稀疏注意力就是对第二个问题的回答。

核心思路:在图书馆找书的顺序

在大型图书馆找一本书时,不会把书架上的书逐本取下来查看。先在楼层指示牌上选对楼层,再看该楼层几个书架的标识牌,最后只在选中的书架里浏览书脊。每一步只看少数几个,最终却能到达目标书附近。

分层稀疏注意力也是如此。把若干个键(前面 token 产出的“用于查找”的向量)合并成摘要键,再把这些摘要合并成更粗的摘要。查询先在最粗的层打分,只保留得分最高的几个,然后只对保留下来的组的子节点在下一层重新打分。到达最底层的 token 层后,只对剩下的 token 计算精确注意力。

为什么这样会更便宜?如果每层把分组大小按固定倍数放大,层数只随长度的对数增长,而每层查看的候选数有上限。PISA(paper)用这种结构把整体复杂度降到 N log N,RecSA(paper)则让单个查询的选择成本和读取的条目数都达到长度的对数级别。

代价也是有的。图书馆的指示牌如果有误,就会走错楼层。如果摘要没能正确代表实际内容,包含重要 token 的组就会在上层被丢弃,而其下方不会再被查看。因此这一领域的大部分研究都在处理“如何构建摘要”和“如何分组”这两个问题。

如何运作:五个步骤

第一,构建摘要树。把 KV 缓存中累积的键按固定数量进行池化(把多个向量合并为一个),生成摘要键,并重复这一过程堆叠出多层。RecSA(paper)让树的每个节点用一个键和一个取均值的值(value)来概括其下方的全部内容。

第二,在最粗的层打分。计算查询与摘要键的相关度,只保留前 k 个。PISA(paper)此时用 LogSumExp(对指数和取对数)汇总组内得分来挑选候选。

第三,向下一层推进。只对保留候选的子节点重新打分,再保留前 k 个。由于候选集合的大小有上限,每层的成本是固定的。DHSA(paper)也采用分层路由:先在块(chunk)级别估计重要性,再把它传播到 token 级别。

第四,对剩下的 token 计算精确注意力。RecSA(paper)在此基础上更进一步,把未被选中的候选的摘要也和精确 token 一起放进同一个 softmax(把得分转换为概率的函数)。相当于被舍弃的区域也能大致反映到结果中。

第五,把整个过程合并到一个 GPU 内核中。在各层之间往返的运算如果实现不当,内存往返会增多,从而失去理论上的收益。PISA(paper)在面向训练和推理的 Triton 内核中合并了分层路由与打分计算,避免在内存中生成完整的查询-键得分矩阵。

分层选择流程当前查询 → 最粗层; 最粗层 → 中间层(候选 k); 中间层 → token 层(候选 k); token 层 → 精确注意力; 精确注意力 → 输出; KV 缓存 → 摘要树(池化); 摘要树 → 最粗层(提供摘要)当前查询最粗层摘要键打分前 k 个中间层只给候选的子节点打分token 层最终候选 tokenKV 缓存前面 token 的键·值摘要树通过池化生成的层精确注意力只计算剩下的 token输出候选 k候选 k池化提供摘要
分层选择流程 下行将 KV 缓存池化生成摘要树,上行由查询从粗层开始每次保留前 k 个逐层缩小,只对剩下的 token 计算精确注意力。

设计选择:在什么之间权衡

用什么构建摘要。COBS(paper)把块选择归结为按“注意力质量”(即块内注意力得分之和)排序的问题。只要正确选出质量大的块,块稀疏注意力就能接近 dense(查看所有 token 的)注意力的质量。但求精确的质量需要读取所有键,因此只能用摘要来近似;该研究分析认为,现有方法停留在均值这类一阶近似上,因而不稳定。在为每个块存储压缩后的二阶统计量(离散程度)后,32k RULER 检索基准上 NSA 基线的平均分从 0.2999 提升到 0.8195,dense 注意力为 0.9040。

如何处理位置信息。语义-几何分离路由研究(paper)指出,现有路由器对应用 RoPE(旋转位置嵌入)之后的表示做池化,导致来自语义和位置的几何结构混在一起,高频成分相互抵消,使近距离位置线索变得模糊。因此它在应用 RoPE 之前的空间中做语义摘要,并单独计算位置偏置再相加。该方法无需训练即可应用,路由开销低于 3.4ms,报告称在 128K 时比 FlashAttention 快 5.03 倍。

把什么分为一组。连续块便于读取内存,但正如 PBS-Attn(paper)所指出的,如果一个块中的查询所需的重要键分散在多个块中,就会读取过多不必要的块。PBS-Attn 通过重新排列 token 顺序提高块稀疏性,在长上下文预填充中实现了最高 2.75 倍的端到端加速。AttentionIndex(paper)则直接采用把相似键归为一组的倒排文件索引(ANN 检索中使用的基于聚类的索引)。其理由是:在连续块上分两步选择的方式,如果固定候选预算,随着长度增加,漏掉应找到的键的比例会变大。

块级还是 token 级。CLSA(paper)总结称,结构化的块方式加速明显但质量损失可见,token 级方式准确但对整个缓存做 top-k 路由成本高,端到端加速有限。CLSA 只计算一次 token 级 top-k,并让多层共享该索引,报告在 128K 时解码最高加速 7.6 倍、整体吞吐量最高提升 17.1 倍。分层设计则是另一条思路:在保持 token 级精度的同时,把路由成本降到对数级别。

把什么分为一组

连续块按位置顺序分组

  • 连续读取内存,对 GPU 友好
  • 重要键分散在多个块时造成浪费
  • 固定预算下长度增加则遗漏增多

相似度聚类把相似的键归为一组

  • 把分散的相关键归入一组
  • 构建和维护索引的成本
  • 需要管理因果性(只看前面的 token)

공통 两者都先用摘要缩小候选范围,再只对剩下的 token 做精确计算

连续块与基于相似度的聚类,是在内存读取便利性与选择准确率之间权衡。

发展脉络:2025~2026 年的起点研究

2025 年的研究逐一指出了稀疏注意力的不同弱点。ReSA(paper)指出,在稀疏解码中近似误差会累积,使 KV 缓存偏离预训练时的分布;它每隔固定间隔用 dense 计算刷新 KV 缓存,从而把误差控制在一定范围内,在 256K 解码中实现了最高 2.42 倍的端到端加速。DHSA(paper)提出了块→token 的分层路由,不使用固定模板,而是根据输入在线预测稀疏模式。在不改动模型主体的情况下,在相近的预填充成本下其相对准确率比块稀疏注意力高 12~20%,在 128K 时预填充最高加速 10 倍,并用 4 比特 LLaMA-3.1-8B 在单张 24GB GPU 上处理了 10 万 token。PBS-Attn(paper)通过重新排列 token 顺序处理了块边界问题。

2026 年上半年,重心转向“选择能做得多准、多便宜”。CLSA(paper)在层间共享路由索引以分摊选择成本,COBS(paper)把选择问题形式化为注意力质量近似,并说明了摘要统计量的阶数很重要。

2026 年 9 月出现了直接处理摘要与分层的研究。语义-几何分离路由(paper)把摘要移到 RoPE 之前的空间,PISA(paper)通过从粗层到细层的金字塔 Top-K 选择,明确实现了整体 N log N 复杂度。PISA 报告称,在语言建模实验中常识推理基准与基线相当,检索任务则更好。

这些研究并不是声明彼此直接承接的谱系,而是在同一时期从不同角度攻克同一瓶颈。下面的图谱仅按时期分组。

分层稀疏注意力研究图谱 按时期归组了从不同角度攻克同一瓶颈的研究。由于未明确直接承接关系,未用箭头连接。

近期走向:从 100 万到 1000 万 token

2026 年 10~11 月的研究把分层选择推向 100 万 token 以上。RecSA(paper)在 KV 缓存之上建树,并从 dense 注意力蒸馏(Distillation,知识蒸馏)出各层共享的池化器(生成摘要键的小模块)。值得注意的设计是位置处理:它把每个条目的 RoPE 位置设为“在该层候选中排第几”,使得无论长度多长,相对距离都保持在训练时见过的范围内。它从 Qwen3-4B 出发,只在原始训练长度 32K 上训练了 0.62B token,但在 RULER 上从 131K 到 2M 的所有长度都高于基线,在 1M 时得到 60.5 分,超过最佳基线(Dense + DCA)的 40.0 分。

AttentionIndex(paper)是在服务模型的索引器之上叠加聚类索引的实用方向。它在预填充过程中构建索引,使新键可立即被检索;复用之前的聚类结果以降低维护成本;并让查询只查看由早于自身的键构成的簇,以保持因果性。在 100 万 token 时,相比 GLM-5.3 和 DeepSeek-V4-Flash 的全量选择,预填充吞吐量提高 1.3~1.8 倍;在与连续块两阶段方式(HiSA)吞吐量相差 5% 以内时,分别多找回 17.0 和 10.0 个百分点的全量 top-k。

LSA(paper)对应标题中的“1000 万 token”。它的出发点是:随着智能体工作流(Agentic Workflow)转向长期任务,需要更长的上下文。它在学习得到的潜在空间中对键做分层聚类,让查询给簇的层级而不是所有键打分。它有两种形式:通过蒸馏接到现有模型上的 D-LSA,以及仅用下一个 token 损失从头训练的 N-LSA。在 1000 万 token 时,D-LSA 相比 GLM-5.3-FLASH 原有的稀疏注意力,使单个注意力层的预填充加速 22.7 倍、解码加速 4.6 倍;相比使用全注意力的 Qwen-3.8-27B,分别为 72.4 倍和 42.5 倍。报告称在多项任务上准确率保持相近。N-LSA 在 128k 时达到全注意力的准确率,同时每层训练速度为 1.6 倍。

把三项研究叠在一起看,方向就清楚了:分组从连续块转向学习得到或基于相似度构建的簇,摘要从手工设定的均值转向蒸馏得到的摘要,评估从训练长度以内转向远超训练长度的区间。

近期研究中值得关注的数字

22.7 倍D-LSA 预填充,相比原有稀疏注意力
72.4 倍D-LSA 预填充,相比全注意力
60.5 vs 40.0RecSA vs 最佳基线(1M RULER)
LSA 数值是 1000 万 token 下单个注意力层的结果,RecSA 数值是 1M 长度的 RULER 分数。

局限、争议与实践判断

上层的错误难以挽回。在粗层被丢弃的组,其下方不会再被查看,因此如果摘要错估了质量,重要 token 就会整体缺失。COBS(paper)揭示的一阶近似的局限,以及 AttentionIndex(paper)指出的固定预算下遗漏增加,都属于这个问题。像 RecSA(paper)那样把舍弃的摘要也放进 softmax,或像 ReSA(paper)那样周期性地混入 dense 计算,都是缓解办法,但会带来成本。

解读报告的倍数时也要谨慎。LSA(paper)的 22.7 倍和 72.4 倍是以单个注意力层为基准的,而端到端服务速度还包括 MLP、通信和内存管理,因此会更小。比较对象是“原有稀疏注意力”还是“全注意力”,数字也会差别很大。准确率方面,RULER 这类合成检索任务占比较大;RecSA 在 1M 时的 60.5 分虽高于基线,但也意味着仍有很多遗漏。

何时使用?这里讨论的研究大多在 128K 以上报告收益。上下文较短时,构建摘要树和在多层之间往返的成本可能抵消收益,因此首先要确认实际流量的长度分布。如果没有余力重新训练,可以考虑无需训练即可接入的方式(DHSA、语义-几何分离路由)或通过蒸馏接入的方式(D-LSA);如果从头设计模型,则可以选择像 N-LSA 那样原生训练。

常见错误有三种:只看内核速度而不核实端到端速度;只在训练长度以内评估,却假设超出部分同样成立;只看平均分,而不单独考察多键检索这类稀疏选择表现较弱的任务。引入之前,应同时测量按长度划分的检索准确率曲线、选择能找回多少全量 top-k,以及解码变长时质量是否下降。

延伸学习

如果想先把握结构,先读 PISA(paper)。为什么块选择仍是二次的、金字塔 Top-K 如何做到 N log N,这篇讲得最直接。接着读 COBS(paper),就会建立“好的摘要是能很好近似注意力质量的摘要”这一标准,可以借此评估其他论文。

然后通过语义-几何分离路由(paper)了解 RoPE 与摘要的关系,通过 RecSA(paper)了解超出训练长度扩展的问题。两项研究都表明,如何处理位置信息对长上下文有多重要。

如果关心 1000 万 token 规模和服务视角,可以读 LSA(paper)和 AttentionIndex(paper)。块级与 token 级的权衡以及解码侧的问题,可由 CLSA(paper)、ReSA(paper)补充;块边界问题可从 PBS-Attn(paper)入手,内存受限的环境则可从 DHSA(paper)入手。

相关术语

注意力 KV 缓存 上下文窗口 FlashAttention RoPE ANN 搜索 聚类 Distillation

参考资料

奠基论文

最新研究

由 AI 根据所列参考资料撰写并经过审核。详情请查看原始资料。