跳到主要内容

大纲(切分:14 章,对应原书 12 章;ch02 拆成 2 章,其余各对 1 章)

自查结论:逐行核过「出去时知道」,无两行是同一件事;07/08 拆开是因为 07 管算法(怎么算梯度)、08 管系统(拿它造什么模型),读者对象和机制都不同。

01-overview 全景:大模型是什么,怎么造出来(原书 ch01 绪论)

  • §1 进来时以为「语言模型」是个模糊的营销词 → 出去时知道它有严格定义:给一个词序列算概率的函数,以及为什么直接算不可能(7.9×10^96)。
  • §2 进来时以为模型能力是设计出来的 → 出去时知道三步演化:n-gram 数频率→神经网络学词向量→自监督预训练,每步都是被上一步的死角逼出来的。
  • §3 进来时以为 2022 年突然冒出 ChatGPT → 出去时知道三阶段时间线(基础模型/能力探索/突破发展),每个阶段的代表模型与参数量。
  • §4 进来时以为一个模型从头训练到尾 → 出去时知道四阶段流水线(预训练→SFT→奖励建模→强化学习),每阶段的数据量、算力、产物都不同。主走查:复旦校区问答在这条流水线上的旅程。

02-transformer Transformer:让每个词看到所有词(原书 ch02 §2.1-2.2)

  • §1 进来时以为神经网络处理文字像人一样逐词读 → 出去时知道第一步是把词变成向量、再叠加位置编码,以及为什么必须手动加位置。
  • §2 进来时以为「注意力」是个比喻 → 出去时知道它是精确的三步计算:查询/键/值三份投影、打分、按分数加权取信息(走查:「它」怎么取到「猫」)。
  • §3 进来时以为一个注意力就够 → 出去时知道多头=几个子空间各看一遍再拼接;FFN 负责非线性加工;残差与层归一化解决深网络训不动。
  • §4 进来时以为翻译模型就是个大网络 → 出去时知道编码器/解码器分工、掩码防作弊、交叉注意力怎么「看」源语言。
  • §5 进来时以为 GPT 是另一种新架构 → 出去时知道 GPT=只要解码器的 Transformer,预训练目标就是预测下一个词(负对数似然),微调有灾难性遗忘问题。

03-llama-scale 放大到千亿参数:LLaMA 的三处改动、注意力优化与专家分工(原书 ch02 §2.3-2.4)

  • §1 进来时以为大模型=把 Transformer 放大 → 出去时知道直接放大会崩,LLaMA 换了三件套:RMSNorm、SwiGLU、RoPE,各自解决什么。
  • §2 进来时以为注意力必须两两全算 → 出去时知道平方复杂度是瓶颈,四条优化路:稀疏注意力、FlashAttention(搬进片上内存)、MQA(共享 K/V)、MLA(低秩压缩缓存)。
  • §3 进来时以为参数越多计算必然越多 → 出去时知道 MoE 用门控网络每次只激活 K 个专家,Mixtral 560 亿参数只有 130 亿活跃;共享专家防冗余;稠密/软 MoE 的取舍。

04-pretraining-data 预训练数据:模型的「教材」是怎么编出来的(原书 ch03)

  • §1 进来时以为训练数据就是「网上的文字」 → 出去时知道来源分通用(网页/书/代码/百科)与领域(金融/医疗/法律),GPT-3 对不同来源设不同采样权重。
  • §2 进来时以为抓下来就能用 → 出去时知道四道工序:质量过滤(分类器 vs 启发式)、三级去重(句子/文档/数据集)、隐私消除、词元切分(BPE 怎么造词表)。主走查:一个网页在 RefinedWeb 流水线的存活之旅(100%→11.67%)。
  • §3 进来时以为数据越多越好 → 出去时知道 Chinchilla 定律:参数与词元要等比例放大;质量与多样性的实验证据(Gopher/GLaM/Anthropic 双峰下降)。
  • §4 进来时以为数据集只是「一堆文本」 → 出去时知道 Pile/ROOTS/RefinedWeb/CulturaX/SlimPajama 各自的构成与清洗哲学。

05-distributed-training 一台机器装不下:分布式训练(原书 ch04)

  • §1 进来时以为大模型只是「训练久一点」 → 出去时知道三堵墙:计算墙(差 8 个数量级)、显存墙(700GB vs 80GB)、通信墙(89.6TB 梯度)。
  • §2 进来时以为并行就是「多买几张卡」 → 出去时知道三种切法:数据并行(每人一份模型)、流水线并行(按层接力,有气泡)、张量并行(切开矩阵,数学上必须等价)。主走查:一个矩阵按列切开后两块 GPU 怎么拼出正确结果。
  • §3 进来时以为显存只放模型 → 出去时知道 Adam 状态是 4 倍参数量,16Φ 字节的账怎么算;ZeRO 三级各切掉什么、通信代价是什么;混合精度与动态损失缩放。
  • §4 进来时以为集群就是一堆 GPU → 出去时知道节点内 NVLink 与节点间 InfiniBand 的带宽差异决定了并行策略怎么放;参数服务器 vs 去中心化+集合通信八原语。
  • §5 进来时以为 DeepSpeed 是黑盒 → 出去时知道 3D 并行的放置逻辑(张量并行放节点内)与 ZeRO-0/1/2/3 配置项。

06-instruction-tuning 指令微调:教模型听懂人话(原书 ch05)

  • §1 进来时以为预训练完就能对话 → 出去时知道预训练目标(补全)和用户目标(指令)错位,SFT 用「指令-回答」对教格式,只对输出算损失。
  • §2 进来时以为指令数据靠人海 → 出去时知道四条路:人工(众包)、转换(Flan 任务混合)、自动生成(Self-Instruct 四步)、以及 LIMA 的表层对齐假设(1000 条够)。主走查:Self-Instruct 一轮迭代怎么从 8 条种子长出新指令。
  • §3 进来时以为数据多多益善 → 出去时知道质量比数量重要(IFD 5% 超全量)、多样性可量化(核心集采样)、训练策略要防灾难性遗忘(双阶段混合 1/256 领域数据)。
  • §4 进来时以为微调必须全参数 → 出去时知道 LoRA 在旁路加低秩矩阵(h=W0x+BAx),GPT-3 检查点从 350GB 到 35MB;AdaLoRA 动态分秩;QLoRA 4-bit 量化。
  • §5 进来时以为上下文长度是死的 → 出去时知道三条扩展路:直接加窗微调(慢)、ALiBi 外推、位置插值(1000 步把 2048 扩到 32768)。

07-rl-ppo 强化学习:让模型自己试出更好的策略(原书 ch06 §6.1-6.2)

  • §1 进来时以为 RL 就是 AlphaGo 那种下棋 → 出去时知道智能体-环境-奖励框架、价值函数、三类智能体,以及 RL 与监督学习在「反馈」上的本质差别。
  • §2 进来时以为训练只能对照标准答案 → 出去时知道策略梯度直接对「策略」求梯度:整条轨迹的回报当权重,基线降方差,优势函数 A=Q−V 衡量「这步比平均好多少」。主走查:一句话生成在策略梯度下的更新。
  • §3 进来时以为 PPO 是另一个世界的词 → 出去时知道 GAE 用 TD 误差加权平衡偏差方差;PPO 用重要性采样复用旧数据再用 clip 剪切限制步幅;RLOO 用组内其他样本当基线;GRPO 干脆去掉价值模型,组内互相比。

08-rlhf-reasoning 对齐与推理:RLHF、奖励模型与 DeepSeek-R1(原书 ch06 §6.3-6.5)

  • §1 进来时以为「对齐」是玄学 → 出去时知道 3H 原则(有用/真实/无害)、四模型协作(策略/奖励/评论/参考)、以及 KL 惩罚怎么防模型跑飞。
  • §2 进来时以为奖励模型就是打分器 → 出去时知道它从人类偏好对训练(pairwise 损失)、数据怎么标(Anthropic 有用性 vs 无害性的对立)、为什么奖励模型有泛化边界问题。
  • §3 进来时以为推理能力靠记忆更多知识 → 出去时知道 R1-Zero 用纯 RL(规则奖励+格式奖励)把 AIME 从 15.6% 拉到 71%,出现「顿悟时刻」;R1 加冷启动和语言一致性;小模型靠蒸馏获得推理。
  • §4 进来时以为 RL 训练系统=训练框架 → 出去时知道 verl 的混合编程模型(单控制器管流程、多控制器管计算)为什么能把吞吐量提高 1.5-20 倍。

09-multimodal 多模态:让语言模型看见和听见(原书 ch07)

  • §1 进来时以为多模态=既能看图又能写字 → 出去时知道 MM-LLM(理解向)与生成向 MLLM(Sora)的分工,以及把图像变成语言模型能吃的东西是核心难题。
  • §2 进来时以为各家多模态模型架构五花八门没有规律 → 出去时知道 VLM 四范式:对比学习(CLIP)、掩码预测(FLAVA)、生成式(Chameleon)、映射学习(LLaVA/MiniGPT-4,最省)。主走查:一张图在 MiniGPT-4 里怎么变成「你觉得这个 logo 怎么样」的回答。
  • §3 进来时以为语音是另一个领域 → 出去时知道 SLM 三种输入输出模式,以及「转成文本空间」与「扩展词表」两条融合路线的取舍。
  • §4 进来时以为多模态训练=多喂图 → 出去时知道数据剪枝(CLIPScore)、视觉语义关联(边界框/负样本)、事实增强 RLHF(LLaVA-RLHF 幻觉减 60%)才是效果杠杆。

10-agents 智能体:给模型装上手脚和记性(原书 ch08)

  • §1 进来时以为智能体是新概念 → 出去时知道三代演进:符号智能体→强化学习智能体→大模型智能体,以及单智能体/多智能体/人机交互三范式。
  • §2 进来时以为 agent 就是「会调 API 的 ChatGPT」 → 出去时知道四模块:感知、规划(无反馈 vs ReAct 带反馈)、记忆(短期上下文 vs 长期记忆库+MemoryBank 遗忘曲线)、工具(示范/教程/探索三种学习法)。主走查:「观察天色要不要带伞」在四模块里的旅程。
  • §3 进来时以为工具调用能力是天生的 → 出去时知道它靠数据造出来:ToolLLM 三阶段造 12.6 万条轨迹、TL-Training 只用 1217 条数据就到 GPT-4o 水平(错误路径屏蔽+关键词元加权+RL 奖励);推理靠 CoT/Auto-CoT/由少至多;AgentTuning 保住通用能力。
  • §4 进来时以为多智能体协作是概念噱头 → 出去时知道辩论能纠错(数学题三个 agent 两轮全对)、CAMEL 角色扮演能自动分工;LangChain 六大模块怎么把这一切拼成应用。

11-rag 检索增强生成:从闭卷考试到开卷考试(原书 ch09)

  • §1 进来时以为幻觉靠「更大的模型」解决 → 出去时知道知识记忆效率的天花板(曝光 1000 次/73.6%)、RAG 把问答变成阅读理解,以及四层任务难度(显性事实→隐性推理)。
  • §2 进来时以为 RAG=向量数据库+LLM 两行代码 → 出去时知道 Modular RAG 六模块:索引(分块权衡/层次化/知识图谱)、检索前(查询扩展/改写/HyDE)、检索(稀疏/稠密/混合)、检索后(重排序/压缩)、生成、编排(路由/调度/融合)。主走查:「复旦大学在哪里」这条查询在全流程中的形态变化。
  • §3 进来时以为 RAG 搭好就不用管 → 出去时知道流程有四种拓扑(线性/条件/分支/循环),各模块还能训练优化(RQ-RAG、JudgeRank、RankRAG、RAG-HAT 防幻觉),评估要分检索侧与生成侧。

12-efficiency 效率优化:让大模型跑得快、装得下(原书 ch10)

  • §1 进来时以为推理就是「跑一遍网络」 → 出去时知道预填充与解码两阶段的不对称(GEMM vs GEMV)、KV 缓存为什么越滚越大、延迟与吞吐的指标体系。
  • §2 进来时以为模型结构已定型 → 出去时知道 Mamba 等状态空间模型用线性复杂度挑战注意力;量化(PTQ:GPTQ/AWQ;QAT:QLoRA)、剪枝(SparseGPT/Wanda)、蒸馏(MiniLLM 反向 KL)三条压缩路。主走查:一个 70B 模型量化后显存账的变化。
  • §3 进来时以为 FP16 已经够省 → 出去时知道 FP8 两种编码(E4M3/E5M2)的取舍、FP8-LM 三级优化(梯度通信/优化器 16→6 字节/分布式),以及「大数吃小数」的舍入陷阱。
  • §4 进来时以为提速只能靠好硬件 → 出去时知道算法级(推测解码:小模型起草大模型验证;KIVI/H2O/StreamingLLM 管 KV 缓存)与系统级(Orca 迭代级调度、FastServe 多级反馈队列、vLLM PagedAttention 把浪费的 60-80% 显存拿回来)。

13-evaluation 评估:怎么给大模型打分(原书 ch11)

  • §1 进来时以为评估=跑个准确率 → 出去时知道大模型评估要按阶段(基础/SFT/RL)分体系,文本生成评估贵且难(800 条翻译人工评估 80 美元)。
  • §2 进来时以为 benchmark 都差不多 → 出去时知道两条体系:任务核心(HELM 42 场景 59 指标)与人核心(AGIEval 用高考/SAT);安全要单独立体系(8 场景+6 种指令攻击+红队测试);垂直领域(法律 CUAD/金融 FLAME/医疗 MultiMedQA)。
  • §3 进来时以为指标就是准确率 → 出去时知道困惑度与交叉熵的关系、BLEU 面向精确率而 ROUGE 面向召回率(手算例子)、McNemar 检验判断两个模型差异是否显著。主走查:ROUGE-1/2 在两句摘要上的手算。
  • §4 进来时以为榜单分数=能力 → 出去时知道 GPT-3 数据泄露的审计方法(13-gram)、MMLU→MMLU-Pro 的防猜题改造、Chatbot Arena 匿名众包+Elo、LLMEVAL 的「题库考试」防刷榜设计。

14-application 应用开发:从模型到产品(原书 ch12)

  • §1 进来时以为大模型应用=聊天窗口 → 出去时知道九类场景的形态(内容创作/客服/翻译/抽取/代码/搜索/教育/企业/法律),每类里「模型能力」与「场景约束」怎么咬合。
  • §2 进来时以为开发=调 API → 出去时知道两个完整案例的机制:FisherAI 浏览器插件(划词事件→LLM 调用→弹窗)与 PaSa 论文助理(爬取器+选择器双 agent,RL 优化,胜过 Google Scholar)。主走查:划词翻译从鼠标事件到译文弹窗的六步。
  • §3 进来时以为部署必须上云 → 出去时知道本地部署三层:llama.cpp(跨硬件+GGUF+量化)、Ollama(一条命令+REST API)、Open WebUI(Docker 一个容器得到 ChatGPT 式界面),以及各自适合谁。

兑现原则

正文每处「第 N 章讲」在 index.md 兑现表记账;写完逐行核。