外观
阅读路径:三条论文路线
本栏目目前精读 16 篇论文,直接按顺序全读不现实。本文把它切成三条路径:新手入门(建立语感)、系统进阶(补全底盘)、LLM 推理专题(服务大模型)。选一条开始,读完再决定要不要继续。
三条路径总览
| 路径 | 目标 | 篇数 | 建议时长 | 适合谁 |
|---|---|---|---|---|
| 新手入门 | 建立「部署 + 论文」的语感,能讲清每篇的一句话贡献 | 3 篇 | 半天到 1 天 | 部署新人、想快速建立概念的读者 |
| 系统进阶 | 系统补全量化、蒸馏、并行的理论底盘,能做选型判断 | 6 篇 | 2-4 天 | 已有部署经验、想懂原理的工程师 |
| LLM 推理专题 | 吃透 LLM 推理的调度、显存、量化、并行四条主线 | 4 篇 | 1-2 天 | 正在做或准备做大模型推理 |
路径可以交叉
三条路径的划分是「主题优先」而非「难度严格递进」。入门里的 TensorFlow Serving 其实不浅,只是概念负担小。读完入门后,按兴趣任选一条进阶或专题路线,不必全都读。
新手入门(3 篇)
顺序:Hinton KD → LLM.int8() → TensorFlow Serving
为什么是这个顺序:先理解「模型怎么变小」(蒸馏 → 量化),再理解「模型怎么跑成服务」(服务系统)。每一步的概念都是下一步的地基。
1. Distilling the Knowledge in a Neural Network(Hinton 2015)
- 一句话贡献:大模型输出的「软标签」比硬标签信息量大,用来教小模型,小模型能收敛得更好。
- 前置知识:模型压缩(蒸馏是什么)、推理基础(训练/推理的基本概念)。
- 阅读时长:30-45 分钟(本栏目蒸馏精读有公式的文字化讲解)。
- 读后应该能回答:软标签比硬标签多给了模型什么信息?温度 T 调大调小分别意味着什么?
2. LLM.int8()(Dettmers 2022)
- 一句话贡献:发现大模型激活里的「离群值」是 INT8 崩坏的原因,用混合精度分解让 175B 模型单卡 INT8 推理且零性能退化。
- 前置知识:量化(INT8 量化怎么做、精度损失从哪来)、GPU 与硬件(显存为什么是瓶颈)。
- 阅读时长:45-60 分钟(量化精读)。
- 读后应该能回答:为什么小模型量化没问题、大模型一量化就崩?混合精度分解把哪部分留成 FP16,占比多少?
3. TensorFlow Serving(Olston 2017)
- 一句话贡献:第一个产品级模型服务框架,把「模型版本管理 + 热加载 + 动态批处理 + gRPC」固化成范式。
- 前置知识:服务化与推理 API、部署架构模式。
- 阅读时长:30-45 分钟(服务系统精读)。
- 读后应该能回答:servable 版本管理解决什么问题?动态批处理为什么能提高吞吐、代价是什么?
入门路径怎么验证学完了
读完三篇,你能向同事讲清楚「蒸馏和量化分别是把模型变小的哪条路」「为什么现在几乎所有推理服务都带批处理」——就算过关。然后用从零部署一个模型把概念落到手上。
系统进阶(6 篇)
顺序:DistilBERT → GPTQ → AWQ → Megatron-LM → GPipe → DeepSpeed ZeRO
主题线:先把「模型压缩」两个分支读完(蒸馏实用化 + 量化两大主流方法),再转「模型放不下」的并行三件套(张量并行 → 流水并行 → 显存分区)。
| 论文 | 前置知识 | 时长 | 读后应该能回答 |
|---|---|---|---|
| DistilBERT(Sanh 2019) | 模型压缩 + 已读 KD | 45-60 分钟 | 预训练阶段蒸馏和任务阶段蒸馏有何不同?40% 参数、97% 性能、60% 提速分别指什么? |
| GPTQ(Frantar 2023) | 量化 + 已读 LLM.int8 | 45-60 分钟 | 为什么基于 Hessian 的逐层量化比逐元素缩放更准?3-bit/4-bit 离 FP16 有多远? |
| AWQ(Lin 2023) | 量化 + 已读 GPTQ | 45-60 分钟 | AWQ 和 GPTQ 的定位差异是什么?「保护 1% 重要权重」为什么不等于混合精度? |
| Megatron-LM(Shoeybi 2020) | GPU 与硬件 + LLM 推理 | 60-90 分钟 | 张量并行把矩阵怎么切、每次前向要通信几次?为什么说它适合推理而不只适合训练? |
| GPipe(Huang 2019) | GPU 与硬件 + 部署模式 | 45-60 分钟 | 微批(micro-batch)怎么消除流水线空闲?bubble 开销和层数/微批数的关系? |
| DeepSpeed ZeRO(Rajbhandari 2020) | GPU 与硬件 + LLM 推理 | 60-90 分钟 | ZeRO 三阶段分别消除哪部分冗余?为什么推理场景最常用 Stage 3(参数分区)? |
进阶路径的「组合拳」
读完六篇你会发现选型逻辑开始成形:模型太大就量化(GPTQ/AWQ)+ 并行(Megatron/GPipe/ZeRO);延迟敏感就蒸馏到小模型(DistilBERT)。这套判断直接对应量化与模型压缩两页的工程结论。
LLM 推理专题(4 篇)
顺序:Orca → vLLM(PagedAttention)→ SmoothQuant → DeepSpeed ZeRO
主线:先把「调度」讲透(Orca 是 vLLM 连续批处理的前身),再读 vLLM 系统论文本身,然后补量化(SmoothQuant 让 W8A8 可用)和显存(ZeRO 分区)两条辅线。
| 论文 | 前置知识 | 时长 | 读后应该能回答 |
|---|---|---|---|
| Orca(Yu 2022) | LLM 推理 + 服务化 | 60-90 分钟 | 迭代级调度(iteration-level scheduling)和请求级调度差在哪?为什么 LLM 必须用前者? |
| vLLM / PagedAttention(Kwon 2023) | LLM 推理 + 已读 Orca | 60-90 分钟 | KV Cache 为什么会有 60-80% 的浪费?块表(block table)怎么消除碎片并支持前缀共享? |
| SmoothQuant(Xiao 2023) | 量化 | 45-60 分钟 | 为什么激活比权重难量化?把量化难度从激活迁移到权重,为什么「数学上等价、工程上可行」? |
| DeepSpeed ZeRO(Rajbhandari 2020) | GPU 与硬件 + LLM 推理 | 60-90 分钟 | 推理侧用 ZeRO 主要是为了省什么?和 vLLM 的 KV Cache 优化是同一层问题吗?(不是:一个是权重,一个是 KV) |
专题路径的重点
vLLM 论文(SOSP 2023)是本栏目唯一标记 recommended 的精读页——它是「操作系统思想救活 LLM 推理」的范本,且实战案例与论文完全对应。读完 vLLM 论文再上手 vLLM,会明显感觉「文档里的每个参数都有论文依据」。
路径之外的论文怎么办
三条路径覆盖了 16 篇精读中的大部分,剩下几篇按需补读:
- TinyBERT、MiniLM:做 NLP 模型压缩、落地蒸馏到小模型时再读,见蒸馏精读。
- Clipper、Nexus:关注传统推理服务、GPU 多租户调度时再读,见服务系统精读。
- 论文地图里还有剪枝、低秩、投机解码等「只标注未精读」的论文,属于按需扩展,见论文地图。
读完全部路径之后
建议回一次论文精读首页复习三遍法的笔记模板,然后把论文结论落到实践:
- 从零部署一个模型 —— 把「模型变小 + 服务化」串成完整动手路线
- vLLM 大模型推理服务 —— 对照 vLLM 论文看真实配置
- 框架与平台怎么选 —— 用论文里的取舍逻辑做选型
- 常见陷阱与反模式 —— 论文里每个「局限」都能在实战里撞见
延伸阅读
- 论文精读:从这里开始 —— 三遍法、笔记模板与 FAQ
- 论文地图 —— 全部主题分组与一句话贡献
- 量化经典:LLM.int8 / GPTQ / AWQ
- 蒸馏经典:KD 与蒸馏家族
- PagedAttention:vLLM 系统论文
- 并行与分布式推理