一、LLM 到底在做什么?

给它一段上下文,它会预测“下一段最可能出现的 token”。

LLM的关键不在于“猜中一个固定答案”,而在于输出一个概率分布:每个候选 token 都有概率。然后模型从这个分布中选出一个 token,追加到上下文后,再用新的上下文继续预测。如此循环,文章、对话、代码就被逐步生成出来。这种“边预测、边生成”的机制正是LLM的核心,技术上我们称之为自回归生成

为了把预测准确率逼近极限,模型被迫把大量人类知识压缩进参数空间。它并不是先“理解”再“预测”,而是在持续优化预测误差时,逐步形成了可用于推理的内部表征。对于高难度文本,如果模型缺少结构化理解,就很难持续预测正确的下一个词。

二、Transformer

1) Tokenization:

模型不直接处理字面词语,而是处理 token。,Tokenization(分词/令牌化) 是将连续的文本拆解为 Tokens 的过程。它是大语言模型处理语言的第一步。

2) Embedding:

每个 token 会映射成一个数字向量(空间坐标点),语义相近的 token,向量往往更接近。

因此参数量可直接拆解为:50,257 x 12,288 ≈ 6.17 亿。这些交叉位置上的数值都是可学习权重,会在训练中反复调整,让语义接近的词(如“猫/狗”)更靠近、语义无关的词(如“猫/手机”)更远。

为什么维度需要这么高?因为语言不是三维几何体,而是高复杂度的语义系统。高维向量能并行编码词性、语气、语义类别、逻辑关系和上下文偏好,后续 Attention 才能做更细粒度的语境重组与推理。

词向量会更新吗?会。这里要区分两个阶段:先查到“静态初始向量”,再在神经网络中变成“动态隐藏状态”。

这正是模型能做语义消歧的关键:如果只用静态向量,不做逐层更新,模型很难区分一词多义和复杂上下文关系。

3) Attention:

当模型处理一个词(如“王”)时,会按下面四步完成语义更新:

多头注意力可理解为:

4) 前馈层(MLP):

前馈层会对每个位置做两步变换:

为什么这一层不可或缺:

从参数分布看,Transformer 中前馈层通常是参数大户(常占据主要份额)。这也是它在“记住知识 + 识别模式 + 细化语义”上表现强的核心原因。

5) 反复堆叠:Attention 与 MLP 交替多层执行

为什么要交替执行?可以把每层看成一个加工车间:

语义不是一次成型,而是层层累积。比如“王”在浅层也许只捕捉到邻近词,中层开始判断是姓氏还是头衔,深层再结合全文主题,形成任务相关的最终解释。

同一个 token 的隐藏状态在不同深度关注点不同:

为什么自回归预测主要看序列末尾?因为“下一词决策点”就在当前位置。末尾位置的向量经过多层堆叠后,已经压缩了前文关键信息,再与词表空间匹配,得到最可能的下一个 token 分布。

阶段 表示状态 类比
输入阶段 静态 token / 初始向量 原始零件
中间层 动态上下文向量 组装中的半成品
最终层(末尾) 用于预测的高判别表示 即将触发结论的引信

6) Unembedding + Softmax:从向量变成概率分布

到这一步,模型手里仍是一串高维数字(隐藏状态),还不是人类可读的词。解嵌入矩阵(W_U 的任务,就是把“思想向量”映射回词表空间。

计算上可以理解为:用当前末尾向量去和词表中每个候选词向量做相似度打分(常用点积)。这组原始分数就叫 logits,可能像 [15.2, -3.1, 0.5, ...],能排序但还不是概率。

Softmax 会把 logits 变成合法概率分布:

生成时常用 温度(temperature, T) 控制随机性:

最后进入 Sampling(采样):模型通常不会永远贪心选第一名(否则易模板化)。温度等采样参数会改变分布形状,允许次高概率词在合适场景被选中。选定新 token 后,它会被拼回上下文,进入下一轮自回归预测循环。

三、训练到底在做什么:

1) 预训练(Pretraining)

模型从随机参数开始,最初输出基本是噪声。训练时把样本前文喂给模型,让它预测后续 token,再把预测与真实 token 对比,通过反向传播更新参数。这个过程在海量样本上反复进行。

你可以把训练理解成“调一台有数千亿旋钮的机器”,每次根据误差微调旋钮。随着样本累计,模型逐渐学会更好的统计规律与语义规律。

2) 后训练(Post-training)与微调(Fine-tuning)

概念层级可以按包含关系理解为:

在后训练里,它们分别扮演不同角色:

一句话记忆:后训练是阶段,微调是方法,对齐是目标,RLHF/DPO 是实现目标的路径

3) 对齐训练

预训练后的模型“会续写”,但不一定“会服务”。对齐训练的核心是用人类偏好重排输出概率,让模型在可用性与安全性上更像助手。

四、上下文窗口:

模型一次处理的 token 数有限,这叫上下文窗口。窗口越大,能参考的历史越多,长文一致性和复杂任务表现通常更好;窗口受限时,长对话会出现“记忆衰减”。

五、KV Cache

长文本推理的复杂度压力:序列增长时,注意力计算代价会显著上升(常写作 O(N^2));KV Cache 的价值在于避免重复计算,提升连续生成效率。

1) KV 爆炸:

KV Cache 省了时间,但会吃显存。上下文越长,缓存越大;在大模型长对话里,显存瓶颈往往先于算力瓶颈到来。

2) 工程优化