先抓住整条链路
用输入、表示、注意力、损失、梯度和推理串起模型从训练到回答的全过程。
这章的词很多:token、embedding、Transformer、attention、parameter、loss、gradient descent、inference。不要逐个背。先把它们放进同一条链路里。
最短版本
模型训练大致可以这样看:
输入样本 → 转成数字表示 → 模型计算 → 得到预测 → 和目标答案比较 → 计算损失 → 根据损失调整参数 → 重复很多轮 → 训练好的模型进入推理阶段。
用户平时问聊天机器人一个问题,看到的是最后的“推理”。前面漫长的训练已经发生过了。
1. 输入先被切成 token
模型不能直接读人类文字。文本会先被 tokenizer 切成 token。token 可以是一个字、一个词、一个词片段,具体取决于 tokenizer 设计。
这会影响很多使用体验:
- 上下文长度通常按 token 计费和限制;
- 中英文、代码、符号的 token 消耗不同;
- 长文档塞太多,会直接推高成本和延迟。
2. token 被变成向量表示
模型会把 token 转成 embedding,也就是一串数字。数字本身不“懂语义”,但训练会让相近语义、相近用法在向量空间里形成有用结构。
这是后面计算的基础。无论是文本生成、语义检索还是分类,很多时候都要先把内容变成向量。
3. Transformer 层处理上下文
Transformer 会反复处理这些向量。注意力机制让模型在当前位置计算时,参考上下文里更相关的位置。
这解释了为什么现代语言模型擅长处理上下文:它不只是看前一个词,而是在整个上下文里计算关系。
4. 输出先是概率,不是最终答案
语言模型每一步通常是在预测下一个 token 的概率分布。它不是先在脑子里写好完整答案,再一次性吐出来。
这也解释了为什么生成会受 temperature、top-p、解码策略影响。模型给的是概率,系统还要决定怎么从概率里采样或选择。
5. 训练时用损失衡量错多少
训练阶段,模型的预测会和目标答案比较。Loss Function 负责把差距变成一个可优化的数值。
损失不是人类意义上的“道歉”,而是训练信号。它告诉系统:当前参数状态下,预测离目标还有多远。
6. 梯度下降调整参数
知道错多少还不够,还要知道往哪边改。反向传播和梯度下降会把错误信号传回模型内部,逐步调整参数。
每次更新很小,但在海量数据和大量训练步骤之后,模型会形成可用能力。
7. 推理阶段使用训练好的参数
训练结束后,参数固定下来。用户输入问题时,模型用这些参数和当前上下文生成答案。这就是推理。
推理通常不改变模型参数。你和模型聊了一句,它不会因此永久学会你的新知识。要让系统使用新资料,通常要靠 RAG、记忆系统、数据库或后续训练。
这条链路怎么帮你判断问题
| 问题 | 可能在哪一层 |
|---|---|
| 上下文太长、费用高 | token、推理服务 |
| 资料缺失、答旧信息 | 外部知识/RAG,不是参数自动更新 |
| 输出格式不稳定 | 提示词、解码、结构化输出 |
| 领域任务总错 | 数据、训练、微调或任务拆解 |
| 长文关系处理不好 | 上下文、注意力、检索切片 |
先记住这条链,后面的术语就不再是一堆散词。