Decode(解码阶段)

就是大模型一个字一个字往外吐词的那个过程,每生成一个字都得重新跑一遍模型。

亦作、亦称:解码阶段 · Token Generation · 自回归解码 · Autoregressive Decoding · 生成阶段

解码阶段是 LLM 推理的核心环节,决定了模型逐 token 生成文本的速度与质量。理解其工作机制是优化推理性能、降低延迟的基础。

概述

解码阶段(Decode Phase)是大语言模型推理流水线的第二阶段,在 Prefill 完成输入并建立 KV Cache 后启动。

  • 核心任务:自回归地生成每一个输出 token,直到序列结束
  • 输入:Prefill 阶段的最后一个 logit 向量 + 已缓存的 KV Cache
  • 输出:逐步扩展的 token 序列,最终拼接为完整回复
  • 串行特性:每步依赖前一步结果,无法并行,与 Prefill 的并行计算形成鲜明对比
  • 性能指标:通常以 TPOT(Time Per Output Token,每 token 生成时间)衡量

工作原理

每个解码步骤可拆解为以下环节:

  • 读取 KV Cache 27: 从 GPU 显存中加载之前所有 token 的 Key/Value 矩阵,以完成注意力计算
    -前向传播 将当前 token 的 embedding 送入 Transformer 各层,计算自注意力(Causal Mask 保证只看历史)与 FFN
    -
    采样策略
    对最终 logit 向量应用 Softmax,再通过贪婪解码(argmax)、Top-k 采样Top-p(Nucleus)采样温度(Temperature) 缩放选出下一 token
    -追加序列 将新 token 追加到序列并更新 KV Cache,为下一步做准备
    -
    终止判断
    检测到EOS token 356或达到 max_new_tokens 时停止

解码策略与变体

不同采样策略在质量与多样性之间做出不同权衡:

  • 贪婪解码(Greedy Decoding):每步选概率最高的 token,速度快但易重复、缺乏创意
  • 束搜索(Beam Search):维护 k 条候选序列,适合翻译等需高精度场景,显存开销大
  • Top-k 采样:从概率最高的 k 个 token 中随机采样,平衡多样性与质量
  • Top-p(Nucleus)采样:从累积概率超过 p 的最小 token 集合中采样,自适应候选数量
  • 投机解码(Speculative Decoding):用小草稿模型批量生成多个候选 token,主模型一次性验证,可实现无损加速 2-3×

应用场景

解码阶段广泛存在于所有自回归生成任务中:

  • 对话与问答:ChatGPT、Claude 等聊天机器人的实时流式输出(streaming)
  • 代码补全:GitHub Copilot 等工具逐 token 生成代码建议
  • 机器翻译:编码器-解码器架构(如 NLLB)中解码器的输出阶段
  • 多模态生成:图像自回归模型(LlamaGen、DALL-E)按 patch token 顺序生成图像
  • 长文档生成:报告、摘要等需要数千 token 的输出任务,延迟优化尤为关键

与 Prefill 阶段的区别

Prefill 与 Decode 是推理的两个性质截然不同的阶段:

  • 并行度:Prefill 可对所有输入 token 并行计算(矩阵-矩阵乘),Decode 每步只处理 1 个 token(矩阵-向量乘)
  • 瓶颈类型:Prefill 是计算密集型(compute-bound),Decode 是内存带宽密集型(memory-bound)
  • 延迟贡献:Prefill 决定首 token 延迟(TTFT),Decode 决定逐 token 延迟(TPOT)
  • 优化方向:Prefill 优化关注算子融合与并行,Decode 优化关注 KV Cache 压缩、连续批处理与投机解码
  • 分离部署:现代推理系统(如 Mooncake、Disaggregated Inference)将二者部署在不同实例上以避免资源竞争

局限与常见误区

理解解码阶段时需注意以下几点:

  • 误区:Decode 与 Autoencoder 解码器混淆——LLM 推理的「解码阶段」与 VAE/AE 中「Decoder 网络」是完全不同的概念,前者指推理流程,后者指网络结构
  • 误区:增大 batch size 能线性加速 Decode——受内存带宽限制,Decode 吞吐对 batch size 不敏感,直到达到内存瓶颈
  • KV Cache 显存压力:长上下文时 KV Cache 可能占满显存,需要 PagedAttention 或 KV 量化等技术缓解
  • 采样随机性:Temperature > 0 时每次生成结果不同,不适合需要确定性输出的场景
  • 自回归的根本限制:串行生成无法通过加更多 GPU 直接加速单请求延迟,只能通过算法创新(投机解码等)突破

发展脉络

解码技术随 LLM 规模扩大而持续演进:

  • 2017:《Attention Is All You Need》提出 Transformer,Decoder 自回归生成成为标准范式
  • 2018-2020:GPT、GPT-2、GPT-3 验证大规模自回归语言模型的有效性,解码阶段延迟问题开始受到重视
  • 2022FlashAttention(Dao et al.)大幅降低注意力计算的内存开销,间接加速 Decode
  • 2023投机解码(Speculative Decoding,Leviathan et al. / Chen et al.)首次实现无损 2-3× 加速;PagedAttention(vLLM)解决 KV Cache 显存碎片问题
  • 2024-2025Prefill-Decode 分离架构(Mooncake、DistServe 等)在生产系统中广泛落地;MLA(Multi-head Latent Attention,DeepSeek-V2)大幅压缩 KV Cache 规模
  • 2025-2026:面向长上下文与 Agent 场景的解码优化(流式 KV 驱逐、分层 KV Cache)成为研究热点

常见误解

日常交流中容易听到的简化说法,未必准确,但能帮助理解误解从何而来。

  • 「就是大模型一个字一个字往外吐词的那个过程,每生成一个字都得重新跑一遍模型。」
  • 「Decode 和 Prefill 是推理两大阶段,Prefill 一次并行处理完输入,Decode 才是真正慢的那步。」
  • 「模型回答你问题时屏幕上一个个字蹦出来,背后就是 Decode 在反复采样下一个 token。」

相关术语

和本术语关联紧密的其他词条,便于串联理解。

延伸阅读

从知识库精选 3 篇文章,帮助深入理解该术语。

  1. 1

    LLM 推理优化 2026:从 Prefill-Decode 分离到投机解码的全栈技术指南

    2026 年,LLM 推理优化已经从单一的模型量化发展为涵盖架构设计、调度策略、内存管理、硬件协同的全栈工程。本文系统梳理 LLM 推理优化的完整技术图谱:Prefill-Decode 分离架构(PD Separation)、投机解码(Speculative Decoding)、PagedAttention v2、动态批处理、KV Cache 压缩、以及 vLLM/TensorRT-LLM/SGLang 三大推理引擎的深度对比与选型指南。

  2. 2

    多模态学习(三):多模态大模型与统一架构

    从图像到文本再到图像,理解跨模态生成的核心技术

  3. 3

    自编码器 Autoencoder:压缩与重建

    从编码到解码,理解自编码器如何学习数据的高效表示

外部参考

维基百科:查看「Decode」词条

本页内容为本站原创撰写;维基百科链接仅作延伸参考。