
本课学习重点
- 词元 Token
- 概率分布
- 采样
先从一个具体问题出发
模型一次只续写一个词元
看到“今天适合去公园”,模型不会一次写完整段落,而是根据上下文预测下一个词元的概率。选出一个词元后,它被追加到上下文,再重复同样过程。
GENERATE & BUILD
通过下一词元概率和温度实验理解分词、语言建模、采样、上下文与幻觉。
这一课要回答:大语言模型如何生成文字建立必要的基础概念
先认识三个关键词
先看每个概念负责什么,再把它们放回完整流程。无需先记公式,先建立直觉。
模型处理文字的基本单位
可能是一个字、词的一部分或标点,不完全等于自然语言中的词。
为候选下一词元打分
模型输出许多候选的相对概率,不是直接检索一句固定答案。
从概率中选择下一步
贪心、温度和 top-p 等策略会影响稳定性与多样性。
把概念连接成流程
文本生成循环
按顺序走一遍,观察每一步的输入、动作与输出。
- 01
切分输入
提示词转换为词元编号。
- 02
理解上下文
Transformer 计算每个位置的上下文表示。
- 03
预测下一词元
输出候选词元的概率分布。
- 04
选择并继续
加入选中词元,直到停止条件满足。
互动实验 · 动手建立直觉
调整温度,观察下一词元概率
较低温度让高分候选更集中,较高温度让分布更平缓。点击候选词元继续一句话。
今天阳光很好,适合去公园 …
知道模型能做什么,也知道不能做什么
三个容易忽略的边界
技术名词描述的是一种计算方法。真正用于产品时,还要检查数据、指标、成本与使用场景。
流畅不等于真实
模型优化的是文本概率,可能生成听起来合理但事实错误的内容。
上下文有长度边界
超出窗口的信息无法被当前生成步骤直接使用。
概率受提示和采样影响
相同模型在不同提示、温度和随机种子下可能给出不同结果。
可选代码实践 · 逐行理解
从 logits 采样下一个词元
代码只呈现本课最关键的计算路径。先根据注释理解每一步,再放进完整项目。
course-13.py
import torch
logits = model(input_ids).logits[:, -1, :]
temperature = 0.8
probabilities = torch.softmax(logits / temperature, dim=-1)
next_token = torch.multinomial(probabilities, num_samples=1)
input_ids = torch.cat([input_ids, next_token], dim=-1)- 步骤 1
只取最后一个位置的 logits,因为它负责预测下一个词元。
- 步骤 2
除以温度会改变概率集中程度,但不会增加模型知识。
- 步骤 3
按概率抽样后,把新词元接到输入末尾并再次预测。
知识检查与课程总结
确认你能把概念讲清楚
完成三个问题,再用五句话回顾本课主线。
已回答 0 / 3 题 · 当前答对 0 题
- 文本会被切成词元。
- 模型根据当前上下文预测下一词元概率。
- 生成是重复预测、选择和追加的循环。
- 温度等采样参数影响确定性与多样性。
- 关键事实仍需外部资料、工具或人工核验。
下一课 · COURSE 14
多模态与扩散模型入门
从文字扩展到图像,理解不同模态如何对齐,以及噪声如何逐步变成图像。