LLM生成文本每次是把之前所有的token都输入,还是只输入上一个token?

LLM生成文本时,是自回归地生成。那每次是把之前所有的token都输入,还是只输入上一个token?

答:在逻辑层面上,是输入"之前所有的token";但在物理运算层面,我们通过一种技术手段避免了重复计算。

1. 逻辑层面:为什么需要"全量输入"?

LLM(如 GPT 系列)基于 Transformer Decoder 架构。为了预测下一个词,模型必须理解上文的语境。

如果只输入"上一个 token",模型就像一个只有极短记忆的人,它知道当前的词,但不知道之前的逻辑。例如:

  • 上文: "巴黎是法国的..."
  • 当前输入: "的"
  • 逻辑: 模型需要看到"巴黎"、"是"、"法国"才能准确预测出"首都"。

因此,在自回归生成(Autoregressive Generation)的定义中,每一步生成的概率公式如下:

P(xt∣x1,x2,...,xt−1)P(x_t | x_1, x_2, ..., x_{t-1})P(xt∣x1,x2,...,xt−1)

这代表第 ttt 个词的产生,取决于前面 所有 词的序列。


2. 物理层面:KV Cache(键值缓存)技术

虽然逻辑上需要全量信息,但如果每次都把成千上万个词重新通过模型计算一遍,效率会极其低下(计算量呈平方级增长)。

为了解决这个问题,现代 LLM 使用了 KV Cache 技术:

  • 只"计算"最新 Token: 实际上,每一轮推理中,只有最新生成的那个 token 会经过完整的神经网络计算。
  • 缓存旧信息: 之前所有 token 的计算结果(具体为 Attention 机制中的 Key 和 Value 向量)已经存在显存里了。
  • 拼接与注意力: 模型通过将"新生成的 KV"与"缓存的旧 KV"进行拼接,让新 token 能够与历史信息产生"注意力(Attention)"连接,从而得出预测结果。
相关推荐
大傻^1 分钟前
LangChain4j Agent 模式:ReAct、Plan-and-Solve 与自主决策
人工智能·agent·langchain4j·自主决策
跨境海王哥1 分钟前
ChatGPT降智怎么恢复?GPT-5.4降智原因与恢复方法
人工智能·chatgpt
码农三叔2 分钟前
(10-5-01)大模型时代的人形机器人感知:基于RoboBrain大模型的人形机器人通用智能感知系统(1)构建模型
人工智能·算法·机器人·人形机器人
scott1985122 分钟前
扩散模型之(十三)条件生成 Conditioned Generation
人工智能·算法·生成式
balmtv2 分钟前
GPT-5.4 vs Gemini 3.1 Pro:推理与效率的终极对决
人工智能·gpt
EriccoShaanxi3 分钟前
石英加速度计破局石油钻井,如何征服极端温度?
人工智能·机器人·无人机
weixin_6683 分钟前
2026年AI Agent四大技术突破解析
人工智能·经验分享
weixin_509138344 分钟前
迈向 AGI/ASI 的度量
人工智能·agi·智能体
AI视觉网奇9 分钟前
vscode 激活环境失败
人工智能
hjs_deeplearning10 分钟前
文献阅读篇#18:端到端自动驾驶:从经典范式到大模型赋能——综合综述
人工智能·机器学习·自动驾驶