长上下文推理既省又准的“焚诀”来了!港中文团队提出自动分段+块蒸馏新框架

Block Distillation团队 投稿 量子位 | 公众号QbitAI

长上下文大模型的成本,很大一块烧在“全注意力”上。

KV状态与上下文绑定,同样的内容换了个前缀,就得从头重算——在RAG这类“反复处理重叠文档”的场景里,这种浪费尤其明显。

块注意力(Block attention)被视为一条出路:把输入切成互不干扰的独立块,只让最后一块做全局聚合,使各块的KV状态能够跨prompt复用。

但这种方法一直卡在两个问题上:怎么把文本切成有意义的块?怎么训练模型适应块注意力?

基于这一现状,香港中文大学林伟等团队提出SemanticSeg分段器与Block Distillation训练框架:自动分段器解决“文本怎么切”,块蒸馏解决“模型怎么训”。该项目已被NIPS2026录取。

问题:两个“拦路虎”

其一,分段。现有做法多靠启发式规则(比如按换行切),几乎不通用,很容易把语义连贯的内容切断。论文实验也显示:切得不好,下游性能会明显下降。

其二,训练。免训练地“硬套”块注意力(如Prompt Cache、Superposition Prompting)会让性能大幅下滑;此前提出的“块微调(block fine-tuning)”虽然能兼顾,但算力开销大、且难以泛化到通用领域。

方法一:自动分段器

分段器以Qwen3-4B-Instruct-2507为骨干,接上“两层线性+ReLU”的分类头,对每个候选切点输出二分类概率;并用“下一个候选切点”的隐向量来决定当前切点是否成立。粒度可以通过“概率阈值+递归深度”两级旋钮控制——想切粗一点还是细一点,由使用者决定。

△先按简单规则插入候选切点,再由分段器输出二分类概率,并可通过不同阈值递归细分,从而“自定义”分段粒度。

方法二:块蒸馏(Block Distillation)

论文用“冻结的全注意力教师模型”去指导“块注意力学生模型”,从而绕开块微调那套沉重的双路更新。训练每步耗时25859.9ms,比块微调的34941.1ms快约26%。框架里塞进了三个新组件:

块汇点token(block sink tokens)。

在每个块开头重复4次特殊token<|block_start|>。论文把“块首注意力模式异常”这一现象命名为lost in block head,汇点token正是用来缓解它。

块dropout。

随机挑选一部分块,让它们只在本块内做注意力,并对其余“未受损”的块施加KL散度损失。这样模型就能从远超“最后一块”的文本里获得训练信号,解决此前的信号稀疏问题。

token级损失加权。

按“块注意力与全注意力两次前向的损失差”给token加权:对块注意力敏感的token加大权重,对不敏感的token压小权重,让训练聚焦在真正需要学的地方。

△随机让一部分块只在本块内注意力(蓝),对未受损块(橙)施加KL损失;最后一块始终保持全注意力。

实验结果

块微调在通用领域“泛化失败”,块蒸馏则逼近全注意力。

论文先复现了此前的块微调模型:其块注意力平均分32.82,与全注意力40.40有明显差距;即便换成用本文分段器切分的数据重训,缺口依旧存在——说明问题出在训练方法本身。

△块蒸馏的块注意力性能已接近甚至超过原始全注意力,而免训练的Prompt Cache/Superposition明显掉点。

在长对话基准LoCoMo上也是同样的趋势。

效率:块注意力把预填充成本压了下来。

首token时延(TTFT)随上下文变长,优势越来越大:8k时从509.2ms降到451.3ms;到64k时,从6971.3ms降到3821.6ms——省下约3.1秒。

△块注意力在各级上下文长度上均降低首token时延,且差距随长度拉大。

消融实验显示,块汇点token、块dropout、KL损失与token加权四个部分缺一不可,去掉任一项都会在特定任务上明显掉点。

重点:它与Loop架构有什么关联?

论文在讨论“未来方向”时,专门写了一节Integration with Loop Transformers(与Loop Transformer的融合),这是整篇工作里最值得关注的延伸判断之一。

论文的原话大意是:GPT6-Astra的发布让Loop Transformer重新回到聚光灯下。相比朴素Transformer,Loop架构很可能带来两个变化——

计算量大幅增加,长上下文下尤其明显;

代码助手。输出的“思考token”可能大幅减少,于是计算重心转移到预填充(prefilling)阶段,这成为继续scale的主要瓶颈。

论文的判断是:块注意力“跨prompt复用KV缓存”的天性,恰好是缓解这一瓶颈的有力手段。换句话说,Loop架构把成本压到了预填充上,而块注意力正好在预填充这一环做“按块复用、不必整体重算”。

这条关联并非孤例:论文在同一段落引用了从2019到2026年的一整条循环/loop架构脉络,包括循环Transformer的早期工作(Dehghani等,2019;Geiping等,2025;Yang等,2024)、循环模型的表达能力研究(Saunshi等,2025)、循环语言模型(Zhu等,2025,即Ouro/LoopLM一线),以及弹性深度的Loopformer(Jeddi等,2026)。

需要如实说明的是:这部分是论文对未来的展望与推断,并非已完成的实验结果——论文并未给出循环架构下的实测数据。但它指出的方向很清晰:若Loop架构成为主流,那么“块注意力+分段器+块蒸馏”这套现成的效率工箱,很可能顺理成章地成为它的基础组件。

这些技术能用在什么场景?

代码助手。

论文给了一个很直观的算例:系统提示约15k、仓库约30个文件(每个约10k)、每次检索10个文件、query200。传统前缀缓存只能复用系统提示,命中率约0.13;块注意力把每个文件独立编码并分别缓存,命中率可达约0.99。

多轮Agent工作流。

在以ReAct式循环运行的研究型Agent中,同一批论文会在多轮里被反复调取。全注意力下它们的状态被裹在每次都在变的大上下文里,几乎无法复用;块注意力把每篇论文编码成独立块、缓存一次即可反复取用,轮次越多收益越明显。

结论

论文把块注意力的两个卡点分别解决:轻量分段器实现“人类直觉对齐”的自动切块,用块蒸馏让块注意力在通用任务上逼近甚至超过原始全注意力,同时把训练成本降下来。在效率上,首token时延随上下文长度增长而持续受益。

更重要的是那条延伸线:当Loop架构把瓶颈推到预填充阶段时,块注意力提供了一套“可复用、可组合”的缓存机制。长上下文的成本之战,很可能就在这两条技术路线的交汇处展开。

论文标题:Towards Generalization of Block Attention via Automatic Segmentation and Block Distillation 论文链接:https://arxiv.org/abs/2605.15913 机构:香港中文大学(CUHK);香港城市大学(City University of Hong Kong);腾讯(Tencent);中国人民大学高瓴人工智能学院(Gaoling School of Artificial Intelligence, RUC);新加坡管理大学(Singapore Management University) 作者:Shuaiyi Li、Zhisong Zhang、Yan Wang、Lei Zhu、Dongyang Ma、Chenlong Deng、Yang Deng、Wai Lam

一键三连「点赞」「转发」「小心心」

欢迎在评论区留下你的想法!