一个 Hacker News 短文抛出被中文技术圈忽视的问题:把大模型理解成"更强的 token 预测器",会让你在评测、微调和产品定位上系统性走偏。RLVR 后训练已经把优化目标从模仿改成了达成结果——用错心智模型,代价是每一笔训练投入。
一句话的错误,能让整支团队用错模型。
9 月 4 日,一位署名 Gordon McGoldrick 的开发者在个人博客上贴出一篇短文:《"Next-token predictor" is the wrong mental model for LLMs》。这篇文章当天进入 Hacker News 首页讨论。原文没有任何数据、没有 benchmark、只有两段 Python 伪代码和一个国际象棋比喻——但它把一个在中文技术圈几乎无人系统讨论的问题摆到了桌面上:如果你还把大模型理解成"更强的 next-token 预测器",那么你在设计评测、微调路线和产品逻辑时,几乎注定会走弯路。
McGoldrick 的原话很克制:
"Strictly speaking, the statement 'LLMs are next-token predictors' isn't wrong, but it's incomplete."
严格来说,这个说法没错。基于 Transformer 的语言模型确实是自回归吐 token 的:
while not done:
tokens.append(model.sample_next_token(tokens))
预训练阶段做的事情也确实符合"预测下一个词"的直观描述——喂进一段已经存在的语料,让模型把真实出现的下一个 token 变得更可能:
for tokens in training_data:
for position in range(1, len(tokens)):
prior_tokens = tokens[:position]
actual_next_token = tokens[position]
model.make_more_likely(actual_next_token, after=prior_tokens)
关键的一句紧接着出现:每一个 actual_next_token 都来自训练集里已有的序列。到这一步,"next-token predictor"是准确的——base model 就是在预测训练分布下的下一个词。
但我们在生产里用的,从来不是 base model。RLHF、DPO、RLVR、GRPO 一路做下来,模型早就不再只从"已有序列"里学。McGoldrick 给了一段对照的伪代码:
for task in training_tasks:
for explored_tokens in model.explore(task):
reward = evaluate_outcome(task, explored_tokens)
for position in range(len(explored_tokens)):
prior_tokens = task + explored_tokens[:position]
explored_next_token = explored_tokens[position]
model.make_more_likely(
explored_next_token,
after=prior_tokens,
according_to=reward,
)
看形状,两段循环几乎一样——都在调 make_more_likely,都在往下写 token。看目的,两者完全不同。前者让"训练集里出现过的下一个词"更可能;后者让"模型自己走出来、并被 reward 判为好"的下一个词更可能。没有 reward 就没有信号,这个信号函数是人为定义的、不来自任何语料。
McGoldrick 用一句话锁住了他的论点:
"That is why 'next-token predictor' is the wrong mental model. It describes the shape of the mechanism, one token emitted after another, while ignoring what that mechanism encodes."
机制的形状和编码的目标,是两件事。混为一谈的代价,在下面会具体展开。
这里还有一个容易被忽略的层次差别。RLHF 用的 reward 来自人的偏好(哪一份回复更好),本质仍然是"模仿人",只是模仿对象从"训练文本"换成了"人的评价函数"。McGoldrick 明确把 RLVR 单挑出来:"RLVR goes further still: it allows an LLM to explore and learn from ideas never seen in its training data."——可验证 reward(能不能编译、答案是否正确、证明是否成立)第一次让模型可以走出人类语料,向着"没人写过但能被判定为正确"的答案更新参数。这也是过去两年被反复讨论的"推理能力"提升的技术底盘。你可以把它理解为:SFT 教模型"说得像",RLHF 教模型"说得让人满意",RLVR 教模型"做得对"。三层目标的差距,比"下一个 token 预测"这一句能容纳的多得多。
作者没有拿数学讲,而是搬来一个所有人都能秒懂的类比。想象两个下棋系统:
系统一:训练数据是几百万盘大师棋谱。给它一个局面,它输出"最像大师会走的那一步"。你可以老老实实叫它 next-move predictor——它就是在预测下一步。
免费获取企业 AI 成熟度诊断报告,发现转型机会
系统二:一台理想化的引擎,穷举过所有可能的对局,知道从每个局面出发赢棋的概率。给它一个局面,它选的是"能赢的一步",不是"大师会走的一步"。
McGoldrick 的定论直白:
"Calling the second system a 'next-move predictor' would be strange. It is not trying to predict what move appeared next in a dataset. It is trying to choose a move that wins."
问题不在于系统二"更强",而在于它的优化目标彻底变了。第一台学的是模仿,第二台学的是胜负。你不会把 AlphaZero 归为"预测棋手下一步的分类器",虽然它输出的确实是"下一步"。当今我们真正在用的对话模型,其后训练阶段更像系统二:定义任务、探索路径、根据结果的可验证性来更新参数。RLVR 里的 reward 就是"这个证明对不对""这段代码能不能跑通""这个数学答案是否等于标准答案"这类可判定的信号。
原文写给英文技术社区,落点是"别再把 LLM 当高级 autocomplete"。放到国内,问题更具体,也更值钱。
第一件事,评测怎么设。 如果你相信模型只是在"预测下一个词",你的默认评测思路就是拿"标准答案的分布"去打分:perplexity、BLEU、token 级 accuracy。这些指标衡量的是模仿相似度。可我们真正想让模型做的事——写通一段代码、跑通一次工具调用、算对一道题——判定标准是结果对不对,不是文字像不像。DeepSeek-R1、Qwen3、Kimi K2 的技术报告里,各自的核心工作恰恰都是"如何构造可验证的 reward 通道"(代码用编译加单测、数学用符号求解、工具调用看是否返回预期结构)。把评测停留在"生成质量",你既看不出这些模型的真实进步,也定不出对得起你们业务的验收标准。更实用的一步是把评测集从"生成对比"改成"任务通过率":给一批可判定输入输出对,看模型做对多少;这套逻辑天然对齐后训练目标,也直接告诉产品团队每一版模型带来了多少可交付的能力增量。
第二件事,微调怎么走。 国内绝大多数公司做垂直模型,第一步是收集领域文本喂 SFT。这本质上还是在做 next-token 预测——只是换了个语料分布。RLHF/RLVR 的门槛比 SFT 高得多(要设计 reward、要跑 rollouts、要 PPO/GRPO),但它才是"教模型达成结果"的手段。McGoldrick 那句"learns from new sequences produced through its own exploration"直接指向:没有探索、没有 reward,你的领域微调永远只会在"模仿领域文本风格"上打转,够不到"完成领域任务"这一层。 这也是为什么 open-source 的 base 模型和 chat 模型能力差距被反复讨论——差的是后训练那一整套。
第三件事,产品怎么定位。 很多国内的"AI 应用"把模型视作可以按 prompt 引导的通用生成器,然后靠 prompt 工程和 RAG 硬拼效果。但 helpful assistant 的人格、拒答边界、工具调用倾向,都是 RLHF/RLVR 在训练时烧进权重的——你在 prompt 里给的指令,只是在唤醒这些已被编码的行为模式。如果你按"下一个词预测器"的心智去建产品,很容易低估两件事:一是模型的默认行为对你产品体验的贡献有多大(换一个 base 模型加上你自己那套 prompt,效果往往崩盘);二是你能通过更换/自训模型影响用户体验的空间有多大(不做后训练,你就只能在 5% 的表层做微调)。
第四件事,怎么看国产模型这一年。 从 2024 到 2026 上半年,中文圈对国产模型的"看跌"论调集中在"参数没别人大""预训练数据没别人多"。但从 DeepSeek-R1 到 Kimi K1.5,再到最近 Qwen3 的思考模式和 GRPO 微改进——真正拉开进步的都是后训练层的工程。你如果继续用"预训练规模决定一切"的心智去评价,看到的会是一个越来越难解释的现象:为什么参数没变,评测分却在跳?答案是:这些模型正在按系统二的方式重训,不是按系统一。
第五件事,Agent 与 RAG 的定位。 国内这一年围绕 Agent、RAG 的产品讨论非常密集,但很多方案在骨子里其实是"用外挂弥补基座能力不足"——认为模型只是个"预测器",靠检索给它提示、靠 tool 给它执行、靠工作流兜住每一步。这套逻辑当输入格式稳定时能跑,但一旦任务需要模型自己规划、判断、纠错,短板马上暴露。因为规划和纠错是被后训练"教会的"能力,不是"预测下一句"就能凭空长出来的。当我们看到 Claude、o3 这些模型在 Agent 场景下明显更稳时,它反映的不是"prompt 写得好",而是这些模型的 RLVR 阶段专门在教它"如何在长任务中修正自己"。用错心智模型,你会把资源投在错误的地方——继续加检索、加工具、加提示词,而不去追问"这个基座在后训练阶段被教了多少长任务能力"。
McGoldrick 花两千字讲一个术语——听起来像书生的执念。但术语的选择会决定整支团队怎么思考问题。"数据库"和"知识图谱"看起来都是"存东西的地方",做出来的系统完全两回事;"搜索"和"推荐"都是"给你返回内容",产品逻辑一南一北。"Next-token predictor"和"经过 RLVR 后训练的对话模型"之间的差距,不小于这两组。
原文最后一句留在了一个开放的收尾:
"A simulation of a helpful assistant and knowledge discovered through exploration can both be encoded in exactly the same next-token loop."
同一段循环里可以编码"扮演一个乐于助人的助手",也可以编码"通过探索得到的新知识"。看形状分不出来,看编码才分得出来。 对每天要决策"我们要不要自训""怎么评测""模型和 prompt 各承担多少"这些问题的团队来说,这不是学术辨析——这是每一笔训练成本、每一次上线判断的前置认知。
工程师习惯用"能跑就行"的方式讲话,把 LLM 叫成"更好的 autocomplete"曾经是无害的简化。到了 2026 年,这个简化正在偷偷让人做错决定。McGoldrick 那句"it's not wrong, but it's incomplete",值得放在每一次内部技术评审的开场。
更准确的描述其实并不难:一个由预训练奠定语言与世界知识的底座、由后训练(尤其是 RLVR)注入目标与行为倾向的自回归策略网络。 这句话拗口,但每一个成分都对应你可以调、可以评、可以定价的具体工程。而"下一个 token 预测器"这七个字,抹掉的正是后半段——那是过去三年整个前沿实验室投入最重的地方,也是决定你的产品能不能站稳的地方。








关注公众号

扫码关注,获取最新 AI 资讯
3 步完成企业诊断,获取专属转型建议
已有 200+ 企业完成诊断