Skip to content

Q123 · PS+ 在基础 PS 版本上做了哪些重要改进?这些改进如何具体提升性能? ​

假设图书角原来有 18 本书,新收到 7 本,借出 5 本,后来还回 2 本。问现在有多少本。只说“先想个计划,再按计划算”,模型可能列出“先加收到的、再减借出的”,却把后来还回的 2 本遗漏;也可能把四件事都写进计划,却在 25 - 5 这一步算错。

2023 年的 Plan-and-Solve Prompting(PS)论文先用“制定计划→依计划求解”减少漏步骤。作者又在此基础上提出 PS+:提示词除了要求计划,还明确提醒模型提取相关变量和数字、计算并核对中间量、关注常识与逻辑,最后再给答案。它没有给模型安装计算器,也没有修改模型参数;增加的是对推理过程的任务说明。Wang 等:Plan-and-Solve Prompting,ACL 2023 · 作者代码库的提示词列表

PS+ 在先列计划之外,提取 18、7、5、2 四个数值并逐步核算到 22

术语和例子中的数值 ​

词或符号这篇文章里的意思
Prompt / 提示词送给模型的题目和回答要求。它能引导输出,但不是程序硬性保证。
Zero-shot / 零样本在当前提示里没有给模型展示一套已解的示例题;直接让它解眼前问题。
CoT / 思维链提示引导模型分步处理问题的提示方式。论文比较的是经典 Zero-shot-CoT 的简短“逐步思考”提醒。
PSPlan-and-Solve:先理解题意并拟计划,再按计划逐步解决。
PS+作者对 PS 的扩展:增加变量与数值提取、中间计算、常识和完整步骤方面的提醒。它不是一个新模型。
变量暂时给数量起的名字,例如 initial=18 表示最初的 18 本,received=7 表示收到的 7 本。
中间量算到一半的数量,例如收到后 18+7=25 本,借出后 25-5=20 本。
漏步骤错误推理时跳过题目里必要的一步,例如不处理“还回 2 本”。
计算错误步骤选对了,但做错算术,例如写成 25-5=19。
语义理解错误一开始就读错题意,例如把“借出 5 本”理解成“借入 5 本”。

本文题目所有数值均是假设:初始 18 本,收到 7 本,借出 5 本,还回 2 本。图书角当前数量应是 18+7-5+2=22 本。“借出”和“还回”指图书角的书量变化,不是借阅人数变化。

基础 PS 已经解决了哪一部分 ​

基础 PS 的核心是在解题前先生成子任务计划。对这个题,合理的计划至少包含四个状态:确认初始数量、加新收到的、减借出的、加还回的。接着再按顺序执行。它比笼统要求“逐步想”多了一个先盘点任务的环节,因此主要瞄准的是漏步骤。论文明确把 PS 设计为减少 Zero-shot-CoT 中的 missing-step error。ACL 论文摘要

但是计划本身不保证数值正确。模型可能写出完整计划“加 7、减 5、加 2”,执行时却把 18+7 算成 24。也可能把题里的两个“2”记错或把“借出”符号写反。基础 PS 告诉模型要有计划,没有专门把“每个数字对应哪件事”和“每个中间结果是否算对”凸显出来。这就是 PS+ 进一步补充说明的原因。

PS+ 具体增加了什么 ​

作者公开的基础 PS 提示,是先要求理解问题、制定计划,再执行计划;PS+ 的代表性版本在这个顺序里进一步加入“提取相关变量及对应数值”“计算中间变量并留意数字计算与常识”“展示答案”等要求。论文代码库还列出几种面向不同任务或措辞的 PS+ 变体,所以不宜把它讲成只有一句永远固定的咒语。作者代码库:Prompts 表

增加的提醒在图书题里做什么主要缓解的错误
先提取变量及对应数字写下最初 18、收到 7、借出 5、还回 2,逐个对照原题。把某个数量漏掉、把数字贴错事件;也让后续计划可检查。
拟完整计划明确列出“先加 7、再减 5、最后加 2”,每一步对应一条题目信息。减少已经看见信息却在求解中跳步。
计算中间量并注意数值正确性先算 18+7=25,再算 25-5=20,最后 20+2=22。让每次计算有可核对的输入和输出,便于发现算术错误。
注意常识与逻辑连贯收到和还回使图书角增加;借出使其减少。最后 22 本应接近原有 18 本。帮助检查符号、单位和明显不合情理的结果。
明确给出答案写“现在有 22 本”,而非停在一堆算式。避免过程写了却没回答用户的问题。

这些提醒的作用是增加模型生成正确中间表示的机会:先把题目条件列出来,再把条件排成计划,随后每步都能对照输入输出。它不是像编译器那样验证每一个算式。模型仍可能把 25-5 错写为 19,或者在一个看似连贯的解释中犯逻辑错误。需要确定性结果时,应用应把算式交给计算工具校验,并在返回前检查单位与业务含义。

沿着例子实际走一遍 ​

假设我们给模型下面这个中文改写的教学提示。它表达论文 PS+ 的要点,并非把英文原文逐字翻译为官方模板:

先从题目提取每个数量、它代表的事件和增减方向;再列出完整求解计划。按计划计算每个中间数量,检查算术与常识,最后回答当前有多少本。

模型理想的可检查输出可以压缩成四步:

  1. 对齐条件:initial=18、received=7、lent=5、returned=2。lent 指借出,returned 指还回;两者方向不同。
  2. 定顺序:从最初数量出发,按事件发生顺序 +7、-5、+2。
  3. 核中间量:收到后 25;借出后 20;还回后 22。每步输出就是下步输入,避免凭最终印象直接跳到答案。
  4. 答问题:现在图书角有 22 本。用原题核对:四个数都用到,结果单位仍是“本”。

这四步是可见的简短检查记录,不要求系统获取或公开某个模型的私有完整推理过程。在面试或应用中,能观察到变量、工具输入与最终答案是否一致,比背一大段“模型的内心独白”更可靠。对于新模型,是否需要如此详细的提示,也应通过同一批任务实测,不能假设论文在旧模型上的收益对所有模型都不变。

论文的结果该怎样解读 ​

论文先把 Zero-shot-CoT 的常见错误分为计算错误、漏步骤错误和语义误解。PS 主要针对漏步骤,PS+ 通过更详细的任务说明再照顾计算和步骤质量。作者报告在所用 GPT-3 设置下,PS/PS+ 这类零样本提示在三个推理问题类型、十个数据集上总体优于其 Zero-shot-CoT 对照;在数学推理的实验中,与八样本 CoT 的结果接近。这是特定模型、数据集和提示词设置的实验结果,不是“PS+ 对任意模型都固定提高多少百分比”的承诺。ACL 2023 论文

实验里的“性能”主要是答题正确率及错误类型的变化。若真实业务更关心成本、延迟或是否需要正确工具,应该另做评估:同一批题,固定模型、解码设置和评分标准,分别比较简短 Zero-shot-CoT、PS、PS+;统计正确率、漏条件率、数值错误率、输出长度与耗时。别只挑一题看 PS+ 的漂亮答案就宣布有效。

哪些错误它仍然不能解决 ​

如果模型把“借出 5 本”一开始就读成“借入 5 本”,它可以非常认真地提取变量、列计划、逐步算出 18+7+5+2=32,每一步算术都正确,题意仍然错了。这叫语义理解错误。下一题 PS 对语义理解错误为何改善不明显会单独拆原因。实际系统可先把“谁拥有这些书、借出后谁的数量减少”转成可由用户确认的表述,或使用多个题意解释做交叉检查,而不是机械增加更多“请认真”之类的提示。

遇到很长的数字链、财务金额或不可逆动作,还应让代码/计算器执行算术,让业务规则验证结果。PS+ 的定位是提示词层的推理引导,不是具备工具和环境反馈的完整 Agent 规划器,也不等于 Plan-and-Execute Agent 模式里的外部行动计划。

面试时怎么回答 ​

基础 PS 让模型先理解题目、制定子任务计划,再按计划逐步求解,主要减少漏步骤。PS+ 在此基础上把“提取相关变量和数字、形成更完整计划、计算中间量并注意算术与常识、最后明确给答案”写进提示词。比如图书角从 18 本开始,收到 7、借出 5、还回 2;PS+ 会要求先对齐四个数字和增减方向,再核 18+7=25、25-5=20、20+2=22。这样更容易发现漏条件与中间计算问题。ACL 2023 原论文在当时 GPT-3 的多个推理数据集上报告了优于 Zero-shot-CoT 的结果,但 PS+ 仍可能读错题意或算错数,不能保证正确,也不等于给 Agent 增加了计算工具。生产中我会固定题集做对照评测,并让关键数值交给确定性工具验证。

如果追问“PS+ 与 PS 差别是否只是让模型写更长”,回答是:差别在多了可核对的中间对象,特别是变量与数值对应关系、计算结果和常识检查。输出越长本身不保证越对;评价要看是否降低漏步骤和计算错误,同时没有增加语义误解和成本。作者公开提示词

资料依据 ​

最后更新2026-09-26
难度P1
频率medium
阅读22 min
主题prompting / plan-and-solve / ps-plus
觉得有帮助?把这个链接转给正在求职的朋友 · 用 Ctrl + K 全站搜索其它题