2017 年 6 月,《Attention Is All You Need》把「循环」从序列建模里删掉了。九年后的今天,拆开 DeepSeek-V3、Qwen3、Llama 4、Kimi K2 这些旗舰模型,会看到一个耐人寻味的事实:骨架还是那副骨架,但骨架之外的部件几乎全部换过一代甚至两代。本文基于各家官方技术报告与 HuggingFace config.json(截至 2026-10-09),梳理这条演进主线。结论先行:架构层面高度收敛,模型之间的真正差距已经转移到训练管线与推理工程。
一、先看原版:2017 年的那台机器
原版 Transformer base 配置放在今天看非常「朴素」:d_model 512、8 头注意力(每头 64 维)、FFN 隐层 2048(4 倍)配 ReLU、Post-LN 归一化(先残差后归一化)、正弦位置编码、residual dropout 0.1、label smoothing 0.1、4 千步 warmup。论文原话是「residual connection around each of the two sub-layers, followed by layer normalization」。
当时有两处设计,在今天看来颇具讽刺意味。其一,正弦位置编码的动机是「希望模型能外推到更长序列」——此后九年的位置编码史,恰恰是围绕「外推不了」四个字展开的。其二,Post-LN 必须配 warmup 才训得动,但为什么,要到 2020 年才有人用平均场理论讲清楚。
小结:骨架(残差 + 注意力 + FFN)从未被推翻,被推翻的是它周围几乎每一个工程细节。
二、活下来的与被换掉的
活下来的四样:残差连接与子层结构;多头注意力的形式(Q/K/V 怎么算变了,「多头」这个形式没变);FFN 的位置;因果掩码。
换掉的至少六样:归一化方案、位置编码、激活函数、正则化策略、参数 bias、注意力头数策略。合在一张图上:
graph TB
ROOT["2017 原版 Transformer"] --> L1["位置编码:正弦 → 可学习 → 相对位置 → RoPE(2021)→ 长度外推家族 → NoPE 混布"]
ROOT --> L2["归一化:Post-LN → Pre-LN → RMSNorm(2019)→ 三明治归一化 → QK-Norm 普及"]
ROOT --> L3["注意力:MHA → MQA(2019)→ GQA(2023)→ MLA(2024)→ 混合与稀疏(2025 起)"]
ROOT --> L4["FFN:ReLU → GELU → SwiGLU(2020 起,Gemma 系例外)"]
ROOT --> L5["其他:dropout 与 bias 移除、词表 32K → 262K、MTP 多 token 预测"]
下面按部件逐条展开。注意力与 MoE 的详细战况,本系列后续几篇单独讲。
三、归一化:一部稳定性工程史
Post-LN 的问题在 2020 年被 Xiong 等人理论化(arXiv 2002.04745):Post-LN 结构在初始化时输出层附近的梯度期望过大,必须靠 warmup 压住;Pre-LN 梯度全程良好,可以干脆去掉 warmup。GPT-2 之后 Pre-LN 成为主流,这条没有争议。
第二步是 RMSNorm(arXiv 1910.07467,2019):去掉均值中心化、只保留缩放,质量与 LayerNorm 持平,运行时减少 7%-64%。如今 Llama、Qwen、DeepSeek、Mistral、GLM 全线 RMSNorm。
故事没完。规模上去之后,新的不稳定出现了。Meta 的 Chameleon 报告(arXiv 2405.09818)记载:模型超过 8B 参数、1T token 之后训练开始发散,且发散点集中在训练进度的 20%-30% 处;根因是 softmax 的平移不变性让各路信号竞相放大激活范数,logit 最终超出 bf16 的表示范围。药方是 QK-Norm——对 query 和 key 向量各做一次归一化,把注意力的 logit 从源头摁住。
2024 至 2025 年 QK-Norm 迅速扩散:Qwen3 用它取代了 Qwen2 的 QKV-bias,技术报告原话是「we remove QKV-bias used in Qwen2 and introduce QK-Norm to the attention mechanism to ensure stable training」;Gemma 3 用它取代了 Gemma 2 的 soft-capping;OLMo 2、Llama 4、MiniMax-M2、GLM-4.5 的 config 里都能找到 use_qk_norm。Gemma 系还发展出「前后夹」的三明治归一化——注意力与 FFN 同时做 pre-norm 和 post-norm。顺带一提,OLMo 2 做了反向操作:回归 Post-Norm(配 RMSNorm 与 QK-Norm)也训得很稳。归一化位置没有标准答案,只有与规模和配方的匹配。
一个容易写错的细节:Llama 3 并没有用 QK-Norm,技术报告里查不到相关表述;QK-Norm 是从 Llama 4 才进入 Meta 家族的。
小结:归一化的九年,是把「训练稳定性」从玄学变成标配零件的九年。
四、位置编码:正弦函数的九死一生
这条线的脉络最清晰:
- 2018-2019 可学习绝对位置:GPT-2 与 BERT 直接训练一张位置表,简单,但长度锁死;
- 2019 相对位置:Transformer-XL(arXiv 1901.02860)把依赖长度提升 450%,T5 把相对位置简化为 bias 加在注意力分数上;
- 2021 RoPE(arXiv 2104.09864,一作苏剑林):用旋转矩阵编码绝对位置、内积只依赖相对位置差,形式上可外推、表达上是相对位置,还兼容线性注意力——最终成为全行业标准;
- 2021 ALiBi(arXiv 2108.12409):不加位置嵌入,直接按距离线性惩罚注意力分数,1.3B 模型从 1024 训练长度外推到 2048,训练还快 11%;
- 2023 起的长度外推家族:位置插值 PI(Meta,arXiv 2306.15595,千步内微调把 LLaMA 从 2K 扩到 32K)、NTK-aware 缩放(起源是 Reddit 用户 bloc97 的帖子,后被 YaRN 论文正式引用,思路是高频维度少插值、低频维度多插值;同期 Code Llama 走的则是更直接的路线——把基频一步调大,殊途同归)、YaRN(arXiv 2309.00071,按波长分维度插值,Llama 2 7B 从 4K 到 128K 只需约 400 步微调)、LongRoPE(微软,arXiv 2402.13753,做到 2M 上下文);
- 2023 NoPE(arXiv 2305.19466):一个反直觉的发现——decoder-only 模型完全不给位置编码也能工作,因为因果掩码本身就隐含了位置信息;
- 2025 iRoPE:Llama 4 每 4 层安排 1 层无 RoPE 的注意力层(config 的 no_rope_layers 字段可查),配合随长度调节的注意力温度,官方宣称 10M 上下文。
与此同时 RoPE 基频 θ 一路上调:Llama 3.1 用 500,000,Qwen3 从 10,000 提到 1,000,000,Gemma 3 全局层 1M 而局部层保持 10K,Mistral Small 3.2 直接给到 10⁹。正弦函数当年「外推」的愿望,最终以「换一种编码方式 + 一整套外推工程」的方式实现。
小结:位置编码是九年里共识最强的一条演进线,终点几乎全体收敛到 RoPE 及其扩展。
五、容易被忽略的细节:激活、bias、词表与 MTP
激活函数:ReLU → GELU(GPT/BERT)→ SwiGLU。SwiGLU 出自 Shazeer 2020 年的单篇短文(arXiv 2002.05202),结论只有一句——GLU 变体「质量优于常用的 ReLU 或 GELU」。如今 Llama、Qwen、DeepSeek 全线 SwiGLU,FFN 隐层也从整齐的 4 倍变成约 8/3 倍(Llama 3.1 8B 的 14336 就是这么凑出来的);gpt-oss 还给 SwiGLU 加了 7.0 的限幅,防激活爆炸。例外是 Gemma 3,config 里至今写着 gelu_pytorch_tanh。
bias:Llama 3.1、Qwen3、DeepSeek-V3 全部移除了注意力与 FFN 偏置。两个例外值得玩味:GLM-4.5 保留了 attention_bias;gpt-oss 的注意力 bias 则换了语义——它是 softmax 分母里的可学习偏置,让注意力头可以「什么都不看」,相当于把 attention sink 做成了训练期内生机制。
词表:从 Llama 2 的 32K 到 Llama 3 的 128K、Qwen3 的 151,936、Gemma 3 的 262K。词表变大直接改善压缩率——Llama 2 的 32K 词表平均 3.17 个字符压成 1 个 token,Llama 3 的 128K 词表把这一数字提到 3.94,中文与代码受益最明显;代价是 embedding 参数上涨。这是一笔用参数换上下文有效长度的账。
MTP 多 token 预测:Meta 2024 年的论文(arXiv 2404.19737)证明一次训练多个输出头能提升模型能力(13B 在 HumanEval 上加 12%),并支持最多 3 倍的投机推理加速;DeepSeek-V3 落成 1 层 MTP 模块(与主模型共享 embedding 与输出头,训练时的监督权重先 0.3 后降为 0.1,推理时单独取出当投机解码器),GLM-4.5 跟进,MiniMax-M2 甚至堆了 3 个模块,Qwen3-Next 用它做原生投机解码。这是「训练目标反哺推理效率」的典型。
小结:每个细节单看都不性感,合起来就是同一台机器的九年翻新。
六、十二家旗舰的架构配方
以下信息全部来自各模型官方 config.json 与技术报告(截至 2026-10-09):
| 模型 | 注意力 | 归一化 | 位置编码 | 激活函数 | MoE | 上下文 |
|---|---|---|---|---|---|---|
| Llama 3.1 8B | GQA 32Q/8KV | RMSNorm | RoPE θ=50 万、缩放 ×8 | SwiGLU | 稠密 | 128K |
| Mistral Small 3.2 | GQA 32Q/8KV | RMSNorm | RoPE θ=10⁹ | SiLU | 稠密 | 128K |
| Gemma 3 27B | GQA + 5:1 局部全局 | RMSNorm 前后夹 + QK-Norm | 全局层 θ=1M、局部 10K | GELU | 稠密 | 128K |
| Qwen3-8B | GQA 32Q/8KV | RMSNorm + QK-Norm | RoPE θ=1M | SwiGLU | 稠密 | YaRN 至 131K |
| DeepSeek-V3 | MLA 512+64 维 | RMSNorm | RoPE + YaRN ×40 | SiLU | 256+1 选 8,671B/37B | 128K |
| Kimi K2 | MLA 512+64 维 | RMSNorm | RoPE + YaRN ×32 | SiLU | 384+1 选 8,1T/32B | 128K |
| GLM-4.5 | GQA 96Q/8KV + QK-Norm | RMSNorm | RoPE 半维旋转 | SiLU | 160+1 选 8,355B/32B | 131K |
| gpt-oss-120b | GQA 64Q/8KV + 注意力 sink | RMSNorm | RoPE + YaRN ×32 | SwiGLU 带限幅 | 128 选 4,117B/5.1B | 131K |
| MiniMax-M2 | GQA 48Q/8KV + QK-Norm | RMSNorm | RoPE 部分维旋转 | SiLU | 256 选 8,230B/10B | 196K |
| Llama 4 Scout | GQA + iRoPE 每 4 层 NoPE | RMSNorm + QK-Norm | 部分层无 RoPE | SwiGLU | 16 专家,109B/17B | 官方宣称 10M |
| Qwen3-Next 80B | DeltaNet:注意力 3:1 混合 | RMSNorm | RoPE θ=10⁷ | SwiGLU | 512+1 选 10,80B/3B | 262K,YaRN 至 1M |
| Kimi Linear 48B | KDA:MLA 3:1 混合 | — | MLA 层用 NoPE | SiLU | 256+1 选 8,48B/3B | 1M |
解读这张表,三条主线清晰可见:归一化几乎清一色 RMSNorm,多数叠加 QK-Norm;位置编码全体是 RoPE 系(NoPE 混布是它的变种而非挑战者);注意力分成 GQA 阵营与 MLA 阵营,混合与稀疏是 2025 年之后的第三条路。差异最大的,恰恰是最不「架构」的地方——MoE 配置与上下文策略。表里还有两条暗线值得一提。其一是共享专家的存废分化:DeepSeek、GLM、Kimi 保留共享专家,Qwen3 与 gpt-oss 干脆移除,两条路线都训出了旗舰。其二是形状分化:gpt-oss 120B 用 36 层的宽而浅结构,同级 Qwen3 是 48 层的窄而深;专家也分成「更多更小」与「更少更大」两派——在推理成本的压力下,连模型长什么样都开始由部署形态决定。
七、架构还重要吗
Sebastian Raschka 在《The Big LLM Architecture Comparison》(2025-07 发布、2026-04 更新)里的观察很直白:GPT-2 与 DeepSeek-V3 的结构惊人地相似,九年来的变化全是渐进式的——绝对位置换 RoPE、MHA 换 GQA、GELU 换 SwiGLU;「如今大量的 secret sauce 在训练管线和推理扩展策略里」。最直接的证据是 Kimi K2 与 DeepSeek-V3 的同构关系:前者几乎是后者的放大版,真正的差异在优化器(MuonClip)与训练配方,不在结构图上。
本文的判断是:架构选择正在从「能力工程」变成「成本工程」。MoE 决定训练账单,GQA、MLA 与滑窗决定推理显存账单,MTP 决定延迟账单。2017 年那台机器的骨架之所以长存,不是因为它完美,而是因为它足够通用——把所有压力都转移给了外围部件。九年翻新,翻的都是账单。
参考资料
- Attention Is All You Need ——2017 年原版论文,一切演进的起点
- RoFormer: Enhanced Transformer with Rotary Position Embedding ——RoPE 原论文
- Root Mean Square Layer Normalization ——RMSNorm
- GLU Variants Improve Transformer ——SwiGLU
- On Layer Normalization in the Transformer Architecture ——Post-LN 与 warmup 的理论解释
- Chameleon Mixed-Modal Early-Fusion Foundation Models ——QK-Norm 稳定性的代表性案例
- DeepSeek-V3 Technical Report 与 Qwen3 Technical Report ——两家官方架构细节
- The Big LLM Architecture Comparison ——Sebastian Raschka 的旗舰架构横评,2026-04 更新
读者留言
COMMENTS 暂无还没有留言,来说第一句?