大模型推理核心原理:KV Cache、Prefill、Decode、TTFT、vLLM、算子
2026/8/24 21:21:08 网站建设 项目流程

在大模型落地部署、推理优化中,KV Cache、Prefill/Decode、TTFT/TPOT、GPU算子、vLLM 是一套高度关联的核心体系。本文将系统性地讲解大模型自回归推理的核心原理、推理阶段特性、性能瓶颈与工程优化方案,梳理完整的底层落地逻辑。

一、大模型推理的核心痛点:重复计算

当前主流大模型(LLaMA、Qwen、GPT 系列)均为解码器自回归模型,生成文本的规则是:逐 Token 生成,生成一个 Token 后,将完整历史序列作为输入,预测下一个 Token。

如果不做任何优化,每生成一个新 Token,模型都会对所有历史 Token 重新做一次注意力计算。注意力机制的时间复杂度为O(n²),上下文越长,计算量爆炸式增长,推理速度极慢,完全无法落地商用。

基于这个痛点,业界诞生了大模型推理最核心的优化技术:KV Cache

二、KV Cache:大模型推理的核心加速基石

2.1 什么是 KV Cache

KV Cache 是存储在 GPU 显存中的Key、Value 向量缓存数据,而非代码或算法。

模型注意力计算的核心公式为:$$\text{Attention}(Q,K,V)=\text{softmax}(\frac{QK^\top}{\sqrt{d_k}})V$$。在自回归推理中,历史 Token 的 K、V 向量一旦计算完成,永远不会改变,只有当前最新 Token 的 Q 向量是全新的。

因此我们可以将所有历史 Token 的 K、V 向量提前计算并缓存到显存中,后续生成新 Token 时,无需重复计算历史序列,直接读取缓存数据即可。

2.2 KV Cache 的核心价值与代价

核心价值:将解码阶段注意力复杂度从 O(n²) 降至 O(n),彻底解决长序列重复计算问题,大幅提升推理速度。

核心代价:占用大量 GPU 显存。对话序列越长、并发请求越多,KV Cache 显存占用越高,甚至会超过模型权重本身的显存占用,是限制推理并发和上下文长度的核心瓶颈。

2.3 主流 KV Cache 优化方案

  • GQA/MQA:减少 KV 头数量,直接压缩缓存体积,是主流模型标配方案;

  • KV 量化:将 FP16 精度转为 INT8/INT4,以微小精度损失换取大幅显存节省;

  • 缓存淘汰策略:丢弃低权重不重要 Token 的 KV 向量,适配超长上下文场景;

  • PagedAttention:分页式内存管理,解决 KV Cache 内存碎片问题(vLLM 核心技术)。

三、推理两大核心阶段:Prefill 与 Decode

大模型每一次对话推理,都会严格分为Prefill(预填充)Decode(解码生成)两个阶段,两个阶段的计算特征、瓶颈、作用完全不同,且直接决定推理性能指标。

3.1 Prefill 预填充阶段

Prefill 是推理的第一阶段,负责一次性处理用户输入的完整 Prompt,对所有 Prompt Token 进行并行计算

该阶段的核心任务:计算所有输入 Token 的 Q、K、V 向量,初始化构建完整的 KV Cache,并输出对话的第一个 Token。

核心特征:算力密集型(Compute-Bound),矩阵运算量大,GPU 算力打满,时间复杂度 O(n²)。Prompt 越长、文档越大(RAG 场景),Prefill 耗时越高。

对应性能指标:TTFT(首 Token 延迟)。

3.2 Decode 解码阶段

Prefill 完成后,进入循环 Decode 阶段,这是模型逐字生成回答的阶段。

该阶段的核心逻辑:每次仅计算当前最新 1 个 Token的 Q、K、V,复用 Prefill 构建的历史 KV Cache,完成注意力计算,并将新的 K、V 追加缓存,循环迭代直到生成结束符。

核心特征:带宽密集型(Bandwidth-Bound),单次计算量极小,瓶颈在于反复读写显存中的 KV Cache,GPU 算力利用率偏低。

对应性能指标:TPOT(单 Token 生成耗时)。

四、推理核心性能指标:TTFT 与 TPOT

4.1 TTFT(Time To First Token,首 Token 延迟)

定义:从用户提交请求,到模型返回第一个输出 Token的总耗时。

TTFT 几乎完全由Prefill 阶段耗时决定,同时受网络延迟、请求排队、GPU 算力影响。

业务意义:直接决定用户聊天体感,TTFT 过高会让用户误以为服务卡顿。RAG 场景下超长检索文档会显著拉高 TTFT。

优化思路:Prompt 缓存、限制并发 Prefill 数量、Prefill/Decode 分离部署、高性能算子加速。

4.2 TPOT(Time Per Output Token,单 Token 耗时)

定义:首个 Token 生成后,后续每生成一个 Token 的平均耗时,对应 Decode 阶段。

TPOT 瓶颈是显存带宽和 KV Cache 读写效率,决定了模型后续的打字速度。

两者的区别可以概括为:TTFT 决定模型响应的等待时长,TPOT 决定模型持续生成文本的速度。

五、底层执行单元:GPU 算子

Prefill 计算、KV Cache 读写、Decode 解码等所有模型运算逻辑,最终都依靠 GPU 算子(Kernel)执行。算子是 GPU 硬件层面最小的可执行计算单元,是模型推理的底层执行载体。

常见核心算子分类:

  • 基础计算算子:矩阵乘法、归一化、RoPE 位置编码、激活函数;

  • 注意力优化算子:FlashAttention、PagedAttention;

  • 缓存专用算子:reshape_and_cache,负责将 K、V 向量写入显存、更新 KV Cache。

算子的性能直接决定推理速度,原生 PyTorch 算子效率极低,商用推理均采用高度优化的定制 GPU 算子。

六、工程落地框架:vLLM

vLLM 是当前业界主流的大模型高吞吐推理引擎,它没有发明 KV Cache 原理,而是解决了传统 KV Cache 的致命缺陷:显存碎片多、并发能力弱、内存利用率低

vLLM 核心创新是PagedAttention 分页注意力机制,借鉴操作系统虚拟内存思想:

  1. 将整块 KV Cache 显存切分为固定大小的物理 Block 块;

  2. 通过 Block-Table 映射逻辑地址与物理地址,支持 KV Cache 零散存储;

  3. 实现 Block 块的复用、分配、回收,彻底消除内存碎片;

  4. 上层调度 Prefill/Decode 请求,底层调用高性能算子完成计算与缓存读写。

三者的层级关系清晰明确:KV Cache是推理过程中产生的显存数据,算子是负责计算和读写的底层工具,vLLM 是统筹调度资源、优化整体推理效率的工程平台。

七、完整推理链路串联

用户发送对话请求 → vLLM 调度器接收请求并排队 → 进入Prefill 阶段→ 调用 FlashAttention 算子并行计算全部 Prompt Token 的 Q/K/V → 通过缓存算子写入显存、初始化 KV Cache → 输出第一个 Token(完成 TTFT 计时) → 进入Decode 循环阶段→ PagedAttention 算子读取历史 KV Cache → 计算新 Token 并追加更新缓存 → 持续生成文本(TPOT 计时)→ 直到生成结束。

八、核心点总结(面试/工作可用)

1.KV Cache是显存中存储的 K、V 向量缓存,通过复用历史计算结果,将解码复杂度从 O(n²) 降至 O(n),是自回归推理的核心加速技术,痛点是显存占用高、易产生内存碎片。

2.Prefill处理完整用户 Prompt,并行计算构建 KV Cache,算力密集,决定首 Token 延迟 TTFT;Decode逐 Token 生成,复用缓存,带宽密集,决定单 Token 生成速度 TPOT。

3.算子是 GPU 底层计算内核,所有模型计算、KV 缓存读写都依赖优化后的 GPU 算子实现。

4.vLLM基于 PagedAttention 分页内存管理,解决传统 KV Cache 内存碎片问题,通过高效请求调度和高性能算子调用,大幅提升推理并发和吞吐。

九、核心概念关系对照表

概念

本质

核心作用

对应阶段/瓶颈

KV Cache

显存张量数据

缓存历史 K/V,避免重复计算

全程复用,显存瓶颈

Prefill

推理计算阶段

初始化 KV Cache,生成首 Token

算力密集、TTFT

Decode

推理计算阶段

逐字生成文本,迭代更新缓存

带宽密集、TPOT

算子

GPU 计算内核

执行所有张量运算、缓存读写

底层执行载体

vLLM

推理服务框架

调度请求、管理显存、优化吞吐

工程落地层

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询