这是「CS336 之后」系列的第一篇。
起因是我把 CS336 Spring 2026 跟完之后(逐讲增量盘点),发现一个尴尬的事实:课程在 6 月 3 日结束,而 Kimi K3(7/16)、GLM-5.3(8/14)全都是这之后发布的。课堂上的例子永远比时代晚一个身位。
但换个角度想,这恰恰是课程最有价值的地方:它给的不是结论,是提问的能力。技术报告是答案,但没有框架你连问题都提不出来。
这一篇就拿长上下文这个主题做示范。我会先复述课程给的判断框架,再看三个最新模型各自交了什么答卷,最后指出——其中一个结果,课程没预料到。
一、课程给的问题:L4 的两条路线
CS336 2026 的 L4(4 月 8 日)是今年全新的一讲。2025 年这一讲叫 "Mixture of experts",2026 年改成了 "Attention alternatives and mixture of experts"——60 页里前 13 页是全新的。
动机很直白:FFN 的开销随序列长度线性增长,attention 是二次增长。序列一长,attention 就是瓶颈。
课程把解法归成两类,然后用一个统一的公式骨架串起了四代模型:
- 线性注意力:
QKᵀV = Q(KᵀV),复杂度从n²dk + n²dv降到2·n·dv·dk。循环形式S_t = S_{t-1} + k_t v_tᵀ与 LSTM 同构,形成"训练用并行二次形式、推理用串行线性形式"的对偶。 - Mamba-2:加输入相关的 γ_t 门控 +
v_tᵀD直通项,动机是"何时遗忘"。 - Gated DeltaNet:再加 β_t "no-input" 门与
(I − β_t k_t k_tᵀ)沿当前 key 方向的擦除。讲义指出这与 fast weight programming / test-time training 的元学习最小二乘殊途同归。
然后是三个落地模型及混合比例:MiniMax M1(7:1 线性:full)、Nemotron 3(Mamba-2 约 3:1)、Qwen 3.5 / Next(GDN 3:1)。
另一个完全不同的路线是 DSA(DeepSeek Sparse Attention):稀疏而非线性。先用一个轻量 indexer(QK 内积 + ReLU + top-K)筛出子集,再对子集做 full attention。要点是 indexer 本身仍是二次的但常数极小(可低精度/低维),K 有上界所以第二阶段"贵但短",而且可以 post-hoc 在长上下文扩展阶段才插入,成本极低。
课程给了四条明确的判断:
| # | 判断 |
|---|---|
| 1 | 至今没有人证明纯线性注意力在大规模可行,下面讲的全是 hybrid |
| 2 | 混合比存在性能悬崖:低比例几乎无损,比例一高长上下文检索与 QA 单调劣化,全 RNN 明显掉点 |
| 3 | DSA 是完全不同的第二条路线(稀疏 vs 线性),且可 post-hoc 插入 |
| 4 | 线性注意力与 SSM 是 KV cache 之外的方向,当前架构"fundamentally inference-unfriendly" |
这四条就是我们拿来读报告的尺子。
二、三份答卷
先把时间线摆清楚,因为有个容易搞错的地方:
| 模型 | 发布 | 相对课程(3/30–6/3) |
|---|---|---|
| DeepSeek V4 | 4/24(技术报告+开源权重) | 课程期间 |
| Kimi K3 | 7/16 | 结课后 6 周 |
| GLM-5.3 | 8/14 | 结课后 10 周 |
| GLM-5.3-Flash | 8/26 | 结课后 12 周 |
DeepSeek V4 是在课程期间发布的(4/24,58 页技术报告,同步开源权重)。L10 在 4/29 上课,Percy 讲的是 5 天前刚出的东西。所以 V4 不算"课程没讲到"——恰恰相反,它是课程实时性的证明。真正没讲到的是 K3 和 GLM-5.3。
答卷一:DeepSeek V4 —— 走压缩,复用 DSA
规格:V4-Pro 1.6T 总参 / 49B 激活,V4-Flash 284B / 13B 激活,双双支持 1M 上下文。
架构创新三条:
-
混合注意力 CSA + HCA
- CSA(Compressed Sparse Attention):沿序列维度压缩 KV cache,然后执行 DSA
- HCA(Heavily Compressed Attention):更激进地压缩 KV cache,但保持 dense attention
注意这两者的分工很讲究:CSA 压缩后走稀疏(保证长程召回),HCA 压缩更狠但保持稠密(保证局部精度)。DSA 是从 V3.2 直接复用的——这正好印证了课程说的"DSA 可以 post-hoc 插入"。
-
mHC(Manifold-Constrained Hyper-Connections):升级传统残差连接。这个后面还会出现,记住它。
-
Muon 优化器:用于 V4 系列训练,"faster convergence and improved training stability"。
基础设施上有两个细节值得注意:用 TileLang(一种 DSL)平衡 kernel 开发效率与运行效率;KV cache 落盘(On-Disk KV Cache Storage)——这正是 L18 客座讲座里 Dan Fu 讲的"现代版操作系统换页"(HBM → DRAM → SSD)。
答卷二:Kimi K3 —— 给线性注意力投了 2.8T 参数的信任票
规格:2.8T 总参 / 104B 激活 / 1M 上下文 / 原生多模态。
架构三条:
-
混合注意力 KDA + Gated MLA,3:1
"Each block contains 3 KDA layers followed by 1 Gated MLA layer, giving a 3:1 mixing ratio."
3:1。 和课程里 Qwen 3.5 的 GDN 比例一模一样。这不是巧合,后面会讲。
-
KDA(Kimi Delta Attention)的公式:
1
S_t = (I − β_t k_t k_tᵀ) · Diag(α_t) · S_{t−1} + β_t k_t v_tᵀ
这就是课程 L4 讲的 Gated DeltaNet 公式,一字不差:
(I − β_t k_t k_tᵀ)沿当前 key 方向的擦除,外加一个 channel-wise 的衰减Diag(α_t)。课程 4/8 讲,K3 在 7/16 用它跑了 2.8T 参数。这说明课程讲的不是象牙塔里的东西,就是当时业界正在用的东西。
工程上 K3 还解决了一个具体的数值问题:chunkwise 形式需要用
1/Γ重缩放 key,而 Γ 是 (0,1) 区间的衰减因子连乘,倒数会无界增长导致溢出。Kimi Linear 的解法是在 log 空间算相对衰减并把 chunk 切成 16-token 的二级 tile;K3 改用 scaled sigmoid 从下界约束 log-decay。这是典型的"算法—系统协同设计"。 -
Stable LatentMoE:专家空间扩到 896 个,每 token 激活 16 个。配套 Normalized LatentMoE、SiTU-GLU、Quantile Balancing 来稳定极端稀疏下的优化。
对比一下:课程 L11 讲 Kimi K2 选 sparsity = 48,理由是"那之后边际递减"。K3 的 896/16 = 56。稀疏度还在往上推。
另外两个点:K3 用的是 Per-Head Muon(不只是 Muon,是 per-head 变体);官方称相比 K2,overall scaling efficiency 提升约 2.5 倍。
答卷三:GLM-5.3-Flash —— 两条路线直接缝合
规格:320B 总参 / 18B 激活 / 1M 上下文,GLM-5 系列首个原生多模态。
官方原话:
"是首个采用稀疏注意力与线性注意力混合架构的开源前沿模型。"
具体机制:
- 线性注意力通过递归机制捕获局部依赖
- 稀疏注意力借助轻量级索引器召回全局上下文
- 为降低 1M 上下文下索引器的时延与内存开销,引入 IndexPool,通过加权池化把索引器的 4 个缓存向量压缩为 1 个
效果(官方数据,对比 GLM-5.3):注意力计算量降低 3.01 倍,KV 缓存降低 4.44 倍。
而且官方直接给出了与 DeepSeek-V4-Flash、Kimi-K3 的横向对比(每 Head 每层注意力计算量、每层平均 KV 缓存大小 BF16):
"在所有基线模型中,GLM-5.3-Flash 的注意力计算量最低。不过,GLM-5.3-Flash 的 KV 缓存大小仍略高于 Kimi-K3 和 DeepSeek-V4-Flash。"
这句话很实在——没有全面最优,只有权衡。纯线性路线(K3)在 KV cache 上仍然领先,混合路线(GLM)在计算量上领先。
另外 GLM-5.3-Flash 也用了 mHC,和 DeepSeek V4 一样。
三、逐条对照:课程的四条判断
现在拿尺子量。
判断 1:"纯线性注意力在大规模未被验证,全是 hybrid" —— ✅ 完全应验
K3 是 3:1 hybrid,不是纯线性。GLM-5.3-Flash 也是混合。没有任何一个模型赌纯线性。
值得注意的规模:K3 用 2.8T 参数验证了 3:1 的线性混合。这比课程里讲的 Qwen 3.5、Nemotron 3 大了一个数量级。所以"未验证"这个说法现在要改口——在 2.8T 规模上,3:1 的线性混合是被验证可行的。但纯线性仍然无人尝试。
判断 2:"混合比存在性能悬崖" —— ✅ 应验,而且收敛到了同一个点
课程给了三个比例:MiniMax M1 的 7:1、Nemotron 3 的 3:1、Qwen 3.5 的 3:1。
半年后 K3 选了 3:1。
不同团队、不同架构、不同规模,都停在 3:1 附近——这强烈暗示存在一个经验最优区间。课程的"性能悬崖"判断是对的:7:1 是激进的一端(只有 MiniMax 敢试),3:1 是共识。
判断 3:"DSA 是完全不同的第二条路线,可 post-hoc 插入" —— ✅ 应验
DeepSeek V4 直接复用 V3.2 的 DSA。GLM 用的也是稀疏索引器路线(GLM-DSA)。这条路线的可复用性被证明得非常彻底。
判断 4:两条路线是"二选一" —— ❌ 被推翻了
这是课程没预料到的部分。
课程把线性注意力和稀疏注意力讲成两条竞争路线。讲义里甚至有一页专门讲 ByteDance Seed 与 UC Santa Cruz 的混合比实验,暗示你要在"线性占比"这个一维坐标上选一个点。
但 GLM-5.3-Flash 给出的答案是:两个都要,但分工不同——
- 线性注意力负责局部(递归机制天然擅长邻近依赖,且 KV cache 固定大小)
- 稀疏注意力负责全局(轻量索引器召回远处的关键信息)
这是一个二维的选择,不是一维的。课程的框架仍然有效,但它描述的是 2026 年 4 月的认知状态。
还有一个课程没讲但已经成了共识的东西:mHC。
DeepSeek V4 和 GLM-5.3-Flash 都用了 Manifold-Constrained Hyper-Connections。这是 Xie et al. 2026 的工作,升级传统残差连接。两个独立团队同时采用,说明残差拓扑是当前架构创新的一个活跃方向——而课程 L3 讲残差时(pre-norm vs post-norm、QK-norm、z-loss)完全没有覆盖到这一层。
四、两个仍然悬而未决的问题
技术报告回答了一些问题,也暴露了新问题。
1. Muon 到底好不好?仍然没有答案。
课程 L11 的完整叙事是:nanoGPT speedrun 上 Muon 大幅超 Adam → 大规模研究显示收益随 scale 递减 → Kimi K2 全量用 Muon,但没有 ablation,"是否真比 AdamW 好"仍是未解问题。
现在 K3 用 Per-Head Muon,DeepSeek V4 也用 Muon。两个前沿模型都上车了。
但依然没有 ablation。 报告里只说"faster convergence and improved training stability",没有和 AdamW 的同规模对照。课程里 Tatsu 那句"一半是科学,一半是 vibes",到今天仍然成立。
顺带说个方法论问题:L11 讲过,做 optimizer 对比至少要同时盯住两个轴——compute 与 Chinchilla ratio(token:param)。只扫模型尺寸轴的对比论文基本不可信。以后看到任何"XX 优化器吊打 AdamW"的说法,先问它扫了 ratio 没有。
2. 稀疏度应该多大?没有理论,只有实践。
| 模型 | 总参 | 激活 | 专家数 | 激活专家 | 稀疏度 |
|---|---|---|---|---|---|
| Kimi K2 | 1T | 32B | — | — | 48 |
| Kimi K3 | 2.8T | 104B | 896 | 16 | 56 |
| DeepSeek V4-Pro | 1.6T | 49B | — | — | ~33 |
| GLM-5.3-Flash | 320B | 18B | — | — | ~18 |
从 18 到 56,差 3 倍。没有收敛,也没有公开的选择依据。课程 L11 讲 Kimi K2 选 48 是"因为那之后边际递减"——这是唯一的公开推理,而且是单点的。
顺带一提,GLM-5.3-Flash 只有 320B 却拿到 AA 智能指数 57 分(与 Claude Opus 4.8 持平),稀疏度只有 18。这暗示小模型 + 低稀疏度 + 好架构,可能比大模型 + 高稀疏度更划算。当然,官方数字要打折看。
五、一份可以复用的检查清单
这一篇的方法论,总结一下就是:拿课程当解剖刀,而不是当百科全书。
具体到长上下文这个主题,读一份技术报告时该问:
| 该问的问题 | 出处 |
|---|---|
| 走的是线性、稀疏,还是混合? | L4 |
| 如果是混合,比例多少?为什么停在这个点? | L4(3:1 共识,7:1 是激进端) |
| 稀疏注意力是 post-hoc 插入还是从零训? | L4 |
| KV cache 怎么压?MLA / DSA / 压缩?压了多少倍? | L10 |
| 1M 上下文时 attention 的算术强度是多少?memory-bound 还是 compute-bound? | L2 |
| 长上下文阶段的 EP / CP 怎么配? | L8(TP ≤ 8,CP 可到 64) |
| KV cache 有没有分层?落盘了吗? | L18(HBM→DRAM→SSD 换页) |
这套问题可以套到任何一份技术报告上——包括半年前发布的旧报告,以及将来才会出现的新报告。
六、系列预告
这个系列会按技术主题切,不按模型切——避免退化成模型发布简讯。计划中的几篇:
- 长上下文:路线之争与合流(本文)
- MoE 稀疏度:从 K2 的 48 到 K3 的 56,稀疏度这个维度到底怎么选
- Muon 与优化器:一个课程明确说"仍是未解问题"的话题,半年后进展如何
- Agent 能力从哪来:mid-training 注入 vs 末段注入(L15/L16 的核心争议)
- 国产芯片上的推理:GLM-5.3-Flash 跑在国产芯片集群上,这件事的系统含义
每篇都会有一个明确的结构:课程给了什么判断 → 报告给了什么答案 → 哪些应验、哪些失效。
最后说一句本系列的立场。技术报告是 PR 文档,不是论文——它只写成功的不写失败的。而课程里最有价值的判断恰恰是负面的:"至今没有人证明纯线性注意力在大规模可行"、"混合比存在性能悬崖"。这类信息你不会在任何一份技术报告里看到。
所以这两样东西是互补的,不是替代关系。 课程给尺子,报告给读数。
附:本篇的一手材料
全部落盘在 ~/valyang-daily/cs336/techreports/,可复现:
- DeepSeek V4:arXiv 2606.19348,《DeepSeek-V4: Towards Highly Efficient Million-Token Context Intelligence》
- Kimi K3:arXiv 2607.24653,《Kimi K3: Open Frontier Intelligence》
- GLM-5.3-Flash:智谱官方文档 docs.bigmodel.cn(含架构说明与横向对比数据)
说明:本篇只纳入有技术报告或官方技术文档的模型。混元 Hy4 preview(8/28 发布)截至本文写作时仅有新闻稿、无技术报告,无法验证其架构细节,故未纳入分析范围;待其技术报告发布后再单独补篇。
课程材料见 《CS336 Spring 2026 有什么新东西》。