你有单卡 A100 80G,要上线一个 7B decoder-only 模型,同时承接两个业务:业务 A 是长 prompt(约 4k tokens)短输出(约 100 tokens)的摘要,业务 B 是短 prompt(约 200 tokens)长输出(约 1k tokens)的代码补全。团队让你在 vLLM 和 TensorRT-LLM 之间二选一。请给出你的选择和判断依据,并具体说明 PagedAttention 在 A、B 两个业务上带来的收益分别体现在哪里、哪个业务上收益相对不明显,为什么。
面试官在考什么
判断候选人是否真的理解推理引擎的显存管理与调度机制,而不是停留在「谁快谁慢」的选型印象;考察能否把引擎特性映射到具体业务负载特征上做取舍。
回答框架 · 前两步
- 选型要落到负载特征:业务 A 是 prefill 重、prompt 变长,业务 B 是 decode 重、输出长,两者对显存碎片和单步延迟的敏感点不同。
- PagedAttention 的收益本质是把 KV cache 按 block 非连续存放,消除「按 max_len 预留」造成的内部碎片和请求间外部碎片,收益大小正比于请求长度方差和并发数。
还有 3 条答案要点、 3 层追问、 5 个常见坑, 以及针对你简历的追问路径,在定制报告里。
同一能力域的其他题
- 解释一下 KV Cache 是什么、为什么能加速推理,以及它带来的显存代价怎么算。
- 推理服务里 continuous batching 和静态 batching 有什么区别?为什么前者吞吐更高?
- 模型量化你了解哪些方案?训练后量化(PTQ)和量化感知训练(QAT)怎么选?量化后精度掉了怎么定位?
- 显存优化除了量化还有哪些手段?请按"省的是什么"把它们分类。
- 线上大模型服务的延迟怎么拆解?哪些部分你能优化、哪些是硬上限?
- 你们要上线一个 13B 对话模型,SLA 是 P99 TTFT < 1.5s、平均 TPOT < 40ms。流量特征是白天峰值 QPS 是凌晨的 8 倍,输入长度 P50=300 token、P99=6000 token。模型权重每周要热更一次,业务方后续还想在同一张卡上挂 2~3 个 LoRA adapter 做灰度。团队已经在 vLLM 上跑通了原型;TensorRT-LLM 只在离线 benchmark 里跑过,同卡同 batch 下吞吐比 vLLM 高约 40%。你怎么做上线选型?如果你选 vLLM,怎么补它相对 TensorRT-LLM 的差距;如果你选 TensorRT-LLM,怎么处理热更和 LoRA?