🧠AI 部署与项目实战

推理量化与加速

面试回答

常见问法

  • INT8、INT4、FP8、NF4 分别是什么?
  • 量化会损失多少精度?哪些层对量化敏感?
  • vLLM、TensorRT-LLM、SGLang、TGI 的差异是什么?
  • PagedAttention、Continuous Batching 分别解决了什么?

回答

待补充:分两层讲——模型层优化(量化、蒸馏、稀疏)+ 系统层优化(调度、batching、KV cache 管理)。

追问

  • GPTQ、AWQ、SmoothQuant 的适用场景?
  • 为什么 KV cache 占显存越来越多?PagedAttention 怎么处理?
  • 推理 batch size 怎么选?太大太小各自坏在哪?
  • 推理侧的投机解码(Speculative Decoding)是怎么工作的?

原理展开

  • 权重量化:INT8 基本无损,INT4 需要校准(GPTQ/AWQ)
  • KV cache 量化:FP8 / INT8,典型可降 30-50% 显存
  • PagedAttention:参考 OS 分页,把 KV cache 切块管理,消除内部碎片
  • Continuous Batching:请求到达即合并,空位立即填充
  • Speculative Decoding:小模型提草稿,大模型验证,通过率 60-80%
  • 蒸馏 / MoE / 稀疏:结构层面压缩

易错点

  • 认为 INT4 量化掉点可以忽略,没做下游任务评测
  • 只调 batch size,不调 KV cache 显存上限
  • vLLM 和 TGI 混用术语,搞错调度模型
  • 投机解码对长尾任务收益差,盲目开启反而更慢

记忆技巧

  • 两层优化:模型层(怎么压)+ 系统层(怎么调度)
  • PagedAttention:KV cache 的虚拟内存
  • 选型口诀:短请求靠 batching,长请求靠 KV 管理,吞吐靠量化