学习 / AI 基础架构 / 06

AI 基础架构 · 第 06 条 · 负载

训练与推理:两种完全不同的负载

训练和推理听起来是同一件事的两个阶段,但它们对硬件的需求几乎是相反的。这解释了为什么芯片和集群都在分化。

难度 入门 → 进阶约 10 分钟前置:1 条更新 2026-09-28

两种负载的差别

训练推理
目标吞吐量(快点学完)延迟(快点回答)
批大小越大越好受延迟约束,常常很小
主要瓶颈算力 + 卡间通信显存带宽
要不要存梯度要(显存开销大)不要
精度要求较高(否则训不动)可以低很多
负载特征长时间稳定满载波动大,峰谷明显

为什么批大小这么关键

训练时,批越大,每一步的梯度估计越准、同样的权重读取能服务更多样本——算术强度高,算力吃得满。

推理时,用户等不了。批太大会让单个请求的响应时间变长,所以低延迟场景只能用很小的批。而小批意味着读一遍权重只生成一个 token,算术强度极低,完全是带宽受限。

这就是为什么同一个模型,训练时能把 GPU 跑满,推理时利用率却很低。不是模型变了,是约束条件变了——一个是「多快学完」,一个是「多快回答」。
0100200300批大小(对数刻度)GPU 利用率推理:延迟约束住批大小训练:批可以开很大交互式推理的典型批批越大,同样的权重读取服务越多样本——利用率上去了,但单个请求的等待也变长了
红线是推理、蓝线是训练。注意红线被一条竖线拦住了——不是它跑不上去,是交互式场景不允许那么大的批(用户在等)。这一个约束,解释了为什么同一个模型训练时能跑满、推理时却很闲。

由此产生的分化

因为两种负载的特性不同,硬件和架构也在分道扬镳:

第三个阶段常被忽略

除了训练和推理,还有一个中间形态:预填充(prefill)和解码(decode)。推理其实分两步——先「读完整段输入」(这步像训练,是计算密集的),再「一个词一个词生成」(这步像典型推理,是带宽密集的)。

这两步的特性不同,所以出现了把它们放在不同硬件上分别处理的做法。这是近年在推理架构上一个明显的方向。

为什么这对理解成本重要

因为单位成本是按推理算的,不是按训练算的。一家公司花多少钱训练模型是一次性的,但推理成本是每一次调用都在发生。

所以「一个 token 多少钱」这个数字,最终由推理侧的效率决定——而推理侧恰恰是最受带宽和延迟约束的那一环。

要点回顾
← 并行策略:数据并行、张量并行、流水线并行 量化与蒸馏:把模型塞进更小的盒子 →