Skip to content

一句话总结:大模型推理 = 先把输入整段算一遍(Prefill),再逐 token 自回归生成(Decode);KV Cache 用显存换重复计算,vLLM 分页管理把显存利用率从 20-40% 拉到 90%+;采样策略与思维链决定输出"怎么选、多聪明"。

推理两阶段

阶段做什么特点
Prefill处理整段输入,计算并缓存所有 token 的 K/V计算密集(compute-bound)
Decode每次输入 1 个新 token,自回归生成内存密集(memory-bound),GPU 利用率低

KV Cache:显存换速度

  • 问题:生成第 N 个 token 时,注意力要跟前面所有 token 算——若每次都重算,复杂度是序列长度的二次方
  • 解法:历史 token 的 K/V 只算一次,存起来复用;每次只算新 token 的 QKV
  • 代价:显存爆炸——KV Cache 随序列长度线性增长,长上下文 = 大显存
  • 这是"上下文越长越贵"的数学根源(对接 [AI-Agent-生产部署](/学习笔记/AI技术/AI Agent/AI-Agent-生产部署) 的成本治理)

显存与速度优化(生产必考)

技术原理收益
PagedAttention(vLLM 首创)KV 分页管理,消除碎片按需分配显存利用率 20-40% → 90%+,并发提 3 倍
Prefix Caching缓存共享前缀(系统提示词/历史对话)的 KV多轮/批量场景避免重复计算
KV 量化KV Cache 从 FP16 压到 INT8/4省显存,小幅精度损失
FlashAttentionIO 优化(减少显存读写)训练/推理都提速
推测解码小模型草稿并行生成多个候选,大模型批量验证无损加速(不改变输出分布)

采样策略:怎么选下一个词

模型输出是概率分布,策略决定如何采样:

策略行为适用
贪婪解码恒选概率最高 token确定性最强,但易重复/呆板
温度采样温度 T 调分布尖锐度(T 高更随机、T 低更确定)创意/翻译调参主力
Top-P / Top-K只在累计概率 p 或前 k 个词里采样去掉长尾噪声,配温度用
  • 工程直觉:代码/事实任务 T 调低(0.1-0.3),创意任务 T 调高(0.7-1.0)

思维链 CoT:推理时"一步步想"

  • 原理:让模型显式输出中间推理步骤("Let's think step by step"),把复杂任务分解
  • 为什么有效:Transformer 单次前向难以做长推理,CoT 把推理过程"外化"到文本里,逐步推进
  • 与推理扩展相关:test-time compute(给更多 token 换更高准确率);DeepSeek-R1 类模型用 RL 训练出 CoT 能力

面试要点

  • 能讲清 Prefill vs Decode 两阶段与各自瓶颈
  • 能默写 KV Cache 原理与代价(显存爆炸),并报出 vLLM 的数字(20-40% → 90%+)
  • 能说采样三参数(温度/Top-P/Top-K)怎么配
  • 能解释 CoT 为什么有效 + 代价(token 翻倍、延迟上升——"代价意识"是拉分点)

相关概念