Start here
GPT 零基础图解
看不懂「Token 嵌入 / Decoder / (B,T,C)」很正常——那是缩写堆出来的。先用人话 + 图建立直觉,再回去看精讲。
不是你基础太弱。笔记里那几行是给「已经懂一半的人」当目录用的。从本页开始即可。
1. GPT 在干一件很简单的事
给你一串已经出现的字,猜下一个字最可能是什么。
例如输入是「今天天气真」,模型输出可能是「好」的概率最高。
2. 那一串公式翻译成人话
笔记里这句:
GPT = Token 嵌入 + 一叠 Decoder + LM Head
其实是一条流水线的三个车间:
3. 「一层 Decoder」在干什么(先别背箭头)
每一层里主要干两件事,像开会:
- Attention(注意力):每个字去「听」前面出现过的字,决定谁更重要。
例:「它很可爱」里的「它」,要去对应前面的「小猫」。 - MLP(前馈网络):每个字各自再做一轮非线性加工(不跟别人开会,闷头算)。
外面的 残差 = 把「加工前」和「加工后」加在一起,信息不容易在深层里丢光。
Norm = 把数字幅度捋顺一点,训练更稳。先当「调音旋钮」即可。
4. 训练和聊天有什么不同
| 训练(学本事) | 推理 / 聊天(用本事) | |
|---|---|---|
| 怎么喂字 | 一整段一起喂进去 | 一个字一个字往外蹦 |
| 能不能偷看后面 | 不能(用「因果 mask」挡住未来) | 本来就没有未来,只靠已经生成的 |
| 有没有小抄 | 一般整段重算 | 把历史算过的结果存成 KV Cache,少算很多 |
所以笔记里说「decode 常变带宽瓶颈」:聊天时每步算得不多,但要反复读那本历史小抄,读内存/显存读不过来。
5. (B, T, C) 不用怕
就是在说「这一坨数字有几维」:
- B = batch:一次同时处理几段话(像同时批改几份作业)
- T = 这段话有多长(几个 token / 字块)
- C = 每个位置用多长的数字向量表示(隐层宽度)
tokens (B, T) 先是「字的编号」
↓ 查表
emb (B, T, C) 变成「数字向量」
↓ 过很多层 Decoder(形状还是 B,T,C)
logits (B, T, 词表大小) 每个位置对整本词典打分
6. 你现在只要记住这 4 句
- GPT = 反复猜下一个字。
- 流水线:查表 → 好多层「开会+消化」→ 对照词典打分。
- 一层里两件事:Attention 看别人,MLP 看自己。
- 聊天靠 KV Cache 记历史;慢往往是因为「读历史」太勤。
这 4 句能口述,再打开
GPT 结构精讲
(带更细的结构图)和
Attention 精讲。
代码可以稍后再碰。