【大语言模型系列·第 04 篇】推理部署:从实验室到生产——延迟、吞吐与成本的三维优化
本文深入探讨了大语言模型(LLM)推理部署的关键技术与优化策略。主要内容包括:1)推理基础:分析Prefill(计算密集型)和Decode(内存带宽密集型)两阶段特性,介绍KV Cache机制及其内存瓶颈;2)六大优化技术:量化(FP8/INT8/INT4)、连续批处理、推测解码等,可提升2-4倍性能;3)部署实战:对比vLLM、TensorRT-LLM等框架特点,提供云端、本地等部署方案选择建议
【大语言模型系列·第 04 篇】推理部署:从实验室到生产——延迟、吞吐与成本的三维优化
系列回顾:第 01 篇我们绘制了 LLM 的全景图,第 02 篇我们拆解了内部机制,第 03 篇我们深入了训练方法。本篇进入 LLM 从实验室到生产的关键工程:推理部署。训练出一个好模型只是开始——如何让模型高效、稳定、低成本地服务用户,才是真正的工程挑战。LLM 推理有两个阶段:Prefill(并行处理输入,计算密集)和 Decode(逐个生成输出,内存带宽密集),两阶段瓶颈完全不同。KV Cache 是核心数据结构也是内存瓶颈,128K 上下文可达 40GB+。量化(FP8/INT8/INT4)是最直接的降本手段,连续批处理和 PagedAttention 是吞吐提升的关键,推测解码是无损加速的突破。今天,我们从推理基础、优化技术到部署实战,彻底拆解 LLM 推理部署。
📑 文章目录
⚡ 一、推理基础:两阶段、四大指标与 KV Cache

1.1 推理的两阶段:Prefill 与 Decode
LLM 推理分为两个截然不同的阶段,它们的瓶颈和优化策略完全不同。
Prefill 阶段:并行处理输入。将用户输入的所有 Token 一次性送入模型,并行计算所有 Token 的表示和 KV Cache。Prefill 是计算密集型——GPU 算力是瓶颈,GPU 利用率可达 80%+。输入越长,Prefill 时间越长,但可以充分利用 GPU 的并行计算能力。
Decode 阶段:逐个生成输出。每一步生成一个 Token,需要读取之前所有 Token 的 KV Cache,计算当前 Token 的注意力,然后更新 KV Cache。Decode 是内存带宽密集型——HBM 带宽是瓶颈,GPU 利用率通常只有 10-30%。每生成一个 Token,都需要将整个模型权重从 HBM 读入计算单元,但只做一次矩阵乘法——这是"内存带宽瓶颈"的根源。
瓶颈转移:Prefill 瓶颈在计算,Decode 瓶颈在内存带宽。这意味着:优化 Prefill 的方法(如 Flash Attention、Tensor 并行)和优化 Decode 的方法(如量化、批处理、推测解码)完全不同。理解了瓶颈转移,就理解了推理优化的全貌。
1.2 四大推理指标
TTFT(Time To First Token):从发送请求到收到第一个 Token 的时间。主要由 Prefill 阶段决定。用户感知为"模型开始回复的延迟"。对话场景要求 TTFT < 200ms,否则用户会觉得"卡"。
TPOT(Time Per Output Token):每生成一个 Token 的平均时间。主要由 Decode 阶段决定。用户感知为"回复速度"。TPOT 20ms 对应 50 Token/s,TPOT 50ms 对应 20 Token/s。
吞吐量(Throughput):单位时间处理的 Token 总数。衡量系统效率。高吞吐 = 低单 Token 成本。批处理是提升吞吐的核心手段。
首 Token 延迟 + 生成速度 = 端到端延迟:E2E Latency = TTFT + TPOT × Output Tokens。这是用户实际感知的总等待时间。
1.3 KV Cache:核心数据结构与内存瓶颈
KV Cache 是 LLM 推理最核心的数据结构——它缓存了之前所有 Token 的 Key 和 Value 向量,避免 Decode 阶段重复计算。
KV Cache 大小计算:每个 Token 的 KV Cache 大小 = 2(K+V)× 层数 × 隐藏维度 × 精度字节数。以 Llama 3 70B 为例:2 × 80 × 8192 × 2(FP16)= 2.5MB/Token。128K 上下文:2.5MB × 128K ≈ 320GB——远超单卡 HBM 容量。
PagedAttention(vLLM):传统方法为每个请求预分配最大长度的连续内存,导致大量浪费。PagedAttention 将 KV Cache 分页管理,像操作系统管理虚拟内存一样——按需分配,消除碎片,支持共享前缀缓存。GPU 利用率从 20% 提升到 80%+,吞吐提升 2-4x。
🔧 二、六大优化技术:量化、批处理与推测解码

2.1 量化:最直接的降本手段
量化是用更低位宽存储模型权重,减少内存占用和带宽需求。
FP16(基线):每个参数 16 位。70B 模型需要 140GB 显存,至少 2×A100-80GB。这是"全精度"基线,质量最好但成本最高。
FP8:每个参数 8 位。70B 模型只需 70GB,单卡 A100-80GB 即可。质量损失 < 0.1%,几乎无感。H100/H200 原生支持 FP8,是 2026 年生产部署的标准配置。TensorRT-LLM 在 H100 上用 FP8 实现了 10,000+ Token/s 的吞吐。
INT8(GPTQ/AWQ/SmoothQuant):训练后量化(PTQ),将 FP16 权重压缩为 INT8。GPTQ 基于二阶信息逐层量化,AWQ 保护重要权重通道,SmoothQuant 将激活难度迁移到权重。质量损失 < 0.5%,内存减半,吞吐提升 1.5-2x。
INT4(GPTQ-4bit/AWQ-4bit/GGUF):极致压缩,70B 模型只需 35GB,单卡 A100-40GB 或 Mac Studio 即可运行。质量损失 1-3%,在大多数任务上仍然可用。GGUF 格式专为 llama.cpp 设计,支持 CPU 推理,是本地部署的首选格式。
量化选择指南:生产环境优先 FP8/INT8(质量损失最小),成本敏感选 INT4(内存最低),本地部署选 GGUF/INT4(CPU 友好)。
2.2 连续批处理(Continuous Batching)
传统批处理:等所有请求完成 Prefill 后一起 Decode——短请求被长请求拖慢。连续批处理:请求完成即移除,新请求即时加入——GPU 永远不闲着。vLLM 的 continuous batching 是吞吐提升的核心,配合 PagedAttention 可实现 2-4x 吞吐提升。
2.3 推测解码(Speculative Decoding)
推测解码的思路极其巧妙:用小模型(draft model)猜多个 Token,大模型(target model)并行验证。猜对的直接接受,猜错的从错误处重新生成。质量完全无损——因为最终输出与大模型自回归生成完全一致,只是速度更快。
Medusa 和 Eagle 是两种主流实现:Medusa 给模型添加多个预测头,Eagle 用特征向量做推测。在猜对率高的情况下(如翻译、摘要),速度可提升 2-3x。
2.4 其他优化
Flash Attention:分块计算注意力,避免 O(n²) 内存开销。训练和推理都受益,2-4x 加速。
Chunked Prefill:将长输入分块处理,避免单个长请求阻塞其他请求。与连续批处理配合,提升 Prefill 阶段的 GPU 利用率。
前缀缓存(Prefix Caching):缓存系统提示等共享前缀的 KV Cache,避免重复计算。多轮对话场景下,系统提示只需计算一次。
🏗️ 三、部署实战:框架选型与成本优化

3.1 三大推理框架
vLLM:PagedAttention 创始者,连续批处理,开源社区最活跃。通用性最强,吞吐最高。适合:通用推理服务、多模型部署。
TensorRT-LLM(NVIDIA):NVIDIA 官方推理框架,Kernel 融合 + FP8 原生支持,延迟最低。H100 上 10,000+ Token/s。适合:NVIDIA GPU 生产环境、延迟敏感场景。
TGI(HuggingFace):HuggingFace 官方推理框架,与 HF 生态深度集成,Flash Attention,水印安全。易用性最高。适合:快速原型、HF 生态用户。
3.2 四种部署模式
云端 API:OpenAI/Anthropic/Google API,按 Token 计费,零运维。适合快速验证和小规模应用。成本 $0.5-$75/1M Token。
本地部署:自建 GPU 集群,vLLM/TGI 服务,数据不出域。适合企业级和数据敏感场景。成本 $2-10/GPU·小时。
边缘部署:消费级 GPU/Mac,GGUF + llama.cpp,INT4 量化。适合个人开发者和离线场景。一次性硬件成本。
混合部署:本地小模型 + 云端大模型。简单请求本地处理,复杂请求上云。成本降低 50-80%,质量保持高水平。
3.3 成本优化:Token 经济学
成本公式:总成本 = GPU 小时成本 × 推理时长 = GPU$/h × (T_in/v_pre + T_out/v_dec)。优化任一环节都能降本。
实际成本对比(70B 模型):FP16 + 2×A100 约 $8/h;INT8 + 1×A100 约 $4/h(-50%);INT4 + 1×A100-40GB 约 $2/h(-75%)。量化是最直接的降本手段。
降本策略组合:量化(减半内存)+ 开源模型(零 API 费用)+ 混合部署(简单请求本地)+ 缓存(避免重复计算)+ 批处理(提升吞吐)= 成本降低 80-90%。
🎁 总结速查卡
推理两阶段
| 阶段 | 瓶颈 | GPU 利用率 | 优化方向 |
|---|---|---|---|
| Prefill | 计算 | 80%+ | Flash Attention / Tensor 并行 |
| Decode | 内存带宽 | 10-30% | 量化 / 批处理 / 推测解码 |
六大优化技术
| 优化 | 目标 | 效果 | 质量损失 |
|---|---|---|---|
| FP8 量化 | 内存减半 | 1.5-2x | < 0.1% |
| INT8 量化 | 内存减半 | 1.5-2x | < 0.5% |
| INT4 量化 | 内存 1/4 | 2-3x | 1-3% |
| 连续批处理 | 吞吐提升 | 2-4x | 无 |
| 推测解码 | 延迟降低 | 2-3x | 无 |
| PagedAttention | 内存效率 | 2-4x | 无 |
一句话总结
LLM 推理部署的核心挑战是"瓶颈转移":Prefill 计算密集(GPU 算力瓶颈),Decode 内存带宽密集(HBM 带宽瓶颈),两阶段优化策略完全不同。四大推理指标:TTFT(首 Token 延迟)、TPOT(每 Token 时间)、吞吐量、端到端延迟。KV Cache 是核心数据结构也是内存瓶颈,128K 上下文可达 320GB+,PagedAttention 将 GPU 利用率从 20% 提升到 80%+。六大优化技术:量化(FP8/INT8/INT4,最直接降本)、连续批处理(吞吐 2-4x)、PagedAttention(内存效率 2-4x)、推测解码(无损 2-3x)、Flash Attention(2-4x)、前缀缓存(避免重复计算)。三大推理框架:vLLM(吞吐最高)、TensorRT-LLM(延迟最低)、TGI(易用最高)。四种部署模式:云端 API(最快上线)、本地部署(数据安全)、边缘部署(隐私优先)、混合部署(成本优化)。推理部署 = 延迟 × 吞吐 × 成本的三维优化——工程的艺术是在约束中找到最优解。
参考链接:
- vLLM: Efficient Memory Management for LLM Serving (Kwon et al., SOSP 2023)
- Flash Attention (Dao et al., 2022)
- GPTQ: Accurate Post-Training Quantization (Frantar et al., 2023)
- AWQ: Activation-aware Weight Quantization (Lin et al., 2024)
- Speculative Decoding (Leviathan et al., 2023)
系列预告:第 05 篇将深入 LLM 的 Agent 与应用——从 ReAct 循环到 MCTS,从 RAG 到工具调用,拆解 LLM 从"对话"到"行动"的关键跃迁。
更多推荐


所有评论(0)