生成式AI与大语言模型

思维链提示(chain-of-thought prompting)

/ CHAYN-uv-THAWT PROMPT-ing /

思维链提示,是一个简单的小窍门:让模型在给出最终答案之前,先把问题一步一步、出声地走一遍——而不是张口就报答案。对算术应用题、逻辑谜题这类需要多步的问题,这点小改动能显著提高准确率。「让我们一步一步来想」这句话之所以出了名,恰恰是因为:加上它,有时就能把一个错答案变成对的。

为什么把步骤写出来会有帮助?语言模型是一次一小块地生成文字,而每一块新内容都以「已经写下的一切」为条件。当模型把中间步骤落在纸面上,那些步骤就成了它回头读取的上下文的一部分,给了它一个可以往上搭建的脚手架,而不必一步登天地直奔结论。这有点像「在纸上做长除法」和「试图全凭脑子做」之间的差别。

千万别把「推理的外表」错当成「推理本身」。那些写出来的步骤,本身也是生成的文字;模型完全可能产出一条流畅、看着说得通、逻辑却断裂的思维链,却照样得出正确答案——或是一条优美的链,信心十足地走向错误。它所展示的推理,并不是一扇忠实窥见「模型究竟如何算出答案」的窗。它是一项在许多任务上能改善结果的有用技巧,而非「模型真像那些字句所暗示的那样推理」的证明。

问:「店里有23个苹果,卖掉8个,又进了12个。现在有多少?」不用思维链,模型可能随口蒙个「27」。用思维链:「起初23。卖掉8 -> 15。又进12 -> 27。」把每一步都写出来,更有可能稳稳落到正确的27上——也让你看得见,差错究竟出在哪一步。

把过程写出来,能提高多步问题的准确率。

思维链并不是模型内部过程的真实记录——它是一段生成的文字,只是常常与更好的答案相关联。研究表明,模型可能经由看得见的、有缺陷的推理抵达正确答案,或为它早已认定的答案事后找补理由。把它当作一个有用的提示,而非一份透明的解释。

又称
CoTstep-by-step prompting思维链思維鏈思维链提示