共同骨架 · 先看它们有多像
对比之前,先把不变的部分讲清:现代开源大模型共享同一套 decoder-only 骨架(RoPE + RMSNorm + Pre-Norm + SwiGLU),它们相对 GPT-2 的升级早已「达成共识」。真正还在分歧的,只有六个维度——本章给出总览地图。
共同骨架 · 先看它们有多像
要看清差异,得先看清共性。不然你会把「大家都这么做」的东西,误当成某家的独门绝技。
这一章不讲任何一家的「绝活」,只做一件事:把 Qwen、Llama、DeepSeek、GLM 们共享的那副骨架摆出来。看完你会有个踏实的底:它们八成的结构,你在 nanoGPT 里已经读过了。
一句话:全是 decoder-only 的「续写机」
不管参数是 7B 还是 671B,今天主流的开源大模型,架构范式高度统一:
- decoder-only:没有编码器,就是一摞 Transformer Block 从头叠到尾(和 nanoGPT 的
GPT一模一样)。 - 自回归 + 因果掩码:预测下一个 token,只能看左边——就是你在注意力那章里啃过的那道下三角掩码。
- 一个 Block = 注意力 + 前馈,两个子层各带一个归一化、各套一条残差。
换句话说,nanoGPT 那张数据流图,拿去描述 DeepSeek-V3 的一个 Block,大体还是对的。区别不在「有没有这些零件」,而在「这些零件各自换成了什么型号」。
相对 GPT-2,有四处「已经达成共识」的升级
nanoGPT 复刻的是 2019 年的 GPT-2。从那时到现在,有四个地方,几乎所有现代模型都做了同样的升级——这些是「已经有标准答案」的问题,不再是分歧点:
| 零件 | GPT-2 / nanoGPT 的老做法 | 现代标配 | 为什么换 |
|---|---|---|---|
| 位置编码 | 学习式绝对位置嵌入(wpe 查表) | RoPE(旋转位置编码) | 相对位置、能外推到更长上下文 |
| 归一化 | LayerNorm(减均值、除方差) | RMSNorm(只除均方根) | 少算一个均值,更快,效果不掉 |
| 前馈激活 | GELU 的普通 MLP | SwiGLU(门控 + SiLU) | 同算力下效果更好,已成默认 |
| 偏置项 bias | Linear / LayerNorm 都带 bias | 大多去掉 bias | 省参数、略快、还略稳(nanoGPT 也提到了) |
这张表值得记牢:当你读到某个新模型「用了 RoPE + RMSNorm + Pre-Norm + SwiGLU」,不必激动——那是 2024 年的「出厂设置」,不是创新。 真正的创新,藏在下面那六个还没有标准答案的维度里。
顺带一提,Pre-Norm(把归一化放在子层前面)也基本成了默认——它比 GPT 原版的 Post-Norm 训练更稳。但注意,「归一化到底放哪儿」其实还没完全盖棺定论,这正是我们后面要单独对比的一维(OLMo 2 就偏要放回后面)。
于是,真正的「战场」只剩六个维度
把上面这些共性摁住,各家大模型真正分道扬镳的地方,收拢起来其实就六个。这也是本专栏后面每一章的锚点:
| # | 维度 | 核心问题 | 谁在这儿下了不同的注 |
|---|---|---|---|
| 1 | 注意力 / KV 缓存 | 推理时怎么省下键值缓存的显存? | Llama/Qwen 用 GQA,DeepSeek 用 MLA,Gemma/GPT-OSS 加滑动窗口 |
| 2 | 前馈:稠密 vs MoE | 要不要把前馈拆成一堆「专家」稀疏激活? | DeepSeek/Llama4/GLM 上 MoE,中小模型多留稠密 |
| 3 | MoE 的配方 | 专家多而小还是少而大?要不要共享专家? | DeepSeek「多而小 + 共享」,Llama4「少而大」,Qwen3「砍掉共享」 |
| 4 | 归一化的位置 | Norm 放子层前、后,还是前后都放? | 多数 Pre,OLMo 2 用 Post,Gemma 用三明治;QK-Norm 渐成标配 |
| 5 | 长上下文 | RoPE 怎么外推到几十万 token? | YaRN 等缩放法为主,也有 NoPE 的激进实验 |
| 6 | 训练侧与小执念 | 训练目标、精度、宽深、bias… | DeepSeek 的 MTP / FP8 / 无辅助损失均衡;GPT-OSS 的宽与 attention sink |
别被这张表吓到——它不是要你现在就记住每一格。它是一张地图:接下来每一章,我们会走进其中一格,把那一列的对比讲透。读完整个专栏再回看这张表,你会发现每一格都变成了你脑子里清晰的一段故事。
一个提醒:这些维度不是孤立的
六个维度里,前两条(注意力、MoE)是绝对的主角——它们直接决定「这个模型推理时要烧多少显存、多少算力」,也是各家技术报告里着墨最多的地方。后面几条更像「配平」的细节,重要,但不改变大局。
所以本专栏的顺序也照此安排:先啃两条主线(省 KV 缓存、稀疏化),再收拾其余维度,最后给每个模型画张脸谱、汇一张总表。
骨架看清了,共识划走了,战场也圈定了。下一章,我们踏进第一个、也是最重要的战场——注意力。你会看到 MHA、MQA、GQA、MLA 这一串缩写,其实是同一个问题(「KV 缓存太占显存」)的一串越来越聪明的答案。👉 注意力:从 MHA 到 MQA、GQA、MLA
参考文献
- [1] Su et al. “RoFormer: Enhanced Transformer with Rotary Position Embedding.” 2021. arXiv:2104.09864. —— RoPE。
- [2] Zhang & Sennrich. “Root Mean Square Layer Normalization.” NeurIPS 2019. arXiv:1910.07467. —— RMSNorm。
- [3] Shazeer. “GLU Variants Improve Transformer.” 2020. arXiv:2002.05202. —— SwiGLU。
- [4] Xiong et al. “On Layer Normalization in the Transformer Architecture.” ICML 2020. arXiv:2002.04745. —— Pre-Norm 相对 Post-Norm 的训练稳定性。
- [5] Radford et al. “Language Models are Unsupervised Multitask Learners.” 2019. —— GPT-2,本专栏的「老做法」基准。
- [6] Raschka, S. “The Big LLM Architecture Comparison.” 2025. https://magazine.sebastianraschka.com/p/the-big-llm-architecture-comparison —— 本专栏的对比框架与多处架构事实的主要参考。