AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


Plan-and-Solve Prompting 论文解析
发布日期:2024-05-10 21:19:15 浏览次数: 1801


Plan-and-Solve Prompting-Improving Zero-Shot Chain-of-Thought Reasoning by Large Language Models 论文详细介绍了与ReAct类似的Plan-and-Solve 提示策略,提高大型语言模型在多步推理任务中的表现。 让我们一块来解读下。

论文摘要

本篇论文介绍了如何通过改进零样本链式思维(Zero-shot chain-of-thought)推理模型来提高大型语言模型在多步推理任务中的表现。作者提出了“计划和解决问题”(Plan-and-Solve)提示策略,该策略由两个组件组成:首先,将整个任务分解为更小的子任务,并根据计划执行这些子任务;其次,为了消除计算错误并提高生成的推理步骤的质量,作者还扩展了PS提示策略,得到了PS+提示策略。实验结果表明,与Zero-shot-CoT相比,作者提出的提示策略在所有数据集上都取得了显著的性能提升,并且在数学推理问题上的表现甚至超过了8个训练示例的CoT提示策略。

论文方法

方法描述

本文提出了PS(Plan-and-Solve)提示,这是一种新的Chain-of-Thought提示方法,它使LLMs能够明确地设计解决问题的计划,并在预测输入问题的答案之前生成中间推理过程。与以前的几样本CoT方法不同,它们需要包含一些逐步演示示例的提示,而零样本PS提示不需要示范例子,它的提示包括问题本身和一个简单的触发句子。类似于Zero-shot-CoT,Zero-shot PS提示分为两个步骤。第一步中,提示首先使用提出的提示模板进行推断,以生成推理过程和答案。第二步中,通过使用答案提取提示来提取答案,例如“因此,答案是阿拉伯数字”。这种方法的新颖之处在于,它引导LLMs制定详细的计划并执行该计划,以确保正确计算和执行中间结果。

方法改进

为了解决复杂推理任务中的错误,本文提出了一些详细指令,如“注意计算”,“提取相关变量及其对应的数值”,以及“计算中间结果”。这些指令可以帮助LLMs更准确地执行计算和中间结果,并避免遗漏重要信息。

解决的问题

本文的主要贡献是在CoT提示领域引入了一种新的方法,即PS提示,它允许LLMs在没有示范例子的情况下制定详细的计划并执行该计划,从而提高其在复杂推理任务上的性能。这种方法不仅可以帮助LLMs更好地理解问题和解决问题,还可以减少由于计算错误或遗漏关键信息而导致的错误。

论文实验(可跳过)

本文主要介绍了使用GPT-3作为语言模型的零/少量样本学习方法在不同类型的数学问题上的表现,并与现有的零/少量样本学习方法进行了比较。具体来说,本文进行了以下对比实验:

  1. 零/少量样本学习方法在算术推理问题上的表现比较(表2)。作者使用了手动和自动生成的示例来训练模型,并使用准确率作为评估指标。结果表明,作者提出的零/少量样本学习方法在算术推理问题上表现优异,特别是在没有人工示例的情况下也能取得较好的效果。

  2. 零/少量样本学习方法在常识推理问题上的表现比较(表3)。作者只对作者提出的零/少量样本学习方法进行了比较,因为其他方法不适用于该类型的问题。结果表明,在常识推理问题上,作者的方法表现较好。

  3. 零/少量样本学习方法在符号推理问题上的表现比较(表4)。作者只对作者提出的零/少量样本学习方法进行了比较,因为其他方法不适用于该类型的问题。结果表明,在符号推理问题上,作者的方法表现较好。

  4. 零/少量样本学习方法中使用自一致性策略的效果比较(图4)。作者使用了GSM8K和SVAMP数据集来测试自一致性策略的效果。结果表明,使用自一致性策略可以显著提高模型的表现。

  5. 不同提示方式对零/少量样本学习方法的影响比较(表5)。作者设计了多种不同的提示方式,并对其表现进行了比较。结果表明,添加更多的细节指令可以使模型产生更好的推理步骤。

  6. 错误分析和计划存在的影响比较(表6和图5)。作者通过对错误类型的分布和计划存在的影响进行分析,进一步探讨了零/少量样本学习方法的优势。结果表明,计划的存在可以减少计算错误和缺失推理步骤的错误,而零/少量样本学习方法可以在不依赖人工示例的情况下实现这一点。

总的来说,本文展示了使用GPT-3作为语言模型的零/少量样本学习方法在不同类型数学问题上的表现,并与其他现有方法进行了比较。结果表明,该方法具有较高的准确性,并且可以通过添加更多细节指令和使用自一致性策略等方式进一步提高其性能。此外,该方法还可以有效地解决计算错误和缺失推理步骤等问题。

论文总结

文章优点

本文提出了一种新的零-shot-CoT(Zero-shot-CoT)方法——计划和解决策略(PS)和PS+提示(PS+)。这些方法引导大型语言模型通过将整个任务分解为更小的子任务来实现正确的推理,并根据计划执行子任务。实验结果表明,与先前的零-shot基线相比,PS+在多个算术推理数据集上表现更好或相当好,并且可以与少数shot-CoT方法相媲美。此外,作者还提出了计划和解决策略的概念,该概念可用于非推理任务,这为未来的进一步研究提供了方向。

方法创新点

本文的主要贡献是提出了一种新的Zero-shot-CoT方法——计划和解决策略(PS)和PS+提示(PS+),以及计划和解决策略的概念。这种方法能够引导大型语言模型实现正确的推理,而不是仅仅基于语言模型本身的能力。这种创新的方法对于提高语言模型在推理任务中的性能具有重要意义。

未来展望

未来的研究可以从以下几个方面展开:首先,可以探索如何改进计划和解决策略以更好地指导大型语言模型实现正确的推理;其次,可以考虑如何将计划和解决策略应用于其他类型的自然语言处理任务中,例如对话系统和机器翻译等;最后,可以尝试将计划和解决策略与其他技术相结合,如动态提示学习和半监督学习等,以进一步提高语言模型在各种任务上的性能。

LangChain实现

根据LangChain的官网介绍,LangGraph 中发布了三种代理架构,展示了“plan-and-execute”风格的代理设计。这些智能体有望比传统的推理和行动 (ReAct) 风格的智能体进行许多改进。

首先,他们可以更快地执行多步骤工作流程,因为每次操作后不需要咨询更大的代理。每个子任务都可以在没有额外的 LLM 调用(或调用更轻量级的 LLM)的情况下执行。
? 其次,与 ReAct 代理相比,它们可以节省成本。如果 LLM 调用用于子任务,它们通常可以针对更小的、特定于领域的模型。然后,较大的模型仅需要(重新)规划步骤并生成最终响应。
? 第三,通过迫使计划者明确“思考”完成整个任务所需的所有步骤,他们可以整体表现得更好(在任务完成率和质量方面)。生成完整的推理步骤是一种经过验证的改进结果的提示技术。细分问题还可以更集中地执行任务。

LangChain 实现:Plan-And-Execute

它由两个基本组件组成:

  1. 规划器,提示LLM生成多步骤计划来完成大型任务。
  2. 执行器,接受用户查询和计划中的步骤并调用 1 个或多个工具来完成该任务。
一旦执行完成,代理会再次被调用,并出现重新计划提示,让它决定是否完成响应或是否生成后续计划(如果第一个计划没有达到预期效果)。这种代理设计让我们不必为每个工具调用调用大型规划器 LLM。它仍然受到串行工具调用的限制,并且由于它不支持变量分配,因此每个任务都使用 LLM。

个人总结

其实仔细观察下来,有些关于Agent设计的提示策略底层的原理差别不大,一部分是对ReAct或CoT的改进,都是基于大模型强大的能力而又不能充分且良好调用的基础上,让大模型能够像人一样初步思考,计划,执行,反思,总结...在LLM越发强大的背景下,随时有被降维打击的可能(比如说未来GPT5的推理能力大幅增强,且具备对真实世界的感知能力),那么当前的很多问题便不再是问题且不需要解决,AI Agent 的定义及设计也需要重新思考与理解,或者说我们当前做的离真正的Agent 还有很长的路要走。


以上是对Plan-Solve 提示策略论文的简单解读,欢迎留言一起交流。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询