Experiment 11 · LLM Generation

下一个词预测:LLM 怎么写字

从一句提示词开始,观察模型如何给所有候选 token 分配概率,再用 temperature、top-k、top-p 选出下一个 token,并一轮一轮写成完整回答。

01 PROMPT提示词切成 token
02 CONTEXT只看已经出现的前文
03 LOGITS候选词得到原始分数
04 SOFTMAX分数变成概率分布
05 SAMPLE按策略选一个 token
06 LOOP追加到末尾继续预测
Concept Helper 适合第一次学习

LLM 写字不是一次写完,而是一次猜一个

模型看到前文后,不是直接拿出完整答案,而是先给“下一个 token”列一张概率表。选出一个 token 后,把它接到前文末尾,再重新预测下一步。

可以怎么观察先看候选概率条,再点击“写入这个 token”,你会看到概率表随着新 token 改变。
可以追问什么为什么同一句提示词,temperature 不同,生成结果会不一样?
Try It 一键课堂任务
建议按任务 1 到 4 走一遍。这个 toy 模型很小,但生成循环、采样策略和损失函数与真实 LLM 的核心机制同构。

一步预测:前文如何变成下一词概率

画布展示从提示词到候选概率的流水线;下面的 token 行会标出模型刚刚选中的下一个 token。

等待预测
最高概率 token--概率表第一名
本轮选中--贪心或抽样结果
分布熵--越高越不确定
候选池--Top-k / Top-p 后
已生成 token0追加到提示词末尾
停止原因--EOS 或长度上限
KV Cache 直觉--随上下文变长

自回归循环:写一个,再预测下一个

每一步都把刚选中的 token 接到前文末尾;这就是“一个词一个词吐出来”的机制。

空闲
今天 天气 真

生成记录

上下文选中概率

同一句提示词,三种采样性格

贪心更稳定,常规采样更自然,创意采样更发散;差别来自概率分布被怎样裁剪和拉平。

可对比

多样性指标

课堂提示:创造性不是“越高越好”。事实问答通常要低温度,故事续写可以适当升温。

只能看前文:因果遮罩与上下文窗口

Decoder-only 模型在预测第 n 个 token 时不能偷看未来。下方遮罩图用亮格表示“允许看见”。

因果可见

当前可用上下文

不同窗口下的下一词

平均交叉熵---log P(真实 token)
困惑度--越低越稳
Top-1 命中--第一名是否猜中

训练时:真实下一个 token 就是答案

模型给真实 token 的概率越高,损失越低。预训练就是在海量文本上反复做这件事。

教学化小样本

训练样本

前文真实下一个模型概率损失

把四个 LLM 实验串起来

这页不是孤立的“文字接龙”,它刚好接在 Tokenizer、词向量和 Attention 后面,组成一条从文本进入模型到模型写出文本的闭环。

05Tokenizer把文字切成模型能处理的 token。
10词向量把 token 放进连续的语义空间。
06Attention让当前位置从前文中取信息。
Loss训练目标用真实下一个 token 修正概率表。
11生成循环采样一个 token,接回前文再预测。
误区一:LLM 不是一次拿出完整答案 它每次只预测下一个 token。长答案是许多次预测、采样和追加组成的序列。
误区二:最高概率不等于唯一正确 概率表表达的是模型的不确定性。不同采样参数会让同一个前文走向不同文本。
误区三:流畅不等于可靠 下一词预测会学到语言规律,也可能生成听起来合理但需要核查的内容。
课堂出口句:LLM 生成 = P(next token | previous tokens) + 采样策略 + 自回归循环;训练时用真实 next token 让这个概率越来越准。