Skip to content
L4 往前看

推理模型:会先想再答

有一类模型不急着回答,会先在内部写一串步骤。

先想再答,跟你查草稿纸是同一个动作 ​

我上学的时候遇到不会的数学题有个习惯:不算,先在草稿纸上把已知条件抄一遍,抄完常常就知道该怎么动了。模型现在有一种做法也是这个动作——它不直接吐答案,先生成一大段看起来像自言自语的文字,那段文字就是它的草稿纸。

这种做法叫思维链(chain-of-thought)—— 让模型把中间步骤显式写出来,再接着往下推。2025 年之后有一批模型把这件事做成了默认动作,这类模型叫推理模型(reasoning model)—— 会先在内部想一串步骤再作答的模型。你在产品界面上常见的那种「思考中…」转圈、然后答案末尾带着一段推导的,就是它。

要分清一件容易混的事:这跟「推理(inference)」不是一回事。推理(inference)——拿训好的模型去回答问题这个动作。每个模型都有这个动作,它跟你熟的那个「会先想再答」不是一回事。推理模型指的是模型内部那套先想再答的习惯,是这一两年才变成主流的一类做法。

长思维链到底长什么样 ​

我第一次见到 DeepSeek-R1 那类模型输出的推理内容时,最直接的感受不是「聪明」,是「啰嗦」。它会把题目重述一遍,列出几种可能,否定两种,展开一种,中间还会突然写一句「等等,我再检查一下」,然后接着算。

长思维链(long chain-of-thought)—— 学术界给这种又长又绕的形态起的名字。2025 年 3 月 arXiv 上有一篇综述专门梳理这个领域,把长思维链和早期那种三五步的短思维链分成两类,归纳出三个特征:挖得深、探索得多、能回头修正(arXiv:2503.09567)。截至 2026 年 9 月,这篇综述已经改到第五版,本身就说明这个方向上的论文产出有多快。

支撑它变长的机制是测试时计算(test-time compute)—— 回答问题时允许模型多花算力多想一会儿,而不是只在训练阶段堆算力。堆在训练阶段叫预训练规模定律那条路,堆在回答时是另一条路。这两条路现在都能把题目做对,但花的钱和等的时间完全不是一回事。

越想越久一定越好吗 ​

这是我最想提醒的一节。想过头(overthinking)—— 2025 年 3 月那篇综述专门用一个词概括的反面现象:模型反复推翻自己的正确答案,最后交上一个错解。在数学题上这种事并不罕见。

有意思的是,研究者试过很多办法让它早点收手,多数办法是显式地告诉它「别写太长」。2026 年 9 月 25 日 arXiv 上有一篇做法相反:他们只让模型在推理途中顺便预测「我对这个答案有多确定」,训练数据只用了 600 道题,训练目标里既没有长度惩罚也没有停止目标,结果推理模型生成的词元数最多少了 25%,准确率不变(arXiv:2609.31619)。

那篇论文在 Gemma、Qwen、Nemotron、GPT-OSS 几个模型和数学、科学、编程三类题上都跑了。但这是单篇论文的结果,2026 年 9 月刚出,尚未被广泛复现。我不认为「教模型认得自己的信心」就解决了想过头这件事,这更像是又一条值得试的路,不是结论。

我自己踩过的坑 ​

我用推理模型写代码的时候遇到过一次很典型的翻车。让它改一个带并发锁的函数,它写了四十行推导,推理部分比最终代码长六倍,最后交付的代码把两个不同模块共用的缓存给删了。我盯着那段推理看,想找到它在哪一步想到了缓存,结果找不到——那四十行里有大量自我重复,没有一句话是关于缓存的。

说白了,思维链看起来像思考,但它仍然是一条一条词元生成出来的文本。里面有多少是真在推理、多少只是在模仿「思考的样子」,目前没有工具能分开。这一点到现在也没有定论。

有没有办法不让它自己想完 ​

有两条研究方向值得知道。一条是让思考发生在词元之外:2025 年 2 月 arXiv 上一篇论文提出反复迭代同一个网络块、把深度在回答时展开的做法,不需要专门的思维链训练数据,上下文窗口也可以开得很小,作者把原型模型做到 35 亿参数、训练了 8000 亿词元,报告说算力开销相当于一个 500 亿参数模型的效果(arXiv:2502.05171)。这是小团队的实验结果,仅在论文自己的评测上成立。

另一条更接地气:2025 年 4 月 Berkeley 那批人提出「睡眠时间计算」—— 在用户还没提问之前,就先离线猜他会问什么,把能提前算的算掉。他们在改造过的两个数学题上报告说,达到同样准确率所需的回答时算力降到约五分之一,把提前算的量加大还能再提准确率(arXiv:2504.13171)。这个思路的适用前提很硬:问题得能被预测。你问一个没头没尾的问题,它帮不上忙。

延伸阅读 ​

  • Towards Reasoning Era: A Survey of Long Chain-of-Thought for Reasoning Large Language Models(Qiguang Chen; Libo Qin; Jinhao Liu et al.,2025,arXiv 综述)—— 把长思维链和短思维链分开梳理,也把「想过头」和测试时计算的收益递减摆到台面上,是理解这一波模型脾气变化最好的入口。arXiv: 2503.09567
  • Learning to Stop without Learning to Stop: Self-Supervised Confidence Training Improves Reasoning Efficiency(Parsa Hosseini; Akasha Tigalappanavara; Sumit Nawathe et al.,2026,arXiv)—— 只教模型预测自己有多确定,训练目标里没有长度项,推理长度却最多缩了四分之一。单篇结果,尚未被广泛复现。arXiv: 2609.31619
  • Sleep-time Compute: Beyond Inference Scaling at Test-time(Kevin Lin; Charlie Snell; Yu Wang et al.,2025,arXiv)—— 把一部分计算挪到问题到来之前,代价是这套办法只在问题可预测时划算。仅在论文自造的两个数学基准上验证。arXiv: 2504.13171

动手试试 ​

找一个你手头真的在用的推理模型(免费额度一般够用),问同一道题两遍:第一遍原样问,第二遍在前面加一句「先在心里想清楚再回答,但最终答案控制在 200 字以内」。把两次的最终答案和总生成字数都记下来。

我做过这个对比。我的经验是第二遍不一定更对,但几乎总是更短;偶尔会出现它为了压字数而跳步,答案看着利落其实漏了条件。所以我自己写代码还是让它想长一点,回头自己查。

下一站 ​

模型自己想清楚了,接下来就是让它别只自己想——还要动手做事。下一站去看智能体,它能自己决定下一步调哪个工具。

名录来源:本文综合 arXiv cs.CL、cs.AI、cs.LG 检索,2026-09-29。

内容用 VitePress 构建,站内链接全部为相对路径。