Skip to Content

前言

配套资源
源码仓库 · github.com/diguike/book-llm-infra
在线阅读 · inferloop.dev/llm-infra

这本书是写给谁的

2024 年初,我在做一个 Agent 项目。用户反馈说”回复太慢了”,我看了看代码——前端没问题,API 调用也正常,延迟全在模型推理上。我打开 vLLM 的文档,看到 PagedAttention、Continuous Batching、KV Cache 这些词,一个都不认识。

那一刻我意识到,作为一个写了五年前端的工程师,我对自己每天调用的 LLM API 背后发生了什么,一无所知。

后来我花了大半年时间,从 Transformer(当下所有大模型的底层网络结构)论文读起,一路啃到 CUDA(NVIDIA 的 GPU 编程框架)编程、量化算法、分布式训练。这个过程很痛苦——不是因为内容难,而是因为没有一份材料是给”我这种人”写的。学术论文假设你会线性代数,MLSys(Machine Learning Systems,机器学习系统方向,研究怎么把模型高效跑起来)课程假设你懂 C++,开源项目的文档假设你已经知道它在解决什么问题。

这本书就是我当初希望存在的那本书。

目标读者:

  • 前端/全栈工程师,正在或准备做 LLM 应用、Agent 开发
  • 会 TypeScript/Python,但不懂 GPU、CUDA、分布式计算
  • 不打算成为 ML 研究员,但需要理解 Infra 层面在发生什么
  • 希望能自己部署模型、优化推理性能、控制成本

如果你是 ML 科班出身,这本书对你来说可能太基础了。如果你完全没写过代码,这本书对你来说可能太快了。但如果你是那种”API 调得很溜,但不知道底下跑的是什么”的工程师——这本书就是为你写的。

这本书不是什么

这不是一本学术教材。你不会在这里看到大段的数学推导和定理证明。

这也不是一本 API 教程。市面上教你调 OpenAI API 做 ChatBot 的书已经够多了。

这是一本工程指南。它关心的问题是:

  • 一个 7B 模型(70 亿参数规模的模型,B 是 Billion)需要多少显存?为什么?怎么算?
  • vLLM 比朴素推理快 10 倍,它到底做了什么?
  • 量化后模型质量会下降多少?什么时候该量化,什么时候不该?
  • 微调一个模型需要多少钱?值不值?
  • 生产环境怎么部署?怎么监控?怎么省钱?

每个问题都给你数字、代码、和可以直接用的配置文件。

怎么读这本书

全书分六个部分,建议按顺序读前三部分(第 0-8 章),后面的按需跳读。

第 0 章是给不熟悉 Python 的前端工程师准备的快速入门,会 Python 的直接跳过。

**第一部分(第 1-3 章)**建立基础认知:LLM 技术栈长什么样、Transformer 在工程层面怎么运作、GPU 的基本概念。这部分不需要 GPU,纯概念理解。

**第二部分(第 4-6 章)**进入推理引擎:从模型文件到 API 响应的完整链路,vLLM(UC Berkeley 开源的高吞吐推理引擎)的核心设计,以及如何在 vLLM、SGLang(专注结构化输出和复杂调度的推理引擎)、Ollama(本地一键运行模型的桌面级工具)等引擎之间做选型。

**第三部分(第 7-8 章)**讲模型优化:量化(用更低精度的数据类型存权重以省显存)技术和各种推理加速手段(FlashAttention、投机解码(用一个小模型先猜几个 token,大模型再批量验证)、Prefix Caching(相同前缀的请求复用已算好的 KV Cache)等)。

**第四部分(第 9-11 章)**覆盖微调和训练:LoRA(Low-Rank Adaptation,只训练一小撮低秩矩阵的轻量微调方法)/QLoRA(在 LoRA 基础上把基座模型量化以再省显存的版本)实战、RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习对齐)/DPO(Direct Preference Optimization,绕开奖励模型直接用偏好数据优化的对齐方法)对齐、分布式训练基础。第 11 章是进阶内容,大多数读者可以先跳过。

**第五部分(第 12-14 章)**是生产化:Docker/K8s(Kubernetes,容器编排系统)部署、可观测性、成本优化、RAG(Retrieval-Augmented Generation,检索增强生成)基础设施。这部分有大量可以直接复制使用的配置文件。

**第六部分(第 15-16 章)**看趋势和规划方向:多模态基础设施、从 Agent 开发者到 Infra 工程师的职业路径。

每章的代码示例在 examples/ 目录下,大部分可以在 CPU 上跑模拟演示,需要 GPU 的会在章节开头标注。

源码仓库与在线阅读:

关于时效性

LLM Infra 是一个变化极快的领域。vLLM 半年一个大版本,GPU 一年一代,API 价格每个季度都在降。本书中涉及的具体版本号、价格数据和性能数字都标注了时间,仅供数量级参考。

但底层原理的保质期要长得多。Transformer 的 Attention 机制、KV Cache 的内存管理、量化的精度-性能权衡、分布式训练的通信拓扑——这些概念在可预见的未来不会过时。理解了原理,你就能自己判断新技术是在解决什么问题、值不值得跟进。

这也是本书的核心目标:不是给你一个会过期的答案,而是给你一个不会过期的思考框架。


本章来自《LLM Infra 从入门到实践》开源版 · 作者「递归客」
在线阅读完整书系:inferloop.dev

本书资源

继续阅读 · 同作者其他书

Last updated on