feat: launch LLM Atlas research course
This commit is contained in:
@@ -0,0 +1,815 @@
|
||||
---
|
||||
import BaseLayout from "@/layouts/BaseLayout.astro";
|
||||
import DeepSeekLineage from "@/components/DeepSeekLineage.astro";
|
||||
|
||||
const toc = [
|
||||
["00", "lineage", "先看完整论文谱系"],
|
||||
["01", "dense", "LLM:先建立 Dense 基线"],
|
||||
["02", "moe", "DeepSeekMoE:专家特化"],
|
||||
["03", "mla", "V2:MLA 压缩 KV Cache"],
|
||||
["04", "v3", "V3:算法—系统协同"],
|
||||
["05", "grpo", "DeepSeekMath:GRPO"],
|
||||
["06", "r1", "R1:RL 涌现推理"],
|
||||
["07", "v32", "V3.2:稀疏注意力与 Agent"],
|
||||
["08", "v4", "V4:百万上下文"],
|
||||
["09", "k3", "DeepSeek 怎样流入 K3"],
|
||||
["↳", "papers", "精读顺序与来源"],
|
||||
];
|
||||
---
|
||||
|
||||
<BaseLayout
|
||||
title="DeepSeek 论文谱系:从 MoE、MLA 到 R1 与 V4"
|
||||
description="沿 DeepSeek LLM、DeepSeekMoE、V2、V3、DeepSeekMath、R1、V3.2 和 V4 的关键论文,理解 MoE、MLA、FP8、GRPO 与长上下文。"
|
||||
section="deepseek"
|
||||
>
|
||||
<header class="page-hero deepseek-hero">
|
||||
<div class="page-hero-inner">
|
||||
<div>
|
||||
<p class="eyebrow"><span>SPOTLIGHT / DEEPSEEK</span> ALGORITHM × SYSTEM</p>
|
||||
<h1>一条少见的、环环相扣的<br />开放论文主线</h1>
|
||||
<p class="lead">
|
||||
DeepSeek 的价值不只在某个模型分数,而在持续公开“为什么这样设计”:
|
||||
容量贵,就做细粒度 MoE;KV Cache 贵,就做 MLA;训练贵,就做 FP8 与通信重叠;
|
||||
推理难,就把可验证奖励规模化。
|
||||
</p>
|
||||
</div>
|
||||
<dl class="page-facts">
|
||||
<div><dt>SPAN</dt><dd>2024.01 → 2026.06</dd></div>
|
||||
<div><dt>CORE</dt><dd>MoE · MLA · FP8 · GRPO</dd></div>
|
||||
<div><dt>LINE</dt><dd>Dense → Sparse → Reasoning</dd></div>
|
||||
<div><dt>K3 LINK</dt><dd>MLA · MoE · Muon · 1M</dd></div>
|
||||
<div><dt>STATUS</dt><dd>重点专题 · 首版</dd></div>
|
||||
</dl>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="report-shell">
|
||||
<aside class="side-rail" aria-label="本页目录">
|
||||
<p>CONTENTS</p>
|
||||
<ol>
|
||||
{toc.map(([number, id, label]) => (
|
||||
<li><a href={`#${id}`}><span>{number}</span>{label}</a></li>
|
||||
))}
|
||||
</ol>
|
||||
<div class="rail-note">
|
||||
<b>本页选择</b>
|
||||
聚焦通用模型主线;Coder、Prover、VL/OCR、Engram 与硬件论文将在对应专题展开。
|
||||
</div>
|
||||
</aside>
|
||||
|
||||
<article class="article">
|
||||
<section class="article-section" id="lineage">
|
||||
<p class="eyebrow"><span>00</span> THE LINEAGE</p>
|
||||
<h2>每一代都在偿还上一代最昂贵的账单</h2>
|
||||
<p class="lede">
|
||||
把 DeepSeek 看成模型名字序列会很乱;把它看成“容量、缓存、训练、推理、长上下文”五张账单,
|
||||
技术演进就清楚了。
|
||||
</p>
|
||||
<DeepSeekLineage />
|
||||
<div class="thesis">
|
||||
<span class="micro-label">核心观察</span>
|
||||
<p>
|
||||
DeepSeek 的强项是把模型结构和硬件约束写在同一张设计图里。MLA 不只是新 attention,
|
||||
它直接针对服务时 KV Cache;FP8 不只是少用几个比特,它要求累加精度、缩放和通信共同配合;
|
||||
GRPO 不只是 PPO 变体,它直接移除同规模 critic 的显存负担。
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="dense">
|
||||
<p class="eyebrow"><span>01</span> DEEPSEEK LLM</p>
|
||||
<h2>先用 Dense 模型建立基线:规模、数据和双语能力</h2>
|
||||
<p>
|
||||
2024 年初的 <a href="https://arxiv.org/abs/2401.02954">DeepSeek LLM</a> 发布 7B 与 67B dense 模型,
|
||||
在约 2T 中英文 Token 上预训练。它的重要性不在今天看来并不夸张的参数量,而在于建立后续研究的可比基线:
|
||||
tokenizer、数据配方、训练稳定性、中文评测和 scaling behavior 有了统一起点。
|
||||
</p>
|
||||
<h3>为什么先做 Dense 很重要</h3>
|
||||
<p>
|
||||
MoE 同时改变总参数、激活参数、路由、通信和数据分配。没有 dense 基线,很难判断收益来自“更多容量”
|
||||
还是来自别的训练差异。DeepSeek LLM 还训练小规模模型拟合 scaling laws,
|
||||
再用这些规律选择 67B 的超参数;这条“先小规模试验,再外推大模型”的方法后来在 V3/K3 都持续出现。
|
||||
</p>
|
||||
<div class="plain-language">
|
||||
<b>把这一代当作实验坐标系</b>
|
||||
<p>
|
||||
DeepSeek LLM 回答的是“如果我们先不引入稀疏专家和低秩缓存,一套扎实的中英 dense Transformer 能到哪里?”
|
||||
后面的论文才有明确的对照物。
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="moe">
|
||||
<p class="eyebrow"><span>02</span> DEEPSEEKMOE</p>
|
||||
<h2>专家越大不一定越专:把一个大专家拆成许多细粒度专家</h2>
|
||||
<p>
|
||||
传统 MoE 往往把 FFN 分成少数大专家,每个 Token 选 1–2 个。问题是一个大专家仍可能同时处理许多无关知识,
|
||||
专家之间也会重复学习公共能力。<a href="https://arxiv.org/abs/2401.06066">DeepSeekMoE</a>
|
||||
提出两项互补策略。
|
||||
</p>
|
||||
<div class="moe-compare">
|
||||
<article>
|
||||
<span>CONVENTIONAL MOE</span>
|
||||
<h3>少数大专家</h3>
|
||||
<div class="expert-pool large"><i>E1</i><i>E2</i><i>E3</i><i>E4</i></div>
|
||||
<p>每个专家覆盖面广,公共知识在多个专家中重复;可组合的专业分工有限。</p>
|
||||
</article>
|
||||
<article>
|
||||
<span>DEEPSEEKMOE</span>
|
||||
<h3>细粒度 routed + shared</h3>
|
||||
<div class="expert-pool fine"><i>S</i><i>e1</i><i>e2</i><i>e3</i><i>e4</i><i>e5</i><i>e6</i><i>e7</i></div>
|
||||
<p>shared expert 吸收公共知识;更多小 routed experts 可以按 Token 组合出细分能力。</p>
|
||||
</article>
|
||||
</div>
|
||||
<h3>Fine-Grained Expert Segmentation</h3>
|
||||
<p>
|
||||
在保持单 Token 激活计算近似不变时,把专家 FFN 切得更小,同时选择更多个小专家。
|
||||
组合数显著增加:同样的 Token 可以同时调用“代码语法”“Python 库”“矩阵计算”等几个子专长,
|
||||
不必把它们硬塞进一个笼统的“代码专家”。
|
||||
</p>
|
||||
<h3>Shared Expert Isolation</h3>
|
||||
<p>
|
||||
某些变换几乎每个 Token 都需要。如果全部交给 routed experts,多个专家会重复学习。
|
||||
DeepSeekMoE 把 shared experts 始终激活,承担公共知识;路由专家获得更强动力去形成差异化专长。
|
||||
这套组织直接进入 DeepSeek-V2/V3,也成为 Kimi K3 Stable LatentMoE 的结构祖先。
|
||||
</p>
|
||||
<div class="warning-note">
|
||||
<b>MoE 的代价从 FLOPs 转移到了通信</b>
|
||||
<p>
|
||||
Token 必须被发送到拥有对应专家的设备。专家越细、选择越多,all-to-all、负载波动和权重读取越可能成为瓶颈。
|
||||
因此模型侧路由与系统侧 Expert Parallel 从来不能分开看。
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="mla">
|
||||
<p class="eyebrow"><span>03</span> DEEPSEEK-V2 / MLA</p>
|
||||
<h2>训练只付一次参数成本,KV Cache 却在每个请求、每个 Token 上重复付费</h2>
|
||||
<p>
|
||||
<a href="https://arxiv.org/abs/2405.04434">DeepSeek-V2</a> 是整条谱系的关键转折:
|
||||
236B 总参数、21B 激活参数、128K 上下文,把 DeepSeekMoE 用于训练经济性,
|
||||
再用 Multi-head Latent Attention(MLA)直接攻击推理服务的内存瓶颈。
|
||||
</p>
|
||||
<div class="stat-strip">
|
||||
<div><b>−42.5%</b><span>训练成本</span></div>
|
||||
<div><b>−93.3%</b><span>KV Cache</span></div>
|
||||
<div><b>5.76×</b><span>最大生成吞吐</span></div>
|
||||
<p>均为 V2 报告相对 DeepSeek 67B 的特定配置结果,不应外推为任意硬件上的固定倍数。</p>
|
||||
</div>
|
||||
|
||||
<h3>标准 MHA 为什么会让 KV Cache 爆长</h3>
|
||||
<p>
|
||||
自回归生成每一步都要查询历史 Token。历史的 K/V 不变,因此缓存起来避免重算。
|
||||
但 MHA 为每层、每个 Token、每个 head 保存 K 和 V;batch、序列和层数一大,缓存会吃掉大量显存,
|
||||
直接限制并发和长上下文。
|
||||
</p>
|
||||
<div class="mla-visual" role="img" aria-label="标准多头注意力与 MLA 缓存差异">
|
||||
<div class="mha-side">
|
||||
<span>MHA CACHE / EACH TOKEN</span>
|
||||
<div class="heads"><i>K₁</i><i>V₁</i><i>K₂</i><i>V₂</i><i>K₃</i><i>V₃</i><i>K₄</i><i>V₄</i></div>
|
||||
<p>每个 head 各存一份 K/V。</p>
|
||||
</div>
|
||||
<strong>→</strong>
|
||||
<div class="latent-side">
|
||||
<span>MLA CACHE / EACH TOKEN</span>
|
||||
<div class="latent"><i>cᴷⱽ</i></div>
|
||||
<p>先存低维 joint latent,计算时再上投影。</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="formula">
|
||||
cₜᴷⱽ = Wᴰᴷⱽhₜ kₜᶜ = Wᵁᴷcₜᴷⱽ vₜᶜ = Wᵁⱽcₜᴷⱽ
|
||||
<small>
|
||||
省略 decoupled RoPE key、各 head 展开与权重吸收细节。核心是 K/V 先联合低秩压缩,缓存 latent 而非完整多头表示。
|
||||
</small>
|
||||
</div>
|
||||
<h3>为什么 MLA 比简单 MQA/GQA 更有野心</h3>
|
||||
<p>
|
||||
MQA 让所有 Query heads 共用一组 K/V,GQA 让一组 Query heads 共用 K/V,缓存更小但容量可能下降。
|
||||
MLA 用低秩 latent 保留可恢复的内容子空间,并把 RoPE 相关部分分离,追求接近 MHA 的表达力与更小缓存。
|
||||
它后来被 Kimi K2/K2.5 采用,并在 K3 中作为周期性全局注意力保留。
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="v3">
|
||||
<p class="eyebrow"><span>04</span> DEEPSEEK-V3</p>
|
||||
<h2>V3 的亮点不是一个技巧,而是四层协同</h2>
|
||||
<p>
|
||||
<a href="https://arxiv.org/abs/2412.19437">DeepSeek-V3</a> 扩到 671B 总参数、37B 激活参数,
|
||||
在 14.8T Token 上预训练。报告给出的完整训练用量约 2.788M H800 GPU hours,并称整个训练没有不可恢复的 loss spike 或回滚。
|
||||
这组数字之所以引人注目,是因为它背后同时改动模型、目标、数值和系统。
|
||||
</p>
|
||||
<div class="four-layer">
|
||||
<article><span>MODEL</span><h3>MLA + DeepSeekMoE</h3><p>沿用 V2 验证过的低缓存 attention 与细粒度专家。</p></article>
|
||||
<article><span>ROUTING</span><h3>Aux-loss-free balance</h3><p>用动态 expert bias 调整负载,减少辅助平衡损失对主目标的干扰。</p></article>
|
||||
<article><span>OBJECTIVE</span><h3>Multi-Token Prediction</h3><p>训练时预测多个未来 Token,增加训练信号,并可转化为推测解码草稿能力。</p></article>
|
||||
<article><span>SYSTEM</span><h3>FP8 + DualPipe</h3><p>低精度训练、计算通信重叠、跨节点专家并行共同压低成本。</p></article>
|
||||
</div>
|
||||
|
||||
<h3>无辅助损失负载均衡</h3>
|
||||
<p>
|
||||
MoE 必须避免少数专家过载。传统做法加入 load-balancing auxiliary loss,
|
||||
但它与语言建模主目标可能冲突:为了均匀而把 Token 送给次优专家。V3 为每个专家维护 bias,
|
||||
根据近期负载上调冷门专家、下调热门专家;bias 只影响路由选择,不直接进入最终门控权重,
|
||||
从而把“系统要均衡”和“模型要准确”更松地解耦。
|
||||
</p>
|
||||
|
||||
<h3>FP8 训练真正难在哪</h3>
|
||||
<p>
|
||||
FP8 动态范围和有效精度有限,不能简单把所有 tensor 强转为 8 位。V3 使用细粒度量化、较高精度累加、
|
||||
在线缩放和特定敏感模块的高精度保留;同时让低精度通信减少跨卡带宽。
|
||||
论文最值得看的不是“首次大规模 FP8”宣传,而是哪些路径降精度、哪些路径绝不降,以及误差怎样被控制。
|
||||
</p>
|
||||
|
||||
<h3>DualPipe:流水线的空泡是一笔真金白银</h3>
|
||||
<p>
|
||||
Pipeline Parallel 把层切到不同 stage;朴素调度会让设备在前向/反向依赖之间等待。
|
||||
DualPipe 从流水线两端同时喂入 micro-batch,并重叠前向、反向与专家通信,尽量把空泡藏在计算后面。
|
||||
它与 DeepEP 的高吞吐/低延迟 all-to-all 一起,把 MoE 理论稀疏性变成真实集群效率。
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="grpo">
|
||||
<p class="eyebrow"><span>05</span> DEEPSEEKMATH / GRPO</p>
|
||||
<h2>GRPO:不用再养一个和策略模型同样昂贵的 Critic</h2>
|
||||
<p>
|
||||
<a href="https://arxiv.org/abs/2402.03300">DeepSeekMath</a> 不只是数学模型论文。
|
||||
它在 7B 模型和 120B 数学相关 Token 上验证数据工程,同时提出 Group Relative Policy Optimization,
|
||||
为后来 DeepSeek-V2 对齐和 R1 大规模推理 RL 铺路。
|
||||
</p>
|
||||
<h3>PPO 的显存账单</h3>
|
||||
<p>
|
||||
经典 RLHF/PPO 常同时保留 policy、reference、reward model 和 value/critic model。
|
||||
对大模型而言,critic 往往与 policy 同量级。GRPO 对同一道题采样一组答案,
|
||||
用组内奖励的均值和标准差构造相对优势,省去单独 value model。
|
||||
</p>
|
||||
<div class="grpo-visual">
|
||||
<div class="prompt"><span>PROMPT</span><b>证明 / 求解一道题</b></div>
|
||||
<i>sample group</i>
|
||||
<div class="answers">
|
||||
<div><b>y₁</b><span>reward 0</span></div>
|
||||
<div><b>y₂</b><span>reward 1</span></div>
|
||||
<div><b>y₃</b><span>reward 0.7</span></div>
|
||||
<div><b>y₄</b><span>reward 0.2</span></div>
|
||||
</div>
|
||||
<i>normalize</i>
|
||||
<div class="advantage"><span>RELATIVE ADVANTAGE</span><b>高于组均值的轨迹被鼓励</b></div>
|
||||
</div>
|
||||
<div class="formula">
|
||||
Âᵢ = (rᵢ − mean(r₁…rᴳ)) / (std(r₁…rᴳ) + ε)
|
||||
<small>GRPO 完整目标仍包含 clipped policy ratio 与 KL 约束;这里只展示“组相对优势”这一核心直觉。</small>
|
||||
</div>
|
||||
<h3>组相对不是免费午餐</h3>
|
||||
<p>
|
||||
一道题要采样多条答案,rollout 成本仍然很高;奖励若不可验证或存在偏差,组内比较也会放大奖励漏洞。
|
||||
当一组奖励全相同,归一优势几乎不给学习信号。R1 的成功因此同时依赖可验证数学/代码奖励、足够多样的采样和大规模基础设施。
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="r1">
|
||||
<p class="eyebrow"><span>06</span> DEEPSEEK-R1</p>
|
||||
<h2>R1-Zero 最重要的实验:先不教推理格式,只给可验证结果奖励</h2>
|
||||
<p class="lede">
|
||||
<a href="https://arxiv.org/abs/2501.12948">DeepSeek-R1</a> 的历史意义,
|
||||
是把“推理可以通过大规模 RL 从强 base model 中被激发”做成公开、可研究的系统证据。
|
||||
</p>
|
||||
<h3>R1-Zero 做了什么</h3>
|
||||
<p>
|
||||
从 DeepSeek-V3 Base 出发,不先做推理 SFT,直接以 GRPO 进行大规模 RL。
|
||||
奖励以答案正确性为主,并加入格式奖励。训练中出现更长推理、反思、回溯和自我验证等行为;
|
||||
论文把某些突然延长思考的轨迹称为 “aha moment”。
|
||||
</p>
|
||||
<h3>它也明确暴露了纯 RL 的问题</h3>
|
||||
<p>
|
||||
R1-Zero 会重复、可读性差、混合语言。奖励只关心最终正确时,模型没有充分动力照顾人类阅读体验。
|
||||
正式 R1 因而先加入少量高质量 cold-start CoT 数据,再做 reasoning-oriented RL;
|
||||
随后用 rejection sampling 产生 SFT 数据,混入写作、事实问答等非推理任务,再进行第二阶段 RL 兼顾帮助性与安全。
|
||||
</p>
|
||||
<div class="r1-pipeline">
|
||||
<div><span>BASE</span><b>DeepSeek-V3 Base</b><small>强预训练基础</small></div>
|
||||
<i>→</i>
|
||||
<div><span>COLD START</span><b>少量可读 CoT</b><small>稳定格式与语言</small></div>
|
||||
<i>→</i>
|
||||
<div class="hot"><span>REASONING RL</span><b>可验证奖励 + GRPO</b><small>强化求解策略</small></div>
|
||||
<i>→</i>
|
||||
<div><span>SFT MIX</span><b>拒绝采样 + 通用数据</b><small>恢复广泛任务</small></div>
|
||||
<i>→</i>
|
||||
<div><span>FINAL RL</span><b>帮助性与安全</b><small>统一模型</small></div>
|
||||
</div>
|
||||
<h3>Distillation 的关键发现</h3>
|
||||
<p>
|
||||
团队用 R1 生成的推理样本微调 Qwen/Llama dense 模型,发布 1.5B–70B 蒸馏版本。
|
||||
这说明小模型不一定要自己承担完整的探索式 RL 成本,可以模仿强 reasoning teacher 的轨迹;
|
||||
但蒸馏得到的是 teacher 数据分布上的能力,不等于小模型内部复现了同样的 RL 发现过程。
|
||||
</p>
|
||||
<div class="warning-note">
|
||||
<b>CoT 变长不等于推理一定更好</b>
|
||||
<p>
|
||||
长轨迹可能包含有效搜索,也可能是重复与绕路。R1 证明的是在可验证任务和适当训练下,
|
||||
增加推理计算可以转化为能力;不是“输出越长越聪明”。
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="v32">
|
||||
<p class="eyebrow"><span>07</span> DEEPSEEK-V3.2</p>
|
||||
<h2>从会推理到会在长上下文里使用工具</h2>
|
||||
<p>
|
||||
<a href="https://arxiv.org/abs/2512.02556">DeepSeek-V3.2</a> 把三条线合并:
|
||||
DeepSeek Sparse Attention(DSA)降低长上下文成本,更大规模的 RL 提升 reasoning,
|
||||
Agentic task synthesis 则把 reasoning 放进工具交互轨迹。
|
||||
</p>
|
||||
<h3>DSA 的两阶段直觉</h3>
|
||||
<p>
|
||||
完整注意力让每个 Query 和全部历史交互。DSA 先用轻量、可学习的 indexer 给历史 Token 评分,
|
||||
选出小部分候选,再让主 attention 只在候选上做高容量计算。
|
||||
关键不只是 top-k,而是 indexer 也在训练中学习“什么值得看”;这比固定窗口更能适应内容相关的远距离依赖。
|
||||
</p>
|
||||
<div class="sparse-visual">
|
||||
<div class="history">
|
||||
{Array.from({ length: 18 }, (_, index) => <i class:list={{ picked: [1, 5, 6, 12, 16].includes(index) }}>{index + 1}</i>)}
|
||||
</div>
|
||||
<span>learned indexer → top-k</span>
|
||||
<div class="picked"><i>2</i><i>6</i><i>7</i><i>13</i><i>17</i></div>
|
||||
<span>main attention</span>
|
||||
<b>Query</b>
|
||||
</div>
|
||||
<p>
|
||||
Agent 方面,V3.2 的任务合成管线系统地产生复杂、交互式工具任务,让思考与 tool use 交织。
|
||||
这与 K3 的 white-box harness、知识图谱任务合成和可验证环境形成同期对照:前沿模型竞争正在从静态题库转向训练环境。
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="v4">
|
||||
<p class="eyebrow"><span>08</span> DEEPSEEK-V4</p>
|
||||
<h2>百万上下文从“支持”变成一套专门架构</h2>
|
||||
<p>
|
||||
2026 年的 <a href="https://arxiv.org/abs/2606.19348">DeepSeek-V4 preview</a> 包含
|
||||
1.6T-A49B 的 Pro 与 284B-A13B 的 Flash,均支持 1M Token。
|
||||
它使用 Compressed Sparse Attention(CSA)与 Heavily Compressed Attention(HCA)的混合注意力,
|
||||
Manifold-Constrained Hyper-Connections(mHC)改善深度残差,并采用 Muon 优化器。
|
||||
</p>
|
||||
<div class="stat-strip v4">
|
||||
<div><b>1.6T / 49B</b><span>V4-Pro total / active</span></div>
|
||||
<div><b>284B / 13B</b><span>V4-Flash total / active</span></div>
|
||||
<div><b>>32T</b><span>预训练 Token</span></div>
|
||||
<p>V4 官方报告摘要数据;模型是 preview 版本,后续版本需按研究截止日重新核验。</p>
|
||||
</div>
|
||||
<p>
|
||||
报告称在 1M 上下文下,V4-Pro 的单 Token 推理 FLOPs 是 V3.2 的 27%,KV Cache 是 10%。
|
||||
这说明长上下文竞争已从单一位置外推转向混合注意力、压缩缓存、残差、优化器和后训练的系统协同。
|
||||
它也解释 K3 报告为何把 V4 列为同代开放基础模型对照。
|
||||
</p>
|
||||
<div class="warning-note">
|
||||
<b>V4 与 K3 不是同一条注意力路线</b>
|
||||
<p>
|
||||
V4 用 CSA/HCA 混合压缩与稀疏注意力;K3 用 3:1 KDA/Gated MLA 混合线性递归与全局注意力。
|
||||
两者目标相近——降低百万上下文成本并保留能力——但状态表示、检索方式和系统内核不同。
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="k3">
|
||||
<p class="eyebrow"><span>09</span> INTO KIMI K3</p>
|
||||
<h2>DeepSeek 的哪些思想直接流入 K3,哪些只是同期呼应</h2>
|
||||
<div class="mapping-table">
|
||||
<div class="head"><b>DeepSeek 线索</b><b>K3 中的落点</b><b>关系</b></div>
|
||||
<div><span>DeepSeekMoE shared + routed experts</span><span>Stable LatentMoE 保留 shared/routed 组织</span><em>直接结构祖先</em></div>
|
||||
<div><span>V2 Multi-head Latent Attention</span><span>每四层一次 Gated MLA,全局注意力</span><em>明确采用并改造</em></div>
|
||||
<div><span>V3 Auxiliary-loss-free balancing</span><span>Quantile Balancing 应对近千专家</span><em>同一问题的新方案</em></div>
|
||||
<div><span>V3 FP8 / 低精度协同</span><span>专家 MXFP4 权重、MXFP8 激活与 QAT</span><em>更低精度的延伸</em></div>
|
||||
<div><span>DeepSeekMath / R1 的 GRPO 与 RL</span><span>多 domain、多 effort RL + MOPD</span><em>共享测试时扩展范式</em></div>
|
||||
<div><span>V4 Muon 与深度残差创新</span><span>Per-Head Muon + Attention Residuals</span><em>同期不同设计</em></div>
|
||||
<div><span>V3.2/V4 长上下文</span><span>KDA + Gated MLA + KDA system co-design</span><em>同目标、不同路线</em></div>
|
||||
</div>
|
||||
<p>
|
||||
这正是为什么 DeepSeek 值得在 LLM Atlas 中作为贯穿案例:它不是 K3 的“对手名单”之一,
|
||||
而是 K3 架构里多条思想的公开祖先与同代参照。读懂 V2 的 MLA 和 DeepSeekMoE,
|
||||
K3 的一半架构会突然变得熟悉。
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="article-section" id="papers">
|
||||
<p class="eyebrow"><span>↳</span> READING ORDER</p>
|
||||
<h2>建议精读顺序:不要直接从 R1 开始</h2>
|
||||
<div class="paper-chain">
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2401.02954"><time>01</time><b>DeepSeek LLM</b><p>建立 dense、数据与 scaling 基线;精读架构与 scaling law 部分。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2401.06066"><time>02</time><b>DeepSeekMoE</b><p>精读 fine-grained segmentation、shared expert isolation 与消融。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2405.04434"><time>03</time><b>DeepSeek-V2</b><p>精读 MLA 推导、RoPE 解耦、权重吸收和 KV Cache 对比。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2412.19437"><time>04</time><b>DeepSeek-V3</b><p>分四遍读:架构、FP8、DualPipe/通信、MTP 与后训练。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2402.03300"><time>05</time><b>DeepSeekMath</b><p>先理解 PPO,再推导 GRPO 的组相对优势与 KL 项。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2501.12948"><time>06</time><b>DeepSeek-R1</b><p>对照 R1-Zero 与 R1 pipeline,区分 RL 涌现、冷启动与蒸馏。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2512.02556"><time>07</time><b>DeepSeek-V3.2</b><p>把稀疏 attention 与 agentic task synthesis 放在一起读。</p></a>
|
||||
<a class="paper-row" href="https://arxiv.org/abs/2606.19348"><time>08</time><b>DeepSeek-V4</b><p>从百万上下文成本倒推 CSA/HCA、mHC 与 Muon。</p></a>
|
||||
</div>
|
||||
<div class="hero-actions">
|
||||
<a class="button primary" href="/k3/">回到 K3:看这些技术怎样重新组合 →</a>
|
||||
<a class="button" href="/roadmap/">完整课程地图</a>
|
||||
</div>
|
||||
</section>
|
||||
</article>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.deepseek-hero::before {
|
||||
background:
|
||||
radial-gradient(circle at 43% 47%, rgba(107, 98, 145, 0.16), transparent 31%),
|
||||
radial-gradient(circle at 65% 38%, rgba(84, 124, 116, 0.13), transparent 24%);
|
||||
}
|
||||
|
||||
.moe-compare,
|
||||
.four-layer {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
max-width: 920px;
|
||||
margin: 34px 0;
|
||||
border-top: 1px solid var(--line);
|
||||
border-left: 1px solid var(--line);
|
||||
}
|
||||
|
||||
.moe-compare article,
|
||||
.four-layer article {
|
||||
min-height: 260px;
|
||||
padding: 26px;
|
||||
border-right: 1px solid var(--line);
|
||||
border-bottom: 1px solid var(--line);
|
||||
}
|
||||
|
||||
.moe-compare article > span,
|
||||
.four-layer span {
|
||||
color: var(--copper);
|
||||
font: 0.62rem/1 var(--mono);
|
||||
letter-spacing: 0.09em;
|
||||
}
|
||||
|
||||
.moe-compare h3,
|
||||
.four-layer h3 {
|
||||
margin: 24px 0 14px;
|
||||
font-size: 1.15rem;
|
||||
}
|
||||
|
||||
.moe-compare p,
|
||||
.four-layer p {
|
||||
color: var(--muted);
|
||||
font-size: 0.78rem;
|
||||
line-height: 1.72;
|
||||
}
|
||||
|
||||
.expert-pool {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 7px;
|
||||
margin: 22px 0;
|
||||
}
|
||||
|
||||
.expert-pool i {
|
||||
display: grid;
|
||||
place-items: center;
|
||||
width: 46px;
|
||||
height: 46px;
|
||||
border: 1px solid var(--line-strong);
|
||||
border-radius: 6px;
|
||||
color: var(--muted);
|
||||
font: 0.68rem/1 var(--mono);
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.expert-pool.large i {
|
||||
width: 66px;
|
||||
height: 66px;
|
||||
background: var(--sky-pale);
|
||||
}
|
||||
|
||||
.expert-pool.fine i {
|
||||
background: var(--copper-pale);
|
||||
}
|
||||
|
||||
.expert-pool.fine i:first-child {
|
||||
border-color: var(--sage);
|
||||
background: var(--sage-pale);
|
||||
color: var(--sage);
|
||||
}
|
||||
|
||||
.stat-strip {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
max-width: 860px;
|
||||
margin: 34px 0;
|
||||
border-top: 1px solid var(--line);
|
||||
border-left: 1px solid var(--line);
|
||||
}
|
||||
|
||||
.stat-strip > div {
|
||||
min-height: 130px;
|
||||
padding: 25px;
|
||||
border-right: 1px solid var(--line);
|
||||
border-bottom: 1px solid var(--line);
|
||||
background: var(--paper-raised);
|
||||
}
|
||||
|
||||
.stat-strip b,
|
||||
.stat-strip span {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.stat-strip b {
|
||||
color: var(--copper);
|
||||
font: 700 1.4rem/1 var(--mono);
|
||||
}
|
||||
|
||||
.stat-strip span {
|
||||
margin-top: 16px;
|
||||
color: var(--muted);
|
||||
font-size: 0.74rem;
|
||||
}
|
||||
|
||||
.stat-strip > p {
|
||||
grid-column: 1 / -1;
|
||||
padding: 12px 18px;
|
||||
border-right: 1px solid var(--line);
|
||||
border-bottom: 1px solid var(--line);
|
||||
color: var(--muted);
|
||||
font-size: 0.68rem;
|
||||
}
|
||||
|
||||
.mla-visual {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 50px 1fr;
|
||||
gap: 18px;
|
||||
align-items: center;
|
||||
max-width: 820px;
|
||||
margin: 34px 0;
|
||||
}
|
||||
|
||||
.mla-visual > div {
|
||||
min-height: 210px;
|
||||
padding: 26px;
|
||||
border: 1px solid var(--line);
|
||||
background: var(--paper-raised);
|
||||
}
|
||||
|
||||
.mla-visual > strong {
|
||||
color: var(--muted-light);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.mla-visual span,
|
||||
.grpo-visual span,
|
||||
.r1-pipeline span {
|
||||
color: var(--muted);
|
||||
font: 0.62rem/1 var(--mono);
|
||||
}
|
||||
|
||||
.heads {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
gap: 6px;
|
||||
margin: 27px 0;
|
||||
}
|
||||
|
||||
.heads i,
|
||||
.latent i {
|
||||
display: grid;
|
||||
place-items: center;
|
||||
height: 46px;
|
||||
border: 1px solid var(--sky);
|
||||
background: var(--sky-pale);
|
||||
color: var(--sky);
|
||||
font: 0.67rem/1 var(--mono);
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.latent {
|
||||
margin: 27px 0;
|
||||
}
|
||||
|
||||
.latent i {
|
||||
width: 74px;
|
||||
border-color: var(--copper);
|
||||
background: var(--copper-pale);
|
||||
color: var(--copper);
|
||||
}
|
||||
|
||||
.mla-visual p {
|
||||
color: var(--muted);
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
.four-layer {
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
}
|
||||
|
||||
.four-layer article {
|
||||
min-height: 230px;
|
||||
padding: 22px;
|
||||
}
|
||||
|
||||
.grpo-visual {
|
||||
display: grid;
|
||||
grid-template-columns: 160px 70px 1fr 70px 220px;
|
||||
gap: 10px;
|
||||
align-items: center;
|
||||
max-width: 920px;
|
||||
margin: 34px 0;
|
||||
}
|
||||
|
||||
.grpo-visual > div:not(.answers) {
|
||||
min-height: 125px;
|
||||
padding: 18px;
|
||||
border: 1px solid var(--line);
|
||||
background: var(--paper-raised);
|
||||
}
|
||||
|
||||
.grpo-visual > i {
|
||||
color: var(--muted);
|
||||
font: 0.6rem/1.4 var(--mono);
|
||||
font-style: normal;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.grpo-visual b {
|
||||
display: block;
|
||||
margin-top: 23px;
|
||||
font-size: 0.82rem;
|
||||
}
|
||||
|
||||
.answers {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
gap: 7px;
|
||||
}
|
||||
|
||||
.answers div {
|
||||
min-height: 110px;
|
||||
padding: 14px;
|
||||
border: 1px solid var(--line);
|
||||
background: var(--paper-raised);
|
||||
}
|
||||
|
||||
.answers span {
|
||||
display: block;
|
||||
margin-top: 24px;
|
||||
color: var(--muted);
|
||||
font-size: 0.58rem;
|
||||
}
|
||||
|
||||
.r1-pipeline {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, minmax(110px, 1fr) 22px) minmax(110px, 1fr);
|
||||
gap: 8px;
|
||||
align-items: center;
|
||||
max-width: 940px;
|
||||
margin: 34px 0;
|
||||
}
|
||||
|
||||
.r1-pipeline > div {
|
||||
min-height: 130px;
|
||||
padding: 17px;
|
||||
border: 1px solid var(--line);
|
||||
background: var(--paper-raised);
|
||||
}
|
||||
|
||||
.r1-pipeline > div.hot {
|
||||
border-color: var(--copper);
|
||||
background: var(--copper-pale);
|
||||
}
|
||||
|
||||
.r1-pipeline > i {
|
||||
color: var(--muted-light);
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.r1-pipeline b,
|
||||
.r1-pipeline small {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.r1-pipeline b {
|
||||
margin-top: 20px;
|
||||
font-size: 0.78rem;
|
||||
}
|
||||
|
||||
.r1-pipeline small {
|
||||
margin-top: 8px;
|
||||
color: var(--muted);
|
||||
font-size: 0.62rem;
|
||||
}
|
||||
|
||||
.sparse-visual {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 120px auto 100px 60px;
|
||||
gap: 15px;
|
||||
align-items: center;
|
||||
max-width: 910px;
|
||||
margin: 34px 0;
|
||||
padding: 28px;
|
||||
border: 1px solid var(--line);
|
||||
background: var(--paper-raised);
|
||||
}
|
||||
|
||||
.history,
|
||||
.picked {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 5px;
|
||||
}
|
||||
|
||||
.history i,
|
||||
.picked i,
|
||||
.sparse-visual > b {
|
||||
display: grid;
|
||||
place-items: center;
|
||||
width: 28px;
|
||||
height: 28px;
|
||||
border: 1px solid var(--line);
|
||||
color: var(--muted-light);
|
||||
font: 0.58rem/1 var(--mono);
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.history i.picked,
|
||||
.picked i {
|
||||
border-color: var(--copper);
|
||||
background: var(--copper-pale);
|
||||
color: var(--copper);
|
||||
}
|
||||
|
||||
.sparse-visual > span {
|
||||
color: var(--muted);
|
||||
font: 0.58rem/1.4 var(--mono);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sparse-visual > b {
|
||||
width: 56px;
|
||||
height: 56px;
|
||||
border-color: var(--sky);
|
||||
border-radius: 50%;
|
||||
background: var(--sky-pale);
|
||||
color: var(--sky);
|
||||
}
|
||||
|
||||
.mapping-table {
|
||||
display: grid;
|
||||
max-width: 940px;
|
||||
margin: 34px 0;
|
||||
border-top: 1px solid var(--line);
|
||||
border-left: 1px solid var(--line);
|
||||
}
|
||||
|
||||
.mapping-table > div {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1.2fr 0.7fr;
|
||||
}
|
||||
|
||||
.mapping-table > div > * {
|
||||
padding: 15px 17px;
|
||||
border-right: 1px solid var(--line);
|
||||
border-bottom: 1px solid var(--line);
|
||||
font-size: 0.75rem;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
.mapping-table .head {
|
||||
background: var(--ink);
|
||||
color: var(--paper-raised);
|
||||
}
|
||||
|
||||
.mapping-table .head b {
|
||||
font: 0.62rem/1.5 var(--mono);
|
||||
letter-spacing: 0.08em;
|
||||
}
|
||||
|
||||
.mapping-table em {
|
||||
color: var(--copper);
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@media (max-width: 820px) {
|
||||
.moe-compare,
|
||||
.four-layer,
|
||||
.stat-strip {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.stat-strip > p {
|
||||
grid-column: auto;
|
||||
}
|
||||
|
||||
.mla-visual,
|
||||
.grpo-visual,
|
||||
.r1-pipeline,
|
||||
.sparse-visual {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.mla-visual > strong,
|
||||
.r1-pipeline > i {
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
.mapping-table > div {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</BaseLayout>
|
||||
Reference in New Issue
Block a user