ByteNoteByteNote

字节笔记本

2026年5月31日

用斯坦福的这条 Prompt,普通模型也能像 o1 一样先思考再回答

API中转
¥120

OpenAI o1 发布后,大家都在讨论它强大的推理能力。但很多人忽略了一个事实:o1 的那种先思考再回答的能力,在一定程度上可以通过一条精心设计的 prompt 在普通模型上复现。这个发现来自斯坦福大学的 NLP 研究团队。

核心思路是让模型在生成最终答案之前,先产生一个推理过程。这条 prompt 的中文版本可以这样理解:我们一步一步来思考。在给出最终答案之前,先把你的推理过程写下来。检查每一步是否有错误。就是这样简单的一句话,能够显著提升模型在推理任务上的表现。

Chain-of-thought(CoT)推理的发现过程很有意思。2022 年谷歌的研究人员在论文中首次提出,通过在 prompt 中加入"Let's think step by step",模型在推理任务上的准确率大幅提升。这个看似简单的方法触发了模型的一种特殊推理模式:模型不再直接输出答案,而是先生成一个推理链,逐步推导出结论。

CoT 推理为什么有效?传统的大模型做推理时是在做"一个跳跃"——直接从问题映射到答案。对于简单的任务够了,但对于复杂的多步推理,跳跃跨度太大,容易出错。CoT 把一个大跳跃拆成多个小跳跃,每一步都在前一步的基础上做推理,每一步的跳跃跨度很小,出错概率也低。

斯坦福团队在 GPT-4 上做了系统的实验。在 GSM8K 数学推理数据集上,使用 CoT prompt 后准确率提升了超过 10 个百分点。在需要多步推理的复杂问题上提升更明显。虽然还达不到 o1 的水平,但考虑到这只是一个 prompt 模板,不需要改模型、不需要额外训练,性价比非常高。

Prompt 设计的具体细节也值得注意。指令要明确要求模型"写下推理过程"而不是"在脑中思考"。写下来能确保每一步推理都可检视,模型在写的过程中也会更注意逻辑的一致性。指令要鼓励自我检视,让模型检查每一步是否有错误。指令要明确输出格式,最终答案放在最后,推理过程放在前面。

CoT prompt 的变体有很多种。Zero-shot CoT 不需要示例,直接在 prompt 中加入"Let's think step by step"。Few-shot CoT 提供几个推理示例,让模型学习示例中的推理模式。Self-consistency CoT 多次运行 CoT 推理,取最多数一致的答案。ToT(Tree of Thoughts)在推理过程中做分支探索,考虑多种推理路径。

Self-consistency CoT 是特别实用的一种变体。它多次运行 CoT 推理生成多个推理路径,然后选择出现频率最高的答案作为最终输出。实验表明,5 次 self-consistency 就能显著提升准确率。缺点是推理时间增加,适合对延迟要求不高的场景。

当然这条 prompt 和 o1 的原生能力有差距。o1 不仅在 prompt 层面做了引导,还在训练层面针对多步推理做了优化,模型学会了在长时间的推理过程中保持逻辑的连贯性。这是单纯靠 prompt 无法复现的。o1 的推理是系统性的、内置的、稳定的。而通过 prompt 实现的 CoT 推理是不稳定的,一次不好的采样就可能让模型偏离正确方向。

建议的使用策略是分层使用。简单问题直接用普通 prompt,快速得到答案。中等复杂问题使用 CoT prompt,让模型逐步推理。复杂问题使用 self-consistency CoT,多轮推理取多数一致。只有最高难度的问题才交给 o1 处理。这种分级策略在推理质量和推理成本之间取得了最佳平衡。

对于开发者来说,理解 CoT 的局限性和适用范围同样重要。CoT 在数学、逻辑、编程等需要逐步推理的任务上效果显著,但在创意写作情感分析等不需要显式推理的任务上效果不明显甚至可能降低输出质量。了解 CoT 的适用范围,避免在不合适的场景中使用。CoT prompt 在不同模型上的效果也有差异。在更强的模型上,CoT 的收益更明显,因为强模型有更好的推理能力。在弱模型上,CoT 的收益有限,因为弱模型即使有了推理指导,推理能力本身的限制仍然存在。如果你的模型本身推理能力就很弱,建议先升级模型再考虑优化 prompt。

分享: