Skip to content

GPT架构

GPT(Generative Pre-Trained Transformer)= 只取 Transformer 的解码器,用「预测下一个词」做自监督预训练。它是 Decoder-only 范式的代表,也是 ChatGPT、LLaMA 等一切对话大模型的原型。本教程的 NanoGPT 实战,就是亲手实现这个架构。

1. 整体形态

输入: 我 喜欢 深度 学习
        │  (token 嵌入 + 可学习位置嵌入)

   ┌──────────────────────────┐
   │  Transformer Decoder 层    │ × 12(GPT-2 small) ...
   │  因果自注意力(只看左边) + FFN │   d_model=768, h=12
   └───────────┬──────────────┘

   每个位置的向量 → Linear → Softmax → "下一个词"的概率

   在"学习"这个位置, 预测它的下一个词(如"很")

GPT-2 small 配置:12 层、768 维、12 头、上下文 1024、约 124M 参数。

2. 只有一个子层家族:因果自注意力 + FFN

对比 BERT,GPT 的层更「纯粹」:

   GPT 每层 = 因果多头自注意力  → Add&Norm → FFN → Add&Norm
   (没有交叉注意力, 因为没有"源句"要看; 也没有双向, 只能看左边)
  • 因果掩码是灵魂:位置 t 只能 attend 到 ≤ t 的词,保证「预测下一个」是诚实的。
  • 训练时整句并行算损失,推理时逐个自回归生成。

3. 预训练目标:Next Token Prediction

最简单也最强——给定前文,预测下一个 token:

  输入:   我   喜欢   深度
  目标:  喜欢  深度   学习      ← 整体右移一位
  损失 = 交叉熵( 模型在每个位置预测的下一词分布 , 真实下一词 )

[ \mathcal{L} = -\sum_{t} \log P(x_t \mid x_{<t}) ]

没有 [MASK]、没有 [CLS]、没有标注——自监督:文本本身就是自己的标签。这正是「只要有海量文本就能无限预训练」的原因,也是 Scaling Law 能奏效的前提。

4. 从「续写」到「对话」:一个提示词搞定一切

预训练好的 GPT 只会「续写」。但只要把指令拼进上下文,它就能被 prompting 触发各种能力:

输入 prompt : "翻译以下句子到中文: I love you\n输出:"
GPT 续写    : "我爱你"          ← 同一个"预测下一词"机制, 却完成了翻译任务

这就是 In-Context Learning:不用改权重,靠 prompt 让模型「进入」某个任务模式。ChatGPT 则在此基础上用 SFT + RLHF 微调,让续写更贴合人类指令。

5. 生成策略:怎么把「概率」变成「一句人话」

模型每步给的是整个词表的概率分布,如何挑词决定了生成质量:

        模型输出下一词概率分布

   ┌─────────────┼──────────────┬───────────────┐
   greedy        beam search     temperature     top-k / top-p(核采样)
   取概率最大     保留n条最佳路径   软化/锐化分布    只在概率最高的候选里采样
   易重复呆板    翻译常用         越高越有创意      大模型生成默认玩法
  • temperature:对 logits 除以 T 再 softmax。T>1 更随机,T<1 更保守。
  • top-p(nucleus):只在累计概率达到 p 的最小候选集里采样,兼顾多样与合理。

这些会在 评估与文本生成 里动手实践。

6. KV Cache:自回归加速的关键

生成第 t 个词时, 前面 t-1 个词的 K/V 其实没变 → 缓存起来复用
   无 cache: 每步重算整段 → O(t²) 累积浪费
   有 cache: 只算新词的 q,k,v → 每步 O(t), 大幅提速(显存换时间)

理解 KV Cache 也能明白为什么长上下文又慢又吃显存——缓存随长度线性增长,且注意力仍 O(n²)。

7. GPT 家族演进

GPT-1(2018) → GPT-2(2019) → GPT-3(2020,175B) → InstructGPT → ChatGPT/GPT-4
   预训练+微调   零样本萌芽    Scaling+ICL涌现    RLHF对齐     多模态/更强推理
LLaMA / Qwen / DeepSeek 等开源模型沿用了 Decoder-only 主干,
   并升级: RoPE、GQA、RMSNorm、SwiGLU、更大词表与上下文

现代开源大模型相对 GPT-2 的工程改良(RoPE/GQA/SwiGLU 等)在 进阶主题 展开。

小结

  • GPT = Transformer Decoder + 预测下一词 的自监督预训练。
  • 因果掩码保证不偷看未来,是其能自回归生成的核心。
  • prompting / In-Context Learning 一个模型通吃多任务。
  • 生成策略(temperature、top-p)与 KV Cache 是从架构到应用的两块关键拼图。

下一步

把三种范式放到一张桌上正面对比 → 三大架构对比,随后进入动手环节。