← logs/

架构 2026:Vanilla Transformer 之后真正改变了什么

如果你对语言模型的心智模型还是堆叠的 transformer block、softmax 注意力与一个稠密 FFN,那你描述的是 2019 年。2026 年年中的开源权重前沿,是四项模块化变化的组合:KV 压缩注意力(MLA)、可训练稀疏注意力(NSA)、混合线性注意力(Qwen3.6 中的 Gated DeltaNet),以及带学习式负载均衡的专家路由 FFN(DeepSeekMoE)。它们搭载在今天就能下载的模型里,并且相互组合。

2023 block:  [softmax attention] -> [dense FFN]          every layer the same
2026 stack:  [MLA / NSA / Gated DeltaNet] -> [MoE FFN]   per-block mix, routed

这是对定义当前状态的三个来源的一次精读:DeepSeek-V3 技术报告、DeepSeek 的 Native Sparse Attention 论文,以及 Qwen3.6 官方模型卡。属于我的 MODELS 领域地图系列 的一部分。

MLA:压缩缓存,而非压缩头

DeepSeek-V3 技术报告是锚点:总参数 671B、每个 token 激活 37B、多头潜变量注意力(MLA)、DeepSeekMoE。MLA 就是让这种体量的模型可服务的 KV cache 技巧:键和值被联合压缩进一个低秩潜变量向量,于是缓存每个 token 只存一个小潜变量,而不是逐头存键和值;把 MLA 移植进现有模型的 MHA2MLA 系列工作正是这么描述的:把 KV cache 显著压缩进一个潜变量向量。

与分组查询注意力的对比很有启发。GQA 通过让头共享键和值来缩小缓存;MLA 通过压缩所存的内容来缩小缓存。目标相同,机制不同。一个值得保留的精确说法:MLA 是每 token 缓存占用量的常数因子缩减,而不是一条不同的 scaling law。绝对节省量随上下文长度线性增长——与 GQA 相同的扩展规律,但常数更优——而上下文长度正是 agent 工作负载真正所在之处。

报告里还有两个数字值得对照校准:14.8 万亿训练 token,以及全程无回滚的 2.788M H800 GPU 小时。还有两个设计选择成了 2026 年的默认配置:无辅助损失的负载均衡策略——让路由在没有会扭曲它的损失项的情况下学会均衡——以及多 token 预测训练目标。

NSA:可以端到端训练的稀疏注意力

稀疏注意力落得坏名声,是因为 2023 年那一代在训练之后才把稀疏性硬装上去,而且只在一个阶段测量加速比。Native Sparse Attention (NSA)(Yuan、Gao 等人)是对此的反驳:一种动态分层稀疏策略,把粗粒度 token 压缩与细粒度 token 选择结合起来,用硬件对齐的 kernel 与均衡的算术强度实现,而关键在于端到端训练。用 NSA 预训练的模型,在通用 benchmark、长上下文任务与基于指令的推理上保持或超过全注意力基线,同时在 64k 序列长度上,对解码、前向与反向三个过程都带来相对全注意力的显著加速。

变化在于:稀疏注意力不再只是推理时的技巧,而成了一种可训练的归纳偏置。模型学会压缩什么、选择什么,而且加速在模型生命周期的三个阶段上都是真实的。

从操作上看,这意味着架构决策发生在预训练阶段。NSA 不是可以事后改装到稠密 checkpoint 上的东西:压缩头与选择头是训练出来的,不是调出来的,每个下游阶段要么为这一选择付出代价,要么从中获益。

Qwen3.6:生产环境中的混合线性注意力

Qwen3.6-35B-A3B 于 2026 年 4 月发布(模型卡QwenLM/Qwen3.6 仓库),是 Qwen 系列最新的生产级混合线性注意力模型。

这张模型卡读起来像一份 2026 年架构的路线图。总参数 35B,激活 3B。40 层排列成十个块,每块由三层 Gated DeltaNet 后接一层 Gated Attention 组成,每层喂给一个 256 专家的 MoE FFN——8 个路由专家加 1 个共享激活专家。原生上下文 262,144 token,可扩展至 1,010,000。MTP——多 token 预测头——用多步训练,在 vLLM 与 SGLang 中用作投机草稿路径。在 Qwen 内部 agent 脚手架上 SWE-bench Verified 73.4。

专注架构的读法容易错过的一个细节:这个模型是多模态的。模型卡把它列为带视觉编码器的因果语言模型,并报告了一整套视觉语言 benchmark。上文描述的混合注意力布局,是语言模型一侧的性质。

线性层是 Gated DeltaNet(Yang 等人),它把论文证明互补的两种机制配在一起:用于快速记忆擦除的门控,与用于定向记忆更新的 delta 规则,并用一种优于 Mamba2 与 DeltaNet 基线的并行算法训练。从服务角度看,这些层维护一个紧凑的循环状态,而不是不断增长的 KV cache;周期性的全注意力层提供跨整个上下文的精确检索。3:1 的混合是架构上的要点:线性层廉价地承载长上下文状态,全注意力处理纯循环状态搞不定的检索,而两者你都需要。

MoE 路由:FFN 变成了路由器

最不起眼的变化也许是最重要的:稠密 FFN 变成了专家路由器。DeepSeekMoE 的 671B/37B 划分是标准数字:每个 token 激活 37B,因为由路由决定每个 token 由哪些专家计算。把它与同一份报告里的无辅助损失负载均衡配在一起,就得到 2026 年的等式:压缩你所缓存的(MLA)、只激活你所要计算的(MoE)、有选择地注意(NSA)、用循环替换部分注意力(Gated DeltaNet)。每项变化各攻一项成本,但诚实的提醒是:MLA、NSA 与线性注意力攻的是同一个 KV 瓶颈,因此它们部分相互替代,而非干净地叠加。正确的混合取决于工作负载,不存在普适解。

我的立场

真正改变的是:block 不再是单一整体。注意力现在是一份菜单:压缩(MLA)、稀疏(NSA)、循环(Gated DeltaNet),或普通的全注意力,逐层选择。FFN 是一个路由器。工程问题不再是哪种单一架构胜出,而是一种混合在你的工作负载上表现如何。

对我自己在做的在线服务工作而言,优先级很清楚。KV cache 成本主导 agent 工作负载:长工具输出、长推理轨迹、超大上下文。MLA 式压缩与 Gated DeltaNet 式线性层是实际可用的杠杆,服务侧的后果写在我的 面向 agent 的推理系统 笔记里。对检索繁重的长上下文任务,NSA 是有意思的选择。操作风险在 kernel 面:混合方案只有在 flash 线性注意力 kernel 与服务引擎追上来之后才划算。没有融合实现的线性注意力层,跑得比它所取代的全注意力还慢,所以架构上的赌注其实是 kernel 上的赌注。如今在 vLLM 与 SGLang 里,这种支持对 Qwen3.6 是真实的,但它还很年轻。

如果我现在要搭一套在线服务栈:主力用 DeepSeek-V3 式 MLA 加 MoE,长上下文成本靠混合线性层,稀疏注意力则是当上下文预算超出 KV cache 承载能力时第一个要拉的杠杆。

本文中链接的来源均已抓取并核验。