22580: From GPT-2 to Kimi K3, Explained

Citation

Author: Ali (@waterloo_intern, Baseten inference engineer) Published: 2026-07-27 Source: https://x.com/waterloo_intern/article/2081762065392541951 Local: raw/articles/22580 From GPT2 to Kimi3, Explained.md Length: 551 行,28KB Format: X 长文 (long-form article)

核心论点

过去七年 LLM 真正的变化,不是规模(22,580× 参数放大),而是模型”保存/更新/找回信息”的方式。

具体来说,attention 机制从 O(N) 全存(GPT-2)→ O(1) 固定状态(Linear Attention)→ O(1) 精确替换(DeltaNet)→ O(1) + 衰减(Gated DeltaNet)→ O(1) per-channel α + 周期 reset(KDA)→ 完整混合(Kimi K3)

22,580 这个数字的来源:Kimi K3 (2.8T) / GPT-2 (124M) ≈ 22,580。

章节结构

#章节关键技术
1GPT-2O(N) KV cache, decoder-only Transformer
2Linear Attentionφ(q)·φ(k)ᵀv = q·(φ(k)ᵀv),associative → O(1) 状态
3DeltaNet (Fast Weight Programmers)delta rule:v - k@S,精确替换
4DeltaNet (Parallelizing Linear Transformers with Delta Rule)chunk-wise forward substitution,并行 prefill
5Gated Delta NetMamba α + Delta β,Gated Delta rule
6KDA / Kimi Linearper-channel α + 周期 MLA 混合
7Kimi K323 macrocycle × 4 layer (3 KDA + 1 MLA) + MoE + AttnRes
8AttnRes深度方向选择性残差检索

关键代码与公式

Delta rule

v_old = k @ S                  # 先查旧值
u = beta * (v - v_old)         # 计算差值
S = S + k.transpose(-1, -2) @ u  # 等价于"先减再加"

Chunk-wise parallel forward

def chunk_delta_rule_forward(Q, K, V, beta, C):
    Q, K, V = map(lambda x: x.reshape(-1,C,d), [Q, K, V])
    K_beta = K * beta.unsqueeze(-1)
    V_beta = V * beta.unsqueeze(-1)
    
    T = -(K_beta @ K.t()).tril(-1)
    for i in range(1, C):
        T[i, :i] = T[i, :i] + (T[i, :, None] * T[:, :i]).sum(-2)
    T += torch.eye(C)
    W = T @ K_beta; U = T @ V_beta
    
    S = torch.zeros(d, d)
    O = torch.empty_like(V)
    for i in range(L // C):
        u_i = U[i] - W[i] @ S
        o_inter = q_i @ S
        A_i = (q_i @ k_i.t()).tril()
        o_intra = A_i @ u_i
        S += k_i.t() @ u_i
        O[i] = o_intra + o_inter
    return O.reshape(L, d)

Gated Delta rule

KDA (per-channel α)

log_alpha = self.alpha_proj(x)
alpha = torch.exp(-torch.exp(log_alpha))    # ∈ (0, 1)
alpha = alpha.reshape(nb, C, d)             # per-channel

AttnRes

V = torch.stack(blocks + [partial_block])
K = norm(V)
logits = torch.einsum('d, n b t d -> n b t', proj.weight.squeeze(), K)
h = torch.einsum('n b t, n b t d -> b t d', logits.softmax(0), V)
return h

SiTU

d = x.shape[-1] // 2
gate = x[..., :d].to(torch.float32)
up = x[..., d:].to(torch.float32)
situ_a = self.beta * torch.tanh(gate / self.beta) * torch.sigmoid(gate)
if self.linear_beta is not None:
    up = self.linear_beta * torch.tanh(up / self.linear_beta)
return (situ_a * up).to(x.dtype)

关键事实

事实来源
GPT-2 124M 参数(12 层,12 head,768 dim)Ali §“GPT-2”
Linear Attention 用 ELU+1 feature mapKatharopoulos 2020
Delta rule 思想来自 Schlag “Fast Weight Programmers” (AISTATS 2022)Ali §“DeltaNet”
Chunk-wise parallel 来自 Yang et al. ICLR 2024Ali §“Parallelizing Linear Transformers”
Mamba forget gate α ∈ (0,1)Gu & Dao 2023
Kimi Linear 6× decode throughput claimKimi Linear 论文
Kimi K3 = 2.8T 参数Kimi 官方技术博客
898 expert = 2 shared + 896 routedKimi 官方 + Ali §“Kimi K3”
23 macrocycle × 4 layer = 92 层Ali §“Kimi K3”
3 KDA + 1 MLA per macrocycleAli §“Kimi K3”
AttnRes 每 12 层 / 8 blocks(92/12 = 7.67)Ali §“AttnRes”
K3 vs K2 scaling efficiency ~2.5×Kimi 官方

本文的中文翻译与扩展

本仓库另存有 raw/articles/02-kimi-k3-from-gpt2.md ——稼先社区草稿 v1.1,~7000 字中文译注与扩展。

主要扩展

  1. 加上”困惑驱动”开篇(α 在 1M 上下文数值稳定性问题)
  2. §6.1 补充 per-channel α 的隐藏代价(梯度饱和、interpretability 失效、训练成本 1.5-2×)
  3. §8 一句话观察:模型层 vs 硬件层的同构淘汰机制(呼应 WaferLLM §7.5/§8)
  4. §9 “几个我没想明白的事” + “如果你自己要做点什么” 实操建议

作者背景

Ali 不是某个”水牛实习生”——根据 X 账号自述,在 Baseten 做 inference engineering

文章风格明显是工程师视角:关心 HBM 带宽、tensor core 利用率、KV cache 实际尺寸、prefill 能否并行、训练稳定性等。不是学术派的数学推导

与其他 paper 摘要的关系

类型已存 papers
Attention IO-aware 优化FlashAttention, FlashAttention-2, FlashAttention-3
Decode 优化FlashDecoding++
Sparse attentionDynaX
跨架构综述LLM Inference Hardware Survey, AI Accelerators Cross-Architecture
注意力机制演化(本文覆盖)新增

本文在 paper 库中的独特位置:其他 paper 摘要都是 softmax attention 优化方向;本文是 attention 机制”放弃 softmax attention”的方向(线性化、delta、gating)。

相关页面

Citations

[1] Ali (@waterloo_intern), “22580: From GPT2 to Kimi3, Explained”, 2026-07-27, https://x.com/waterloo_intern/article/2081762065392541951 [2] Moonshot AI, “Kimi K3 Tech Blog”, https://www.kimi.com/blog/kimi-k3 [3] 02-kimi-k3-from-gpt2.md — 本地中文译注 v1.1