fedorthinks

速成课 · No. 33

普通模型一遍就把答案脱口而出。但对于难题,先让它一步步推演——作答前先推理——能极大改善结果。reasoning model 和 test-time compute 讲的就是在作答的那一刻多花些力气,以换取更好的答案。它对难题威力巨大,对简单题却是浪费——所以真正的本领,是知道什么时候把思考的旋钮拧大。

20 个概念 · 每个配一幅图 · 结尾有速查表

§ 01

整个想法源自一个简单的观察:一步步推演问题的模型,比直接跳到答案的模型做得更好——就像人一样。

地图:七组共 20 个概念

一张地铁图:先看整条线路,再一站一站地乘过去。

先是三个基础:模型默认怎么作答、chain-of-thought 是什么、为什么那些步骤有帮助。然后是六组,每章一组:reasoning model、test-time compute、推理何时有用、思考的代价、为什么推理不等于真相,以及如何用得好。

后面的每个概念都是同一个形状:它的英文名称(记住它——那就是术语)、一幅生活中的画面、一幅图,以及一张卡片,上面有是什么、思路、例子、陷阱和关联等字段。

Think firstSingle-pass answerChain-of-thoughtWorking memoryReasoning modelsReasoning modelSpeed vs depthTool, not defaultTest-time computeTest-time computeEffort dialTrain vs test timeWhen it helpsMulti-step problemsOverthinkingDifficulty matchingCost of thinkingReasoning tokensLatencyThinking taxReasoning ≠ truthConfidently wrongUnfaithful reasoningVerify the answerUsing it wellRouting & escalationIngredient, not dish
基础在上,下面是六组——第 2–7 章依次讲它们。

Single-pass Answer — 一口气脱口而出

一个学生喊出脑子里冒出的第一个数字,另一个学生先在草稿纸上把题算出来——后者对的概率高得多。

默认情况下,模型一遍就生成答案:直接给出回答——说白了就是脱口而出。对简单的问题,这没问题。但凡是需要好几步逻辑的问题,直接跳到答案就是它容易出错的地方,就像一个人匆匆忙忙做难题会犯粗心的错。解决办法就是老师们要求的那条:别只给答案,要把步骤走一遍。

Easy questionone stepOne passanswer directlyCorrectblurting is fineHard questionseveral stepsOne passjumps to answerWrongcareless slipquestion → answer, with no steps in between
简单的问题,一遍就能落在正确答案上;难的问题,则一下子跳过了它。
ConceptSingle-pass Answer· 直接作答、脱口而出
是什么
模型立刻生成答案,中间没有任何步骤。
适合
简单的、一步就能答的问题。
陷阱
遇到多步问题就会出错,就像一个人匆匆忙忙答难题。
关联
解决办法是 chain-of-thought:先写步骤,再给答案。

Chain-of-Thought (CoT) — 出声推理,一步一步来

在数学题里把解题过程写出来——按顺序写下每一步——这样推理一目了然,中间的失误会被发现,而不是被埋没。

Chain-of-thought(CoT)是这样一种技巧:让模型在给出最终答案之前,先一步步生成它的推理,而不是只给出答案。当被要求“好好想一想”时,模型会写出中间步骤——顺着这些步骤推下去,得出正确结论的概率,远高于一步跳到结论。这些步骤不只是摆样子:生成它们,正是让模型能够一步步搭出正确答案,而不是靠猜。把思考写在纸面上,思考就变得更好。

“Let's think step by step”QuestionStep 1Step 2Step 3Answerchain of thought — written out, visiblea slip in the middle gets caught instead of buried
问题 → 步骤 → 步骤 → 步骤 → 答案。链条是可见的,所以中间的失误能被发现。
TechniqueChain-of-Thought· CoT、逐步推理
思路
先写出推理步骤,再给出最终答案。
例子
在提示里加上“一步一步想清楚”——模型就会展示它的中间步骤。
为什么有效
模型是一步步搭出答案,而不是猜答案。
关联
通过 working memory 起作用;在 reasoning model 里默认内置。

Working Memory — 工作就发生在这些步骤里

脑子里算一长串计算容易出错;同样的计算写在纸上,一行一行来,就可靠了——纸替你装着脑子会漏掉的东西。

为什么写出步骤会有帮助?每生成一步,就成为模型接下来一步可以依托的上下文。它实际上是把自己的输出当作 working memory,把一次艰难的跳跃拆成一串小而好办的动作。一个一跳解决不了的大问题,变成一个序列就能解决了。这就是整门课背后的核心洞见:给模型留出推理的空间,而不是要求它立刻给出答案,才能解开难题。

QuestionStep 1QuestionStep 1Step 2QuestionStep 1Step 2Step 3readsall lefteach step becomes context for the next — output as working memory
每一个新步骤都会读到问题和之前的所有步骤——模型的输出变成了它的草稿纸。
ConceptWorking Memory· 把输出当草稿纸
是什么
已经写下的步骤,是下一步的上下文。
思路
一次大跳跃 → 一串小动作。
例子
一长串计算一行一行地做,而不是全都装在“脑子里”。
关联

解释了 chain-of-thought 为什么有效,以及 test-time compute 为什么能买到质量。

把步骤走一遍的模型,胜过脱口而出答案的模型。Chain-of-thought——出声推理,一步一步来——把一次艰难的跳跃变成一串好办的动作,准确度也随之而来。

§ 02

一个起初只是提示技巧的东西,变成了一类模型。Reasoning model 经过训练,会在作答前先思考——逐步推演的过程默认内置。

Reasoning Model — 受过训练、作答前先思考的模型

反射式作答的人,和受过训练、会先停下来推理的人之间的差别——思考的习惯已经长进了他们的工作方式里,而不是需要你去要求的东西。

Reasoning model 是专门训练过的模型:在最终答案之前先生成一段内部的思维链——默认就先“思考”,而不是只有被提示时才这样做。标准模型是脱口而出;chain-of-thought 提示是哄它去推理;而 reasoning model 把这个过程内置了。它先产生一段内部推理,再给出答案,在真正需要推演的问题上明显更强。

Standard modelblurtsAnswerCoT promptingStepsbecause you askedAnswerReasoning modelThinkingbuilt in, by defaultAnswer
标准模型脱口而出,CoT 提示要求写步骤,reasoning model 自己思考,每一次都是。
ConceptReasoning Model· 会思考的模型
是什么
经过训练、作答前默认先一步步思考的模型。
区别
CoT 要在提示里去要求;这里思考是内置的。
强项
在真正需要推演的问题上明显更强。
关联
内置的 chain-of-thought;是 test-time compute 的一种形式。

Speed–Depth Trade-off — 用速度换深度

一位谨慎的专家花一分钟想一想再回答,给出的答案比立刻回答的快手更好——但你得等。

Reasoning model 每个答案要花更多力气和时间,因为在回答之前要生成所有那些内部步骤。这让它比标准模型更慢也更贵,换来的是在难题上更强。这是一个真正的取舍,不是白送的升级:你要为思考的深度付出代价——延迟和 token。所以 reasoning model 并不是简单的“更好”,它是另一种工具。

Accuracy on hard problemsstandardreasoningLatency per answerstandardreasoningTokens / cost per answerstandardreasoningdepth is paid for in latency and tokens — a trade, not a free upgrade
难题上的准确度上升了——每个答案的延迟和 token 也一起上升。
Trade-offSpeed–Depth Trade-off· 用速度换深度
你得到
难题上更好的答案。
你付出
每个答案的延迟和 token。
陷阱
把 reasoning model 当成“就是更好”——它是一笔交换,不是升级。
关联
两种价格的详情——第 5 章的 reasoning tokens 和 latency。

Tool, not Default — 难题的工具,而不是默认选项

你请深度思考的专家来处理真正棘手的案子,而不是去回答前台的日常问题——用错了地方,就浪费了他们的才能。

当任务真正需要谨慎的多步思考时,reasoning model 是合适的工具;对简单快速的活儿则是错的,它的反复斟酌纯属浪费。用它来给一条消息分类或重新排版,就像雇一位哲学家来接电话:更慢更贵,却没有任何好处,因为这个任务从来不需要思考。它是处理工作中那一块难题的有力工具,而不是在其他一切事情上取代快速模型。

Hard, multi-step taskplanning · maths · codeRoutine taskclassify · reformatReasoning modelthinks firstFast modelanswers instantlyright toolright tooloverkill
难的活儿交给 reasoning model,日常的交给快速模型。日常的活儿放到 reasoning model 上是大材小用。
PrincipleTool, not Default· 专家,而非默认
思路
Reasoning model 用于难的那一块,不是用于所有事情。
例子
多步规划——要用;给消息分类或重新排版——不用。
陷阱
“哲学家接电话”:更慢更贵,却没有任何好处。
关联
在实践中这就是 difficulty matching 和 routing。

Reasoning model 经过训练,作答前先一步步思考——在难题上更强,作为交换更慢更贵。它是处理难题的工具,而不是一切的默认选项。

§ 03

在 reasoning model 之下,是一个更深的想法,正在改变 AI 进步的方式:让模型变好,不只靠多训练,还可以让它在作答的那一刻更卖力地工作。

Test-time Compute — 在作答时多花力气

考试时间更多,你会检查答案、换个思路再试、抓出错误——同一个人,仅仅因为被允许多花些时间,就考得更高。

Test-time compute 指的是在作答的那一刻——也就是模型运行的推理阶段——多花一些计算,以换取更好的结果。模型不再是快速的一遍,而是想得更久,生成更多推理,也许尝试几种思路再挑出最好的。reasoning model 背后那个惊人的发现是:让模型在作答时多做点工作,质量就会提升,就像在难题上多给一个人一些时间。你可以靠更多的思考买到更好的答案,而不仅仅是更多的训练。

more compute at answer time →One passpassAnswerThink longerBetter answerTry N, pick besttry 1try 2try 3Pick bestBest of Nsame model — it just does more work when it answers
一遍、想得更久,或者试几次再挑最好的——这些全都是 test-time compute。
ConceptTest-time Compute· inference-time compute、推理时计算
是什么
模型作答那一刻更多的计算。
怎么做
想得更久,生成更多推理,尝试几种思路并保留最好的。
例子
同一个人考试时多给一小时——他会检查并抓出错误。
关联
由 effort dial 控制;是与 train-time compute 并列的第二条轴。

Effort Dial — 决定想多用力的旋钮

一个调节努力程度的恒温器:难题调高,简单题调低,思考的量正好配得上任务的价值。

Test-time compute 是一个旋钮,不是开关:你可以只花一点思考,也可以花很多,一般来说越多,难题上的结果越好——直到收益递减的那个点。在 API 里,这个旋钮通常叫 reasoning effort 或 thinking budget。它的威力在于,你可以按每个请求的难度来调节力度:真正的难题调高,日常的保持低位。

accuracythinking budget →easy task: flat — no gainhard taskdiminishing returnslowmediumhigh
在难任务上,准确度随思考预算上升,然后趋于平缓;在简单任务上,它根本不上升。
ToolEffort Dial· reasoning effort、thinking budget
是什么
一个设置,决定模型在这个请求上思考多少——少一点或多一点。
怎么运作
思考越多 → 难题上越好,但收益递减。
例子
日常的活儿用低力度,真正的难题用高力度。
关联
difficulty matching 的杠杆;每拧一格都要花 reasoning tokens。

Train-time vs Test-time Compute — 提升的两条轴

一个学生在考前更用功地学习,同一个学生在考试中被多给了时间——这是取得更好结果的两种不同方式。

从历史上看,模型的进步主要靠训练——更多的数据、更大的模型,一次性在前期完成。Test-time compute 是另一条轴:在推理时更卖力地工作来改进答案,模型每次运行都是如此。这是获得更多能力的第二种方式——不只是更聪明的模型,而是同一个模型想得更久。了解这两条轴,有助于你弄清楚模型的质量——以及它的成本——到底来自哪里。

lever 1: train harderTrainingmore data · bigger modelModellever 2: think longeransweransweransweronce, up frontevery time it runscost paid oncecost paid per request
训练是一次性、前期付费;作答时的思考,每个请求都要付费。
ConceptTrain-time vs Test-time Compute· 两条轴
Train-time
更多数据、更大的模型——一次性,在前期。
Test-time
想得更久——模型每次作答都要付。
为什么重要
显示质量从哪里来——以及你是付一次,还是每个请求都付。
关联
test-time 这条轴的价格是 reasoning tokens 和 latency。

Test-time compute 指的是在模型作答时多花力气,而不只是在训练时——更多的思考,在难题上得到更好的答案。它是一个旋钮:难的时候拧大,日常的时候拧小。

§ 04

推理恰恰在问题难的地方威力巨大,在问题简单的地方毫无意义。分清哪个是哪个,就是用好它的大半。

Multi-step Problems — 思考在哪里能回本

一条转弯很多的复杂路线值得仔细规划;通往隔壁房子的直路则不用——路越难走,思考越值。

推理在多步问题上帮助最大,这类问题真正需要好几步逻辑:数学和计算、多步规划、复杂代码、逻辑谜题,以及错一步就毁掉答案的细致分析。这些恰恰是脱口而出会失败、而逐步推演会成功的任务。问题越难、步骤越多,额外的思考对结果的改善就越大——这就是为什么 reasoning model 在满是真正难题的基准测试上表现出色。

MathsPlanningComplex codeLogic puzzlesAnalysismany dependent steps → reasoning pays the mostStep 1Step 2Step 3Step 4Answereach step builds on the last — one wrong step ruins the answer
数学、规划、复杂代码、谜题、分析——步骤之间相互依赖的任务。
TermMulti-step Problems· 困难的多步任务
是什么
答案由好几个相互依赖的逻辑步骤搭建出来的任务。
例子
数学、规划、复杂代码、谜题、分析。
为什么
错一步就毁掉答案——逐步推演能抓住它。
关联
reasoning model 和高 effort dial 的主要目标。

Overthinking — 简单任务一无所获

午饭吃什么,两个选项你都满意,却斟酌良久——所有这番思考得出的是同一个答案,只是更慢。

对于简单直接的任务——给这个分类,提取那个,重新排版这段文字,回答一个基本的事实问题——推理除了延迟和成本,什么也没增加。这里没有多步逻辑可以推演,所以思考是白费力气;一遍就能看出答案。更糟的是,让模型对一个琐碎任务“思考”,偶尔反而会让它更差——它想多了,把本来不需要斟酌的事情搞复杂了。

Easy taskclassify · extractFast modelone passAnswerinstant · cheapReasoninglong deliberationSame answerslower · priciersometimes even worse: it overcomplicates the easy case
一个简单任务:快速模型立刻又便宜地回答;reasoning model 给出同样的答案,却更慢更贵。
PitfallOverthinking· 不必要的斟酌
是什么
在一个没有什么可推理的任务上推理。
例子
分类、提取、重新排版、一个简单的事实。
代价
白白付出延迟和金钱;有时答案甚至更差。
关联
在整个请求流上重复,就成了 thinking tax。

Difficulty Matching — 让思考的深度匹配难度

好员工在难的决定上花很长时间,简单的立刻回答——按每件事真正的需要来校准力度。

起支配作用的原则是 difficulty matching:让模型思考的力度与问题的难度相称。真正困难、高风险、多步骤的工作,配得上 reasoning model 或更多的 test-time compute;简单、日常、范围明确的工作,交给快速的标准模型。这呼应了模型经济学里的 routing 思想:大多数请求很简单,要的是速度;少数很难,要的是思考。把一切都送给 reasoning model,和把一切都送给前沿模型一样浪费——要校准,别默认。

Easy · routineHard · multi-step · high-stakesFast modelmost requestsLow efforta little thinkingReasoning modelhigh effort · hard slicescale thinking to difficulty — calibrate, don't default
从易到难的一把标尺:快速模型、一点思考、reasoning model。
PrincipleDifficulty Matching· 校准,别默认
思路
任务越难,思考越多;简单的任务一点也不需要。
例子
大多数请求交给快速模型;难的那一块交给 reasoning model 或高力度。
陷阱
所有事情都用同一档思考——要么慢,要么不准。
关联

杠杆是 effort dial;放在系统里就是 routing;与模型经济学是同一个思想。

推理在困难的多步问题上帮助最大,在简单问题上毫无帮助。让思考的深度与难度相称——难的那一块用 reasoning model,简单的大多数用快速模型。

§ 05

思考不是免费的。更多的推理意味着更多的时间和更多的 token,而无视这笔成本,正是团队最后花一大笔钱、慢吞吞地回答简单问题的原因。

Reasoning Tokens — 思考越多,token 和钱越多

一个在有人斟酌的整个过程中一直跑着的计价表——想得越久,账单越大,不管多出来的那些思考有没有必要。

所有那些推理步骤都是生成出来的 token——reasoning tokens——你要为它们付费。Reasoning model,或者高档的 test-time compute 设置,会在答案之前产生大量内部思考,其中每个 token 都要花钱。所以推理的每个答案,比一次直接作答明显贵得多。让它在难题上更强的深度,恰恰也是让它更贵的原因。这就是为什么“所有事都用 reasoning model”会毁掉 AI 预算。

Directinputanswersmall billReasoninginputreasoning tokensanswergenerated and billed — needed or not
直接作答:输入和答案。有了推理,两者之间夹着一长段思考——全都算在账单上。
TermReasoning Tokens· thinking tokens、思考 token
是什么
模型在作答前生成的内部推理 token。
代价
和任何输出一样计费——而且数量可能比答案多得多。
例子
直接作答是一张小账单;同一个答案经过长时间思考,就是一张大账单。
关联
随 effort dial 增长;在整个请求流上累积成 thinking tax。

Latency — 它更慢,用户能感觉到

那位花一分钟才回答的谨慎专家,在难题上值得等,但如果你只是问现在几点,就让人抓狂。

生成所有那些步骤需要时间,所以 reasoning model 和重度的 test-time compute 给出答案更慢——有时慢得多。这就是 latency。对后台任务没关系;对盯着屏幕等待的用户,长时间的延迟是对体验的真实代价。对于用户预期要花点时间的难题,多出来的几秒是值得的,而对于本该感觉瞬间完成的交互,就不合适了。速度是你拧大思考时所花掉的东西。

StandardthinkanswerReasoningthinking…answertime →Background taskdelay is fineUser waiting on screendelay hurts the experience
有了推理,答案来得晚得多:在后台没问题,对在线用户则很难受。
CostLatency· 响应时间
是什么
模型在作答前花在思考上的时间。
适合
后台任务;预期会有停顿的难题。
伤害
本该感觉瞬间完成的界面。
关联
speed–depth trade-off 的第二种价格,与 reasoning tokens 并列。

Thinking Tax — 别为任务不需要的思考买单

雇一位又慢又贵的深度思考者整天回答简单问题——你付着高价,还要等得更久,而这些答案一个手脚麻利的职员瞬间就能给出。

要避免的浪费,是把推理的成本和延迟花在得不到好处的任务上。把每个请求——简单的和困难的一视同仁——都送进 reasoning model,意味着在整个请求流上缴 thinking tax,而实际上只有一小块需要它。模型经济学里的同一条纪律在这里适用:默认走更便宜、更快、不带推理的路径,只有真正困难、对得起它成本的情况,才升级到推理。在思考能回报你的地方付钱,多一个 token 都不付。

easyeasyeasyhardeasyeasyeasyhardeasyeasyReasoning modelfor everythingThinking taxpaid on the whole streamonly 2 needed it
整个请求流都走 reasoning model,尽管只有寥寥几个难请求需要思考。
Anti-patternThinking Tax· 处处推理
是什么
整个请求流都用 reasoning model,而不只是难的那一块。
代价
每个简单请求你都要付 token 和延迟。
解法
默认走快速路径,需要时才升级到推理。
关联
overthinking 在整个请求流上的总和;用 routing 来治。

思考要花 token 和时间——推理每个答案更贵更慢。只在难题对得起它的地方付这笔钱;把一切都送进 reasoning model,等于对整个请求流征税,而好处只有一小块需要。

§ 06

人很容易相信一条又长又看似严谨的推理链。但步骤多并不保证答案对——reasoning model 也可能信心十足、洋洋洒洒地出错。

Confidently Wrong — 再长的链条也可能得出错误的答案

一个建立在有缺陷前提上的详尽而自信的论证——每一步都衔接得整整齐齐,结论依然是错的。光鲜不是证明。

推理提高的是难题上答对的概率;它不保证答对。模型可以产生一条冗长、流畅、看起来合理的思维链,却导向错误的结论——链条早期的一个错误被自信地带到了最后,或者推理听起来严谨,其实并不严谨。看得见的步骤让答案感觉更可信,而这恰恰是陷阱:推理越多,看起来越权威,却不一定越正确。

every step looks rigorous — the error rides alongEarly slipflawed premiseStep 2follows neatlyStep 3follows neatlyStep 4follows neatlyWrong answerconfidentpolish isn't proof
早期的一个失误——之后的每一步都整整齐齐地把错误带到一个自信的错误答案。
PitfallConfidently Wrong· 光鲜却错误
是什么
一条流畅的长推理链,结论却是错的。
怎么发生
早期的错误被带到最后;推理只是听起来严谨。
陷阱
看得见的步骤制造出一种可信的感觉。
关联
靠 verify the answer 来治,而不是靠读那条链。

Unfaithful Reasoning — 展示出来的推理,可能并不是真正的原因

有人凭直觉做了决定,事后再编一套听起来合乎逻辑的理由——解释听上去很真,却不是他们真正得出结论的方式。

还有一个更微妙的陷阱:模型展示出来的思维链,并不保证就是真正产生它答案的过程。它可以生成看起来像通向结论之路的推理,而真正的依据其实是别的东西——一种听起来合理的事后编造,而不是忠实的叙述。这叫做 unfaithful reasoning,而一条诚实的链所具备的性质叫做 faithfulness。所以你不能完全相信展示出来的推理,把它当作答案为什么是这样的解释。它是有用的信号,也有助于提高准确度,但并不是一扇能保证看到模型真实逻辑的窗口。

QuestionShown reasoninglooks like the pathReal basisa hunch, a shortcutAnswerfaithfulness gapwhat you seewhat drove it
上面是模型展示的内容;下面是真正驱动答案的东西。两者之间可能有差距。
PitfallUnfaithful Reasoning· CoT faithfulness、事后合理化
是什么
展示出来的步骤,并不是真正产生答案的过程。
例子
“凭直觉”做的决定,加上事后编的逻辑解释。
陷阱
把这条链当作答案_为什么_是这样的精确解释来读。
关联
又一个理由去 verify the answer,而不是信任思考本身。

Verify the Answer — 检查结果,别欣赏思考

你检查一个复杂的计算,是独立地确认结果,而不是欣赏演算过程有多整齐——重要的是答案是否正确。

实际的结论是:评判 reasoning model 的输出,看答案是否正确、是否经过现实的核验,而不是看推理看起来多么令人印象深刻。别处讲过的所有纪律依然适用——让它扎根于真实事实,对照来源检查,跑 evals,在高风险的决定上留一个人。推理让难题的答案更有可能是对的;但并不意味着不经核验就可以放心相信。一条自信的思维链,在你检查它落在哪儿之前,依然只是一个自信的猜测。

Chain of thoughtdon't grade the polishAnswerCheck itagainst realityhow to checkGround in factsCheck sourcesRun evalsHuman on stakes
给答案打分,而不是给推理链的光鲜程度打分——靠 grounding、来源、evals 和一个人。
PracticeVerify the Answer· 检查结论,而非推理链
思路
拿答案去对照现实来评判,而不是看推理的光鲜程度。
怎么做
扎根于事实、核对来源、evals、重要的事情有人把关。
例子
独立确认计算的结果,而不是重读那段整齐的演算。
关联
防范 confidently wrong 和 unfaithful reasoning。

更多的推理提高的是概率,而不是保证——一条长链可能得出错误的答案,展示出来的步骤也可能不是真正的原因。要核验答案;别信任思考本身。

§ 07

推理是一种强大的能力,价格也很明确,所以用好它就是那套如今已经熟悉的纪律:把思考花在能回报的地方,并核验它的产出。

Routing & Escalation — 只在难的那一部分把思考拧大

你对那一个棘手的步骤全神贯注,其余的一带而过——把力气集中在难点真正所在之处,而不是平均摊开。

统一的做法,是在整个系统里让思考与难度相称。这就是 routing:在真正困难、多步骤、高风险的任务上用 reasoning model 或更多 test-time compute,对简单的大多数用快速的标准模型。你甚至可以混用——快速模型处理日常路径,并把困难的子问题升级给 reasoning model。把斟酌花在问题难的地方,也只花在那里,你就能获得准确度的提升,而不必在所有事情上缴 thinking tax。

RequestFast modeldefault patheasyAnswereasy majorityescalate hard partReasoning modelthe hard slice
快速模型自己回答简单的部分,把难的部分交给 reasoning model。
PatternRouting & Escalation· model routing、移交
问题
所有事都用一个模型——要么又贵又慢,要么不准。
思路
默认用快速模型;困难的子问题交给 reasoning model。
例子
快速模型负责对话,把一个棘手的多步计算移交给 reasoning model。
关联
difficulty matching 在系统层面的形式;thinking tax 的解药。

Ingredient, not Finished Dish — 推理不能取代核验

一位谨慎的专家更可能是对的,但高风险的决定你仍然要确认——他们的谨慎提高了概率,却不能免去检查的必要。

最后一条纪律把这门课和其余的内容连了起来:推理能提升难题上的质量,但它依然是一个会出错的模型,可能信心十足地出错,所以其他一切依然重要。让它扎根于事实,核验答案,跑 evals,在有后果的决定上留人。推理是获得更好输出的又一种方式——与好的上下文、检索和合适的模型并列——而不是一个神奇的升级,能让你免于围绕它去搭建可靠性。更好的思考是一种更强的食材,而不是一道做好的菜。

Good contextRetrievalRight modelReasoningModel outputbetter, still falliblereliability engineering — still requiredGroundVerifyEvalsHuman
推理是一份好输出的一种食材;围绕它的可靠性工程依然是必需的。
PrincipleIngredient, not Finished Dish· 推理 ≠ 可靠性
思路
推理能改善输出,但本身不能让它可靠。
并列
好的上下文、检索、合适的模型。
仍然需要
扎根于事实、核验、evals、重要决定有人把关。
关联
把 verify the answer 与其余所有工程联系在一起。

一切如何连在一起

一根杠杆,三个后果:它带来收益,它花钱,它还带着风险——用它时,三样都要放在心里。

Chain-of-thought 内置于 reasoning model,而 reasoning model 是 test-time compute 的一种形式。这根杠杆有三个后果:多步问题上的收益,token 和延迟上的代价,以及信心十足地出错或不忠实的推理这一风险。用好它,意味着瞄准收益(difficulty matching、routing),守住预算(没有 thinking tax),并检查结果(verify the answer)。

Chain-of-thoughtbuilt inReasoning modelspendsTest-time computeWinshard, multi-step problemsCoststokens · latencyRiskswrong · unfaithfulaim atbudgetcheckUse it wellroute by difficulty · verify the answer
CoT → reasoning model → test-time compute;收益、代价和风险都汇聚在“用得恰到好处”。
在你伸手去用推理之前
  • 问题是否真的困难——多步逻辑、数学、规划——需要思考来理清?
  • 还是它很简单——推理只会白白增加延迟和成本?
  • 成本和延迟在这里值得吗,还是你在用思考给简单任务征税?
  • 你在做 routing 吗——难的那一块用推理,简单的大多数用快速模型?
  • 你在核验答案吗,而不是相信一条看起来周全的思维链?
  • 惯常的那些纪律还适用吗——grounding、evals、高风险决定有人把关?
你用好了推理的迹象
  • 你只在真正困难的问题上把思考拧大,而不是默认如此。
  • 你简单的大多数用快速模型,把推理留给难的那一块。
  • 你把推理的成本和延迟算进去,而不是给每个请求征税。
  • 你核验答案,而不是相信推理看起来有多周全。
  • 你依然使用 grounding、evals 和人工监督——推理让它们更锋利,而不是取代它们。

速查表:整门课的所有概念

先思考

Single-pass Answer直接作答

模型一遍就脱口而出答案——简单的行,难的不行。

Chain-of-ThoughtCoT

先写推理步骤,再给答案。

Working Memory把输出当草稿纸

每一步都成为下一步的上下文。

Reasoning model

Reasoning Model会思考的模型

经过训练,作答前默认先一步步思考。

Speed–Depth Trade-off用速度换深度

难题上更好,但更慢更贵。

Tool, not Default专家,而非默认

用于难的那一块,不是用于所有事情。

Test-time compute

Test-time Computeinference-time compute

作答时多做功——得到更好的答案。

Effort Dialreasoning effort、thinking budget

“想多少”的旋钮——收益递减。

Train-time vs Test-time两条轴

训练付一次,思考每个请求都要付。

何时有用

Multi-step Problems困难任务

数学、规划、代码、逻辑——思考回本的地方。

Overthinking不必要的斟酌

在简单任务上——同样的答案,更慢更贵,有时还更差。

Difficulty Matching校准,别默认

让思考的深度匹配任务的难度。

思考的代价

Reasoning Tokensthinking tokens

所有的思考都是生成出来的——也是计费的——token。

Latency响应时间

想得更久,就答得更晚;对在线用户很难受。

Thinking Tax处处推理

整个请求流都推理,而只有一小块需要。

推理不等于真相

Confidently Wrong光鲜却错误

一条流畅的长链,依然可能得出错误的答案。

Unfaithful ReasoningCoT faithfulness

展示出来的步骤,可能不是答案的真正原因。

Verify the Answer检查结论

拿答案去对照现实来评判,而不是看推理链的光鲜程度。

用得恰到好处

Routing & Escalationmodel routing

默认用快速模型,难的部分交给 reasoning model。

Ingredient, not Finished Dish推理 ≠ 可靠性

推理是一种食材;核验和 evals 依然需要。

推理让模型在作答前先思考,以时间和 token 为代价,提高难题上的准确度。只在难度对得起它的地方把思考拧大,并核验答案——再好的思考,在核验之前,依然是一个会出错的猜测。

速成课结束 · 7 章 · 20 个概念

接下来是练习:拿一个你的模型一遍就答错的真正难题,让它去推理——提示它一步步思考,或用一个 reasoning model——看着准确度提升。然后在一个简单任务上试同样的做法,留意那番思考除了拖延一无所买。最后,找一个推理看起来滴水不漏、答案却是错的例子,去体会为什么你核验的是结论,而不是推理链。当你让思考的深度配上问题的难度时,这套纪律就豁然贯通了。但有一个想法要置于其余之上:让模型在作答前先思考,会让它更擅长难题,却在简单题上白费力气——所以在它能回报的地方把思考拧大,在它不能回报的地方拧小,并且永远去核对它落到了哪儿。