草稿链(CoD):提示词技术的新王者
深入探讨全新的草稿链(CoD)提示法,它不仅性能优于思维链(CoT)提示法,还能以前所未有的幅度降低LLM的推理成本和延迟。
推理型大语言模型(LLM)是当今AI研究的热门话题。我们从GPT-1一路发展到Grok-3这样的高级推理模型。
这段历程令人瞩目,期间发现了一些非常重要的推理方法。
其中之一便是思维链(CoT)提示法(少样本和零样本),它在很大程度上推动了我们如今所见的LLM推理革命。
令人兴奋的是,Zoom通信公司的研究人员发表了一种更优的技术。这种名为草稿链(CoD)提示法的技术,在准确性上超过了CoT提示法,回答查询时仅使用全部推理 tokens 的7.6%。
使用直接回答(标准)、思维链(CoT)和草稿链(CoD)提示Claude 3.5 Sonnet解决不同推理领域任务时的准确性和token使用情况对比
对于目前存在冗余表达、需要大量计算时间且延迟较高的推理型LLM而言,这是一个重大突破——这些问题在许多现实世界的时间敏感型应用中都是瓶颈。
本文将深入探讨草稿链(CoD)提示法的工作原理,以及如何利用它让你的LLM在准确性和token效率上达到前所未有的水平。
但首先,我们来谈谈提示法
研究人员不断在LLM中发现新的行为。
Transformer架构为我们带来了生成式预训练Transformer(即GPT),不久后我们发现,将其扩展到GPT-2(15亿参数)时,它能充当无监督多任务学习器(无需在特定任务数据集上进行监督学习/微调就能执行多项任务)。
随着进一步扩展到GPT-3(1750亿参数),研究发现该模型只需在输入提示中提供几个示例(少样本提示法),就能快速适应并出色完成新任务。
随后,研究人员发现,将问题解决过程分解为中间推理步骤,并提示大语言模型(LLM)生成这些步骤,能在算术、常识和符号推理任务中实现最先进的性能。
这种方法被称为思维链(CoT)提示法。
标准提示法与思维链提示法示例
在CoT之后,人们很快发现LLM是零样本推理器。
与原始的CoT提示法不同,要获得更好的性能,无需用少样本推理示例来提示它们。
只需在提示中添加“让我们一步一步思考”这句话,就能让它们在解决问题时进行逐步推理。
这种方法被称为零样本思维链提示法。
标准零样本提示法与少样本提示法、原始CoT提示法(标注为“(b) 少样本-CoT”)和零样本CoT提示法的对比
研究人员随后意识到,链式推理并贪婪解码以得到答案是不够的。复杂的推理任务可能存在多条通向正确答案的推理路径,而如果多条路径都指向同一个答案,我们就能确信最终答案是正确的。
这催生了一种新的解码策略,称为自一致性,它通过对模型进行采样来生成多条推理路径,并从中选择最一致的答案。
CoT提示法中的贪婪解码与自一致性对比
提示词架构的发展之路
在这种考虑问题解决中多条推理路径的方法之后,人们提出了“思维树”(Tree-of-Thoughts,ToT)框架,它通过类树状的思维过程探索解决方案空间。
思维树框架
它将称为“想法”的语言序列用作解决问题时的中间步骤。通过带有前瞻和必要时回溯的搜索算法对这些想法进行评估和探索。
各种推理方法对比
树状架构后来被图状架构取代,由此产生了“思维图”框架,以更好地对解决方案空间进行建模。
思维图与其他推理方法的对比
但这还不是全部!
提示法并非帮助LLM更好推理的唯一方式,还有许多其他技术。
但延迟问题怎么办?
探索推理空间是一项计算密集型任务,会增加响应延迟。
为此,人们提出了一种名为“思维骨架”(Skeleton-of-Thought,SoT)的延迟降低方法,它首先引导LLM生成答案的骨架/大纲,然后通过并行API调用/批量解码来并行完成每个骨架要点的内容。
思维骨架(SoT)与标准解码的概述对比
推理模型还可能在简单问题上“过度思考”,生成不必要的推理token,导致查询到响应的时间过长。
针对问题“2加3的答案是什么?”生成的token
QwQ-32-B-Preview模型为了解决2加3这个简单问题而进行的推理,是不是很不可思议?
QwQ-32-B-Preview在简单算术问题上的过度思考
研究人员尝试通过限制推理token预算来解决这个问题,但LLM往往不遵守这一限制。
还有人使用额外的LLM,在回答问题前根据问题的复杂性动态估算不同问题的token预算,但这会进一步增加响应延迟。
带有估算和提示的token预算感知LLM推理(TALE)概述
我们能否结合所有这些见解,并以某种方式将其简化为一种单一方法?
“草稿链”(Chain-of-Draft)提示法登场
回归基础,思维链(Chain-of-Thought,CoT)是一种非常出色的提示方法,能让LLM更好地进行推理。然而,它存在冗余问题——LLM在得出答案前会生成数千个推理token。
这与人类的思考和推理方式大不相同。我们在思考时,不会用冗长的语言进行推理,而是通常会记下最关键的中间要点(草稿)。这正是Chain-of-Draft(CoD)提示法的灵感来源。
它只是要求模型逐步思考,且每个推理步骤最多限制在5个词以内。为确保模型理解这一点,研究人员手动编写了此类Chain-of-Draft的少样本示例,并将其纳入提示中。令人惊讶的是,这种限制并未以任何方式强制执行,而只是作为一般指导原则提示给模型。
这与标准的少样本提示法不同:在标准少样本提示法中,提示中会给出查询-响应对,且要求模型直接返回最终答案,无需任何推理或解释。这也与思维链提示法不同:在思维链提示法中,提示的查询-响应对中会包含中间推理步骤,然后要求模型回答问题。
通过下方图片,能更清晰地理解这些方法之间的差异——图片中展示了用LLM解决一个简单算术问题时的不同情况。
CoD提示法的性能如何?
为评估CoD提示法,研究人员使用上述三种方法对GPT-4o和Claude 3.5 Sonnet进行了提示测试。每种提示方法给这些模型的系统提示如下方图片所示。
标准提示法、CoT提示法和CoD提示法的系统提示
在算术推理数据集GSM8K上,CoD的准确率达到91%,同时比CoT少用80%的token,在几乎不损失准确率的情况下降低了延迟(对于GPT-4o,CoD的准确率为91.1%,CoT为95.4%)。
不同提示技术在GSM8K上的评估结果
在常识推理方面,通过BIG-bench任务中的日期理解和体育理解任务进行测试,CoD在显著降低延迟和token使用量的同时,准确率与CoT相当甚至更高。
BIG-bench任务中日期理解的评估结果
值得注意的是,在体育理解任务中,当使用Claude 3.5 Sonnet时,CoD将CoT提示法的平均输出token从189.4大幅减少到14.3(减少了92.4%)!
BIG-bench任务中体育理解的评估结果
最后,在硬币翻转这一符号推理任务(预测一系列翻转后硬币的最终状态)中,CoD的准确率达到100%,且使用的token明显少于其他方法。
研究人员创建的硬币翻转数据集中的一个问题示例
在研究人员创建的包含250个测试案例的自定义数据集上,硬币翻转任务的评估结果
这些结果简直令人惊叹!CoD提示法能在实现极高准确率的同时将延迟降至最低,减少响应时间,这对时间/计算敏感型应用非常有利。
此类CoD数据还可用于训练LLM,使其推理能力更强(基于DeepSeek-R1强化学习训练方法),从而让LLM更快、更经济、更高效且更具可扩展性。