基于 DeepSeek-V4 技术报告系统梳理 DeepSeek-V4 在 1M Context、MoE 训练稳定性、FP8/FP4 低精度训练、Muon 分布式实现上的关键工程取舍,并说明这些设计与检索质量、训练成本和系统复杂度之间的关系。
先看结论
DeepSeek-V4 的技术重点可以归纳为两条主线。
第一条主线是 1M Context 的可服务化。DeepSeek-V4 没有沿着 dense attention 的方向继续扩展,而是把长上下文拆成多条并行的信息通道,用压缩、稀疏选择和局部保真共同控制推理成本。
第二条主线是 1.6T MoE 在 33T tokens 预训练中的稳定性管理。DeepSeek-V4 把架构、路由、优化器、数值精度和训练调度放到同一个系统里处理,目标是让训练过程能够长期稳定运行。
这两条主线相互关联。长上下文引入更复杂的注意力结构,低精度训练扩大数值风险,MoE 路由又会引入新的反馈回路。DeepSeek-V4 的很多设计都服务于同一件事:把可训练性、可部署性和成本控制放进一个统一的工程框架。
1M Context 的核心结构
DeepSeek-V4 的注意力层,在多数层里由三条并行通道组成:HCA、CSA 和 SWA。

HCA
HCA 是全局摘要通道。它把长序列按 m'=128 做重压缩,再对压缩后的全局序列执行 dense attention。这样做的收益很直接:1M tokens 压到大约 7812 个条目后,dense attention 的计算量回到一个可管理区间。
代价也很直接。每个压缩条目要承载 128 个原始 tokens 的信息,精度会明显下降。HCA 更适合提供全局语义背景,不适合做高精度定位。
CSA
CSA 是稀疏精读通道。它先按 m=4 压缩,再由 Lightning Indexer 对所有压缩块打分,只保留 top-k 供查询读取。DeepSeek-V4 Pro 里典型的 top-k 是 1024。
这意味着查询最终只会读取大约 1024 × 4 = 4096 个 token 等价的信息。读取效率很高,但上限受制于 indexer 的排序质量。如果相关块没有排进 top-k,主注意力就没有机会再看到它。
SWA
SWA 是局部保真通道。它保留最近 128 tokens 的原始 K/V,不做压缩,直接参与注意力计算。
SWA 的作用很基础,但不可省略。长上下文压缩结构会天然损失最近邻细节,尤其在因果掩码存在时,当前块附近的信息会更敏感。SWA 负责补齐这一段高价值局部信息。
1M Context 省下了什么,损失了什么
DeepSeek-V4 的 1M Context 设计把成本压得很低。论文里给出的量级是:
- 相比 V3.2,V4-Pro 在 1M 下单 token inference FLOPs 降到 27%,KV cache 降到 10%
- 相比 V3.2,V4-Flash 在 1M 下单 token inference FLOPs 降到 10%,KV cache 降到 7%
- 相比 BF16 GQA8 基线,V4 系列的 KV cache 约为 2%
这几个数字来自多层叠加:
- 序列维度压缩,主要由 CSA 和 HCA 完成
- K/V sharing,沿用 MLA 风格的压缩思路
- BF16 到 FP8 的缓存降精度
- indexer 路径进一步使用 FP4
收益明确,质量代价也很明确。MRCR 8-needle 曲线给出的结果很有代表性。

可以从这条曲线读出几个结论:
- 在 128K 以内,DeepSeek-V4 Pro 的检索质量仍然处在较高水平
- 从 256K 往上,精确检索能力开始明显下降
- 到 1M 时,V4-Pro 的 MRCR 8-needle 准确率下降到 0.59,V4-Flash 下降到 0.49
这组数据说明,DeepSeek-V4 的 1M Context 适合长文档推理、长轨迹 agent 维护、多文档汇总这类依赖全局背景和局部细节结合的任务。它不适合对长序列做严格 needle retrieval,也不适合要求高精度数字、条款、实体定位的场景。
Attention 结构背后的工程判断
从结构上看,DeepSeek-V4 没有尝试让单一机制覆盖全部需求,而是把不同精度层级交给不同通道。
- HCA 负责全局覆盖
- CSA 负责全局范围内的稀疏精读
- SWA 负责最近窗口的完整保真
这个分工本身已经反映出一个判断:在 1M 长度下,attention 不能同时兼顾全局覆盖、精确定位和低成本。DeepSeek-V4 选择把这些目标拆开处理。
这里还有两个细节值得注意。
第一,Attention Sink 让注意力层有机会放弃无效候选项。对于 sparse attention,这一点很重要。当 top-k 里没有真正相关块时,sink 可以减少错误信号扩散。
第二,partial RoPE 只作用于部分维度,并在输出侧加了 inverse RoPE 处理,用来缓解 K=V sharing 下的位置信息混叠问题。这类处理没有改变 V4 的核心成本结构,但对长上下文质量是必要补充。
长上下文之外,DeepSeek-V4 更大的难点是训练稳定性
DeepSeek-V4 技术报告里最值得关注的部分,是它对训练稳定性问题的直接描述。
在 1.6T MoE、33T tokens、FP8/FP4 和大规模 Expert Parallelism 同时存在的条件下,loss spike 不再是偶发抖动。它会反复出现,回滚 checkpoint 也不能从根本上解决问题。
技术报告和外部分析都指向同一个现象:MoE 路由和 expert outlier 之间会形成正反馈回路。
- 某些 experts 开始产生异常大的 activation 或 gradient
- router 把更多相似 tokens 继续送进这些 experts
- experts 的异常进一步扩大
- loss spike 出现,严重时会导致 NaN 或训练中断
在小规模模型上,这种问题可能被优化器噪声或局部回滚掩盖。到了 DeepSeek-V4 这个规模,系统必须正面处理它。
Anticipatory Routing 的作用
DeepSeek-V4 针对 MoE 路由反馈回路给出的直接方案是 Anticipatory Routing。

它的核心机制是时间错位:
- 当前 step 的特征计算使用当前参数
θ_t - 当前 step 的 routing decision 使用过去
Δtsteps 的参数θ_(t-Δt)预先算好并缓存
这样做的目的很明确。router 不再根据当前可能已经进入异常区间的 expert 状态立刻做决策,而是暂时沿用一份更稳定的历史路由视图。对异常 expert 来说,这相当于提供一个短时间的缓冲窗口。
论文里提到,Anticipatory Routing 采用动态激活方式:检测到 spike 后配合短回滚启用。这样可以把额外开销限制在故障修复窗口内。
这个设计说明 DeepSeek-V4 的稳定性策略同时覆盖监控和路由调度控制。
SwiGLU Clamping 与 FP8/FP4
DeepSeek-V4 的第二个关键稳定性设计是 SwiGLU Clamping。

论文里的具体做法是:
- SwiGLU 的 linear branch clamp 到
[-10, 10] - gate branch 只做上界截断,cap 到
10
这个处理和低精度训练直接相关。DeepSeek-V4 的训练栈里包括:
- MoE expert weights 使用 FP4
- forward GEMM 使用 FP8
- 某些 indexer 路径进一步降低精度
在这种数值范围下,SwiGLU 的极端输出会快速变成 outlier amplifier。后期训练中,一旦两个投影矩阵出现对齐趋势,SwiGLU 输出可能出现更强放大效应,直接触发 overflow、underflow 或精度严重丢失。
SwiGLU Clamping 的作用就是把这个放大过程截断在低精度可承受区间内。它会损失一部分表达能力,但能换来训练过程的可持续性。对 DeepSeek-V4 这样的规模,这个取舍是合理的。
训练稳定性依赖多层组合
把 DeepSeek-V4 的稳定性设计放在一起看,会更容易理解它的整体思路。不同层面承担了不同任务。
架构层
mHC用来约束 residual mixing matrix,控制信号传播QK-Norm用来抑制 attention logits 爆炸- 前 3 层使用 hash routing,减轻 learned routing 的早期 collapse 风险
优化器层
Muon用作主要优化器Hybrid Newton-Schulz用两阶段系数做正交化近似,兼顾速度和稳定性
数值层
SwiGLU Clamping抑制 activation outlierAdamW ε = 1e-20用于需要 AdamW 的部分参数,减少低精度下 ε 对更新幅度的干扰
调度层
Anticipatory Routing用于 spike 修复窗口4K → 16K → 64K → 1M的分阶段长度扩展- 前 1T tokens 先用 dense attention,再切换到 sparse attention,给 indexer 足够的学习信号
这些设计分别对应不同失败模式。单个技巧无法覆盖全部风险。DeepSeek-V4 的工程价值就在这里:它把多种不稳定来源分拆管理,再把这些管理策略拼回一套可运行系统。
Muon 与分布式训练框架的矛盾
DeepSeek-V4 还有一个很有工程价值的部分,是它如何让 Muon 适配大规模分布式训练。
问题出在 ZeRO 这类框架默认假设优化器是 element-wise 的,而 Muon 是 matrix-wise 的。Muon 的 Newton-Schulz 迭代需要看到整个矩阵,不能像 AdamW 那样简单按分片独立更新。
DeepSeek-V4 的处理分成两部分。
Dense parameters
对 dense parameters,V4 限制 ZeRO 并行规模,并用 knapsack 算法把参数矩阵按大小分配到不同 ranks 上,尽量让各 rank 的负载接近。这样每个矩阵的 Newton-Schulz 只在一个位置执行,减少了重复计算。
MoE parameters
对 MoE parameters,V4 利用 expert 数量巨大的特点,把各层 experts 的 down / up / gate matrices 分组、拉平、填充后再均匀分发。每个 rank 尽量持有完整的小矩阵,而不是矩阵碎片。
这个思路的关键点在于:对于拥有大量 experts 的大规模 MoE,矩阵分配本身可以成为负载均衡手段。
DeepSeek-V4 与 Kimi K2 的对比
公开资料里,2025-2026 期间能看到的 trillion-scale MoE + Muon 成功案例并不多。DeepSeek-V4 和 Kimi K2 是两个重要样本。
它们在稳定性处理上的重点不同。
- Kimi K2 更强调
QK-Clip / MuonClip,从优化器侧抑制 attention logit 爆炸 - DeepSeek-V4 更强调
QK-Norm + Anticipatory Routing + SwiGLU Clamping,把稳定性更多前移到架构和调度层
这个差别说明,frontier MoE 训练还没有形成单一标准答案。不同团队可以在不同系统层面放置稳定性控制,但都必须付出额外复杂度。
对 DeepSeek-V4 的实际判断
DeepSeek-V4 的核心贡献在于完成了一次高复杂度系统集成:
- 用 HCA、CSA、SWA 让 1M Context 的成本进入可部署区间
- 用 Anticipatory Routing 和 SwiGLU Clamping 处理 trillion-scale MoE 的路由与数值风险
- 用 Muon 的分布式适配、长度调度和低精度实现把整套系统真正跑起来
从工程角度看,DeepSeek-V4 更接近一份大规模系统实施方案,而不是一个可以拆出单个组件就直接复用到所有模型上的模块集合。
适合什么任务,不适合什么任务
根据论文和分析里给出的数据,DeepSeek-V4 更适合以下任务:
- 长文档理解与摘要
- 大型代码库分析
- 多文档推理
- 长轨迹 agent 上下文维护
不太适合以下任务:
- 高精度 needle retrieval
- 法律条款逐段精确匹配
- 医学文献中的数字或实体精确抽取
- 需要在超长上下文里频繁做点对点定位的任务
如果任务核心是严格检索,RAG 仍然是更稳妥的系统设计。
最后
DeepSeek-V4 给出的最重要信号,是 frontier open-weight 模型已经进入一个新的工程阶段:长上下文、低精度训练、MoE 路由和分布式优化器开始相互耦合,单一维度的改进很难独立成立。
理解 DeepSeek-V4,最有效的方式是把它看成一套完整工程系统。它的设计质量,主要体现在这些模块如何共同运行,以及这些取舍如何在成本、质量和稳定性之间达到平衡。