DeepSeek-V4 MoE 注意力机制 长上下文 GPU优化

DeepSeek-V4 技术报告深度解读 — 迈向高效百万 Token 上下文智能

深度解析 DeepSeek-V4 系列的全部技术创新,涵盖混合注意力架构(CSA+HCA)、流形约束超连接(mHC)、Muon 优化器、基础设施优化与后训练流水线。

2026-04-24  ·  Ibin! Research Notes
TL;DR — 核心要点
  • DeepSeek-V4 系列包含两个 MoE 模型:V4-Pro(1.6T 参数,49B 激活)和 V4-Flash(284B 参数,13B 激活),均原生支持 100 万 token 上下文
  • 核心架构创新:混合 CSA(压缩稀疏注意力)+ HCA(重压缩注意力)让 1M 上下文下 FLOPs 仅为 V3.2 的 27%,KV Cache 仅为 10%
  • 流形约束超连接(mHC)将残差映射约束到双随机矩阵流形上,保证深层训练数值稳定
  • 采用 Muon 优化器替代 AdamW,配合混合 Newton-Schulz 迭代实现更快收敛
  • 后训练采用领域专家独立训练 + On-Policy 蒸馏(OPD)范式,V4-Pro-Max 在开源模型中重新定义了 SOTA

1. 模型概览

DeepSeek-V4 是 DeepSeek 系列大语言模型的第四代迭代,延续了混合专家(Mixture of Experts, MoE)架构路线。本次发布包含两款模型:V4-Pro(旗舰级,1.6T 总参数)和 V4-Flash(轻量高效,284B 总参数)。两款模型均原生支持 100 万 token 上下文窗口,这是开源模型首次在如此规模的上下文长度上实现端到端原生训练与推理。

相比前代 V3.2,V4 系列在架构层面进行了全面革新:用 CSA+HCA 混合注意力替代 MLA+DSA、引入流形约束超连接(mHC)替代传统残差连接、将 Muon 优化器作为主力训练优化器。这些改进共同作用,使得百万 token 上下文从理论可行变为实际高效。

整体架构

每个 Transformer Block 内部由注意力模块和前馈(MoE)模块组成,两者均包裹在 mHC(Manifold-Constrained HyperConnection)的 Pre-Block Mixing、Post-Block Mixing 和 Residual Mixing 三层操作中。整体结构如下图所示:

flowchart TB subgraph TB1["DeepSeek-V4 Transformer Block x L"] E["Embedding"] --> PBM1["Pre-Block Mixing\nmHC"] PBM1 --> ATT["CSA / HCA\n混合注意力"] ATT --> PoBM1["Post-Block Mixing\nmHC"] PoBM1 --> RM1["Residual Mixing\nmHC"] RM1 --> PBM2["Pre-Block Mixing\nmHC"] PBM2 --> FFN["DeepSeekMoE"] FFN --> PoBM2["Post-Block Mixing\nmHC"] PoBM2 --> RM2["Residual Mixing\nmHC"] end RM2 --> PH["Prediction Head\nLM Loss"] PH --> MTP["MTP Modules\nMTP Loss"]
🚀
架构亮点
mHC 取代了传统的简单残差连接(x + F(x)),在每个子模块前后引入三步混合操作。这一改进是 V4 能稳定训练 61 层 Transformer 的关键所在。
1.6T
V4-Pro 总参数
49B
V4-Pro 激活参数
284B
V4-Flash 总参数
13B
V4-Flash 激活参数
1M
上下文长度
33T
预训练 Token 数

模型规格对比

下表详细对比了 V4-Pro、V4-Flash 与前代 V3.2 在关键维度上的差异:

特性 DeepSeek-V3.2 V4-Flash V4-Pro
总参数 671B 284B 1.6T
激活参数 37B 13B 49B
Transformer 层数 - 43 61
隐藏维度 - 4096 7168
注意力类型 MLA + DSA CSA + HCA 混合 CSA + HCA 混合
上下文长度 128K 1M 1M
1M FLOPs(相对 V3.2) 100% 10% 27%
1M KV Cache(相对 V3.2) 100% 7% 10%
💡
Key Insight
V4-Flash 仅用 284B 总参数和 13B 激活参数,就在 1M 上下文下将 FLOPs 降至 V3.2 的 10%,KV Cache 降至 7%。这意味着在同等硬件上,V4-Flash 可以处理远超 V3.2 的上下文长度,而 V4-Pro 则在保持高质量输出的前提下实现了同样量级的效率飞跃。

2. 混合注意力架构(CSA + HCA)

DeepSeek-V4 最核心的架构创新在于其混合注意力机制。传统 Transformer 在处理超长上下文时面临两个根本性挑战:注意力计算的二次复杂度导致 FLOPs 爆炸,以及 KV Cache 的线性增长导致显存耗尽。V4 通过将 CSA(Compressed Sparse Attention)和 HCA(Heavily Compressed Attention)组合使用,同时解决了这两个问题。

2.1 Compressed Sparse Attention(CSA)— 压缩稀疏注意力

CSA 是 V4 注意力架构的主力模块,核心思想是:先将 KV 序列压缩为短序列,再用稀疏选择机制挑出最相关的部分进行注意力计算。具体包含以下五个关键组件:

Token-Level Compressor(Token 级压缩器)

m 个连续 token 的 KV 表征被压缩为 1 个条目。压缩过程并非简单的池化,而是通过两组可学习的 KV 投影 C^aC^b 和对应的压缩权重 Z^aZ^b,使用 Softmax 加权求和得到压缩后的 KV 条目 C^Comp。这种方式保留了 token 间的相对重要性信息,而非均匀池化。

Lightning Indexer(闪电索引器)

用低秩查询(low-rank query)为每个压缩 KV 块生成索引分数 I_{t,s}。通过 Top-k 选择器从所有压缩块中筛选出与当前查询最相关的 k 个块用于后续的稀疏注意力计算。这一步骤的计算开销极低,因为使用的是低秩投影而非全维查询。

Shared Key-Value MQA(共享键值多查询注意力)

被选中的压缩 KV 条目同时作为 Key 和 Value(即 K=V),使用 Multi-Query Attention(MQA)方式执行核心注意力运算。共享 KV 的设计进一步减少了存储开销。

Grouped Output Projection(分组输出投影)

n_h 个注意力头分成 g 组。每组头先投影到低维空间,再拼接合并回原始维度。这一设计在不损失表达能力的前提下显著减少了输出投影的计算量。

Sliding Window(滑动窗口)

额外保留最近 n_win = 128 个未压缩 KV 用于捕获局部依赖关系。滑动窗口部分的注意力与稀疏注意力部分的结果通过拼接方式合并,确保模型在关注全局信息的同时不丢失近邻上下文。

flowchart LR H["Hidden States\nof KV Tokens"] --> TC1["Token-Level\nCompressor"] TC1 --> CKV["Compressed\nKV Entries\n1/m 压缩"] CKV --> LI["Lightning Indexer\nTop-k 选择"] LI --> SCKV["Selected\nCompressed KV"] Q["Query Token"] --> TC2["Token-Level\nCompressor"] TC2 --> IQ["Indexer Queries"] IQ --> LI SCKV --> CAT["Concatenation\n+ Sliding Window KV"] CAT --> MQA["Shared KV\nMulti-Query Attention"] Q --> MQA MQA --> OUT["Attention Output"]
⚠️
注意事项
CSA 的压缩率 m 是一个关键超参数。V4-Pro 使用 m=4,意味着每 4 个 token 压缩为 1 个。过大的 m 会导致信息丢失,过小则无法有效减少计算量。Lightning Indexer 的 Top-k 值同样需要在召回率和效率之间权衡。

2.2 Heavily Compressed Attention(HCA)— 重压缩注意力

HCA 是 CSA 的"极端版本",使用更激进的压缩率 m',其中 m' >> m。在 V4-Pro 中,HCA 的压缩率达到了 m' = 128,相比 CSA 的 m = 4 高出 32 倍。

HCA 与 CSA 的关键区别在于:

HCA 的设计哲学是:用极端压缩换取全局视野。虽然单个 HCA 层的信息保真度不如 CSA,但通过与 CSA 交替堆叠,模型能够在不同层级上兼顾全局概览和局部细节。

💡
Key Insight
HCA 的 128x 压缩意味着 100 万 token 的 KV 序列被压缩为仅约 7800 个条目,这使得稠密注意力在计算上完全可行。HCA 层为模型提供了"鸟瞰图"般的全局上下文理解能力。

2.3 混合配置策略

CSA 和 HCA 并非孤立使用,而是按照精心设计的混合策略在不同层间交替部署:

💡
KV Cache 压缩的里程碑意义
在 1M token 上下文设定下,相比传统 BF16 GQA8(head dim=128)的配置,DeepSeek-V4 的 KV Cache 可以缩减到约 2%。这使得百万 token 上下文从理论可能变为实际可行。

KV Cache 节省量对比

传统 BF16 GQA8
100%
V3.2 (MLA+DSA)
~50%
V4-Pro (CSA+HCA)
10%
V4-Flash (CSA+HCA)
7%

3. 流形约束超连接(Manifold-Constrained HyperConnection, mHC)

残差连接(Residual Connection)是深度网络训练的基石。传统 Transformer 使用简单的加法残差 x + F(x),而 DeepSeek-V3 引入了超连接(HyperConnection, HC)扩展残差宽度。然而,V4 的工程实践发现,原始 HC 在深层堆叠时会出现数值不稳定问题。mHC 是对此问题的系统性解决方案。

标准超连接(HC)回顾

标准 HC 在残差流中引入三个线性映射 A_lB_lC_l。其中 A_l 控制子模块的输入混合,C_l 控制子模块输出混合,而 B_l 负责残差流的直接传播映射。当这三个矩阵可自由学习时,深层网络中 B_l 的连续乘积 B_L * B_{L-1} * ... * B_1 可能出现爆炸或消失。

mHC 的约束方案

mHC 的核心思想是将残差映射矩阵 B_l 约束到双随机矩阵流形 M(Birkhoff 多面体)上:

// 双随机矩阵流形的数学定义
M = {M in R^{n x n} | M * 1_n = 1_n,
                       M^T * 1_n = 1_n,
                       M >= 0}
// 关键性质: 谱范数 ||B_l||_2 <= 1(非扩张性)
// 使用 Sinkhorn-Knopp 算法(20 次迭代)投影到流形
Math

双随机矩阵的三个约束条件保证了每行和每列之和为 1,且所有元素非负。这意味着:

Sinkhorn-Knopp 投影

在每次前向传播中,B_l 的原始参数通过 Sinkhorn-Knopp 算法(固定 20 次迭代)投影到双随机矩阵流形上。该算法交替进行行归一化和列归一化,收敛速度极快。

A_l 和 C_l 的约束

输入混合矩阵 A_l 和输出混合矩阵 C_l 通过 Sigmoid 函数约束为非负有界值。这确保了子模块的输入和输出混合不会出现符号翻转。

动态参数化(Dynamic Parameterization)

mHC 的参数分解为两部分:

⚠️
训练稳定性的代价
Sinkhorn-Knopp 投影引入了额外的计算开销(每层每步 20 次迭代),但相对于整个 Transformer 块的前向传播而言,这一开销可以忽略不计。更重要的是,mHC 消除了原始 HC 在 40+ 层深度时出现的训练发散问题,使得 V4-Pro 的 61 层架构成为可能。

4. Muon 优化器

DeepSeek-V4 在优化器选择上做出了重大转变:对大部分模块使用 Muon 优化器 替代了传统的 AdamW。Muon 的核心特点是在参数更新前对梯度矩阵进行正交化处理,使得更新方向更加均匀地分布在参数空间中。

适用范围

并非所有模块都使用 Muon。具体分配如下:

模块 优化器 原因
Attention、FFN/MoE 权重 Muon 矩阵参数,正交化有效
Embedding AdamW 稀疏更新,正交化不适用
Prediction Head AdamW 与 Embedding 共享/对称
mHC 静态偏置 AdamW 低维向量,非矩阵
RMSNorm AdamW 缩放参数,非矩阵

混合 Newton-Schulz 迭代

Muon 优化器的关键步骤是对梯度矩阵进行正交化。V4 使用了混合 Newton-Schulz 迭代来实现高效的正交化近似:

总共 10 步迭代就能将梯度矩阵正交化到足够的精度,且全部操作可以在 GPU 上以矩阵乘法形式高效执行。

QK-Clip 不再需要

由于 V4 在 Q/KV 投影输出上直接应用了 RMSNorm,注意力 logit 的数值范围天然有界,因此不需要 QK-Clip(V3 中用于防止注意力 logit 溢出的技巧)。这简化了训练流水线并减少了一个超参数。

混合 ZeRO 策略

Muon 优化器的状态(一阶和二阶矩估计)需要在多 GPU 间分片。V4 使用背包算法(Knapsack Algorithm)将参数矩阵最优地分配到各个 rank 上,确保每个 rank 的 Muon 状态内存占用尽量均衡。

🚀
Muon 的收敛优势
Muon 的正交化梯度更新使得参数空间的探索更加高效,实验显示在同等训练 token 数下,Muon 比 AdamW 实现了更低的训练损失和更好的下游任务性能。这也是 V4 能在 33T tokens 的训练预算下达到如此性能水平的重要原因之一。

5. 基础设施创新

DeepSeek-V4 的技术报告用了相当大的篇幅介绍基础设施层面的创新。这些底层优化往往是百万 token 上下文从"理论可行"到"实际可部署"的关键。

5.1 细粒度通信-计算重叠(Expert Parallelism)

MoE 模型的 Expert Parallelism 面临一个核心瓶颈:专家分布在不同 GPU 上,token 需要通过 All-to-All 通信路由到目标专家。传统方案中,通信和计算是串行执行的,浪费了大量 GPU 算力。

V4 将 MoE 层的执行分为 4 个阶段:Dispatch(发送 token 到目标 GPU)、Linear-1(第一层线性变换)、Linear-2(第二层线性变换)、Combine(收集结果回原始 GPU)。通过将专家拆分为多个 wave,实现了细粒度的流水线式通信-计算重叠。

方案 策略 理论加速
Naive 串行执行所有阶段 1.0x
Comet Dispatch+L1, L2+Combine 两组重叠 1.42x
DeepSeek-V4 细粒度 wave 级流水线 1.92x
💡
通信隐藏阈值
每 GBps 互联带宽可隐藏 6.1 TFLOP/s 的计算。一旦带宽达到此阈值,通信不再是瓶颈。这一分析为 MoE 模型的硬件配置提供了清晰的决策依据。

该方案的开源实现名为 MegaMoE,集成在 DeepGEMM 项目中。

5.2 TileLang DSL

V4 的训练和推理框架使用 TileLang(一种领域专用语言)替代了数百个手写的 Torch ATen 算子。TileLang 带来了以下改进:

🚀
工程哲学
TileLang 体现了 DeepSeek 团队"正确性优先于性能"的工程哲学。在大规模训练场景下,一个 bit flip 级别的数值错误可能导致数天的训练浪费。Z3 形式化验证和禁用 fast-math 的决策看似保守,实则是对训练稳定性的最佳投资。

5.3 Batch-Invariant & Deterministic Kernel

训练的可复现性(reproducibility)是调试和科学研究的基础。V4 在多个关键算子上实现了 batch-invariant 和确定性计算:

⚠️
性能与确定性的权衡
放弃 split-k 和 cuBLAS 的非确定性优化导致了约 3-5% 的单步训练性能下降。但 DeepSeek 团队认为,确定性训练带来的调试效率提升和实验可复现性远远弥补了这一损失。在 33T token 的训练规模下,每次因非确定性 bug 导致的回滚代价都是巨大的。

5.4 FP4 量化感知训练

V4 在训练期间对部分权重和激活进行了 FP4(MXFP4)量化感知训练,以减少内存占用和通信开销:

FP4 到 FP8 的无损反量化

MXFP4 使用 E2M1 格式(2 位指数 + 1 位尾数),而 FP8 使用 E4M3 格式(4 位指数 + 3 位尾数)。由于 FP8 的指数位比 FP4 多 2 位,FP4 到 FP8 的反量化是无损的 -- 每个 FP4 值都能精确表示为 FP8 值。这意味着在需要 FP8 精度的计算路径上,可以直接从 FP4 存储恢复而不引入额外误差。

Index 分数量化

Lightning Indexer 的 Top-k 选择分数从 FP32 量化到 BF16,Top-k 召回率达到 99.7%。这意味着仅 0.3% 的 token 会因为量化误差选错压缩块,对最终性能的影响微乎其微。

5.5 推理框架 KV Cache 设计

V4 的推理框架设计了异构 KV Cache 体系,针对 CSA/HCA 混合注意力的特殊需求进行优化:

State Cache vs Classical KV Cache

On-Disk KV Cache 三种策略

针对不同的延迟和存储需求,V4 提供了三种 KV Cache 管理策略:

策略 描述 显存占用 首 Token 延迟 适用场景
Full SWA Caching 完整缓存所有 SWA KV 低延迟在线推理
Periodic Checkpointing 周期性保存 SWA 检查点 平衡型部署
Zero SWA Caching 不缓存 SWA KV,按需重算 极长上下文/离线批处理

6. 预训练

V4 的预训练遵循"从短到长、从稠密到稀疏"的渐进策略,在 33T+ tokens 的数据上完成训练。

数据准备

序列长度渐进扩展

训练过程中序列长度逐步扩展,使模型渐进适应更长的上下文:

阶段 1: 4K
4K
阶段 2: 16K
16K
阶段 3: 64K
64K
阶段 4: 1M
1M

注意力模式切换

训练先以稠密注意力(Full Attention)warmup 约 1T tokens,让模型在完整注意力模式下建立基础语言能力。之后再引入 CSA+HCA 的稀疏注意力机制,让模型在保持基础能力的同时学习高效的长上下文处理策略。

训练稳定性技巧

大规模预训练中的两个关键稳定性技巧:

Anticipatory Routing(前瞻性路由)

MoE 的路由模块使用历史参数 θ_{t-Δt} 进行前向计算,而非当前步的参数。这一设计解耦了骨干网络和路由的同步更新,防止路由决策和专家参数之间的反馈循环导致训练振荡。

SwiGLU Clamping

SwiGLU 激活函数的两个分量分别进行数值裁剪:

这防止了 FP16/BF16 训练中偶发的激活值溢出问题。

💡
渐进式训练的必要性
直接在 1M 上下文长度上训练是不现实的:长序列的梯度方差大、显存占用高、通信开销重。V4 的 4K->16K->64K->1M 渐进策略让模型在每个阶段都能充分利用计算资源,同时避免了长序列训练初期的不稳定。

7. 后训练

V4 的后训练流水线包含两个核心阶段:Specialist Training(领域专家独立训练)和 On-Policy Distillation(在线策略蒸馏)。这一范式使得最终的 V4-Pro-Max 模型在多个基准上达到了开源模型的新 SOTA。

7.1 Specialist Training(领域专家训练)

不同于传统的"一锅炖"后训练策略,V4 将后训练拆解为多个独立的领域专家训练任务。每个专家针对特定领域进行深度优化:

两阶段训练流程

每个领域专家遵循相同的两阶段训练流程:

  1. SFT(Supervised Fine-Tuning):在领域特定的标注数据上进行监督微调
  2. GRPO(Group Relative Policy Optimization):基于奖励模型的强化学习训练,进一步提升推理能力和输出质量

三种推理模式

训练完成的模型支持三种推理模式,可根据任务复杂度动态选择:

模式 描述 延迟 适用场景
Non-think 直接输出,不进行链式推理 简单问答、翻译等
Think High 中等深度的链式推理 数学题、代码生成
Think Max 最大深度的链式推理 竞赛题、复杂 Agent 任务

Generative Reward Model(GRM)

V4 使用模型自身作为奖励模型(Generative Reward Model),而非训练一个独立的 Reward Model。GRM 通过生成式的方式对候选回复进行评估打分,这避免了传统标量奖励模型的信息瓶颈问题。

XML-based Tool-Call Schema

V4 使用基于 XML 的工具调用模式(|DSML|),替代了传统的 JSON function-calling 格式。XML 格式在嵌套结构和流式输出方面具有天然优势。

Interleaved Thinking

在工具调用场景中,V4 保留了全部推理历史(interleaved thinking),而非仅保留最终的工具调用决策。这使得模型在多步工具调用链中能够回溯先前的推理过程,做出更连贯的决策。

Quick Instruction

引入特殊 token 实现 KV Cache 复用的辅助任务并行。当用户发起一个辅助查询(如"顺便帮我查一下...")时,Quick Instruction 允许模型在不清空主任务 KV Cache 的前提下并行处理辅助任务。

7.2 On-Policy Distillation(OPD)

OPD 是将多个领域专家的知识融合到单一学生模型中的关键步骤。其核心特点:

💡
OPD 的创新之处
传统蒸馏通常使用教师模型的采样结果(off-policy),容易出现分布偏移。V4 的 on-policy 蒸馏让学生模型在自己的输出分布上学习教师的修正方向,收敛更稳定、泛化更好。结合 full-vocabulary logit 对齐,OPD 实现了几乎无损的知识压缩。

8. 评估结果

V4-Pro-Max 在多个权威基准测试上展示了与顶级闭源模型匹配甚至超越的性能。以下数据来源于技术报告 Table 6:

Benchmark Opus 4.6 Max GPT-5.4 xHigh Gemini-3.1 High DS-V4-Pro Max
MMLU-Pro 89.1 87.5 91.0 87.5
SimpleQA-Verified 46.2 45.3 75.6 57.9
Codeforces - 3168 3052 3206
HMMT 2026 96.2 97.7 94.7 95.2
MRCR 1M 92.9 - 76.3 83.5
Terminal Bench 2.0 65.4 75.1 68.5 67.9
SWE Verified 80.8 - 80.6 80.6
Toolathlon 47.2 54.6 48.8 51.8

关键亮点解读

🚀
Codeforces 排名 23
DS-V4-Pro Max 在 Codeforces 上达到 3206 分,这是开源模型首次匹配甚至超越闭源模型的竞赛编程能力。排名全球第 23,意味着模型已经具备了 Grandmaster 级别的算法设计能力。
💡
SimpleQA 大幅领先
SimpleQA-Verified 得分 57.9,相比其他开源模型领先约 20 个百分点。这表明 V4 在事实性问答(factual QA)方面有了质的飞跃,可能得益于更大规模的预训练数据和更好的知识蒸馏。

其他重要成绩

性能对比可视化

Codeforces 评分

DS-V4-Pro Max
3206
GPT-5.4 xHigh
3168
Gemini-3.1 High
3052

MRCR 1M 上下文

Opus 4.6 Max
92.9
DS-V4-Pro Max
83.5
Gemini-3.1 High
76.3

SWE Verified

Opus 4.6 Max
80.8
Gemini-3.1 High
80.6
DS-V4-Pro Max
80.6
🚀
开源模型的新标杆
V4-Pro-Max 作为开源模型,在多个基准上已经与顶级闭源模型(Opus 4.6、GPT-5.4、Gemini-3.1)处于同一梯队。特别是在 Codeforces 和 SimpleQA 上的表现,标志着开源与闭源模型之间的能力差距正在被快速缩小。

参考资料

  1. DeepSeek-V4 Technical Report — 官方技术报告与模型权重合集
  2. DeepSeek-V4-Pro 开源推理实现 — 官方推理框架代码,包含 CSA/HCA 注意力和异构 KV Cache 实现
  3. MegaMoE 开源实现 — 细粒度通信-计算重叠的 Expert Parallelism 实现,集成在 DeepGEMM 项目中