1. 大模型推理全景
各位同学,欢迎来到《大模型推理全流程集训》的第一章。
说实话,我见过太多团队,模型训练得漂漂亮亮,一到上线就卡壳。为什么?因为推理和训练,根本是两码事。今天我们就来聊聊,大模型从训练完到真正被用户用上,中间到底经历了什么。
推理流程概览:模型是怎么“跑起来”的?
先看一张全景图,把整个推理链路串起来。
说白了,推理就是把训练好的模型参数“冻住”,然后对用户的输入做一次前向传播,生成输出。但这里有个坑——推理不是一次计算就完事。对于自回归模型(比如 GPT 系列),每生成一个 token,都要重新跑一遍模型的部分计算。
核心要点:推理流程 = 输入预处理 → 逐 token 生成(含 KV Cache) → 采样 → 输出后处理。每一步都有优化空间,也是我们这门课要逐一攻克的。
推理与训练的区别:不只是“反向传播”没了
很多刚入行的同学觉得,推理不就是训练去掉反向传播吗?其实远没那么简单。我列个表,大家一看就明白。
| 对比维度 | 训练 | 推理 |
|---|---|---|
| 计算模式 | 前向 + 反向,计算密集型 | 仅前向,访存密集型 |
| 批量大小 | 大 batch(几十到几千) | 小 batch(1 到几十) |
| 延迟要求 | 不敏感,几小时到几天 | 极敏感,毫秒到秒级 |
| 显存占用 | 激活值 + 梯度 + 优化器状态 | 模型参数 + KV Cache |
| 精度需求 | FP32 / BF16 / FP16 | INT8 / FP8 / INT4 量化可行 |
| 优化目标 | 收敛速度、模型精度 | 延迟、吞吐、成本 |
我个人习惯把训练比作“盖楼”,推理比作“装修”。盖楼时你可以慢慢来,用最好的材料,错了还能拆了重来。但装修时,用户就站在旁边看着,你得又快又好,还不能出岔子。
一个小经验:我在项目中遇到过,训练时用 FP16 跑得好好的,推理时直接转 INT8,结果模型输出全是乱码。后来才发现,某些层对量化特别敏感,得做逐层精度校准。这个坑,后面讲量化时会细说。
推理的三大挑战:延迟、吞吐、成本
做推理优化,说白了就是在三个维度上找平衡。我直接说人话:
1. 延迟(Latency)—— 用户等得起吗?
延迟就是用户发出请求到收到第一个 token 的时间。对于聊天机器人,业内共识是 首 token 延迟 < 200ms,否则用户会觉得“卡”。
为什么会这么慢?我举个例子。一个 70B 的模型,参数占 140GB(FP16)。就算你用 A100(80GB显存),也得把模型切分到多卡。每次推理,数据要在 GPU 之间来回传,光通信开销就能吃掉几十毫秒。
- 首 token 延迟:主要受模型加载、输入预处理、第一次前向计算影响。
- 逐 token 延迟:主要受 KV Cache 读写、注意力计算影响。
- 端到端延迟:首 token + 后续所有 token 生成时间。
注意:我曾经踩过一个坑——用 PyTorch 的默认实现做推理,没开 torch.compile,结果首 token 延迟直接飙到 1.2 秒。后来加了图编译和 CUDA Graph,降到 180ms。所以,别小看框架层面的优化。
2. 吞吐(Throughput)—— 能同时服务多少人?
吞吐就是单位时间内能处理多少个请求。对于在线服务,通常用 QPS(每秒查询数) 或 RPS(每秒请求数) 来衡量。
你想想看,如果每个请求都要独占一张 GPU,那成本得多高?所以我们要做 连续批处理(Continuous Batching),让多个请求共享 GPU 计算资源。
| 批处理方式 | 原理 | 吞吐提升 | 延迟影响 |
|---|---|---|---|
| 静态批处理 | 等够 batch 再一起算 | 中等 | 增加排队延迟 |
| 动态批处理 | 请求随时加入,不等 | 较高 | 低 |
| 连续批处理 | 请求在迭代级别交错 | 最高 | 可控 |
我建议,如果你的服务延迟要求不高(比如离线分析),可以上大 batch 静态批处理。但如果是实时对话,必须用连续批处理,否则用户体验会崩。
3. 成本(Cost)—— 老板的钱包受得了吗?
成本是终极挑战。一张 A100 每小时大概 3-5 美元,H100 更贵。如果你部署一个 70B 模型,至少需要 2-4 张 GPU。一个月下来,光 GPU 租金就是几万到十几万美元。
怎么降成本?说白了就两条路:
- 减少计算量:量化(INT8/INT4)、剪枝、蒸馏、投机解码。
- 提高硬件利用率:连续批处理、KV Cache 优化、显存复用。
一个真实的案例:我之前帮一家公司优化他们的客服模型。原来用 8 张 A100 跑 13B 模型,QPS 只有 50。后来做了 INT8 量化 + 连续批处理 + KV Cache 优化,同样的负载只用 2 张 A100,QPS 反而到了 200。成本直接降到原来的 1/4。
小结:推理优化的本质
嗯,到这里你应该明白了。推理优化不是炫技,而是在延迟、吞吐、成本这个三角里找到最适合你业务的那个点。
接下来的课程,我们会逐一深入每个环节:从模型量化、KV Cache 优化、连续批处理,到更高级的投机解码、模型并行、服务框架选型。每一章我都会结合自己踩过的坑和实际项目经验来讲。
准备好了吗?我们开始吧。