思维生成包含一系列技术,可促使 LLM 在解决问题时阐明其推理过程。常见的方式包括思维链(Chain-of-Thought,CoT)
近期,OpenAI推出了新模型o1-preview和o1-mini。我觉得本质上就是一个提示词前置的过程,将思维链内置到模型内。这本身应该是模型工程化的一个发展方向。通过思维链分解大模型的思考行为,从而可以使用强化学习进行路径优化。
当然,新模型目前也带来了巨大的额外token消耗。
Chain-of-Thought (CoT) Prompting
适用场景:数学、符号推理
不适用场景:文本处理、普通对话回答问题
思维链(CoT)提示(Wei, Jason, et al., 2022))是指利用提示词鼓励 LLM 在给出最终答案前表达其思考过程。研究表明CoT 能帮助 LLM 解决涉及数学和符号推理的任务,至于其它任务,CoT 的效果并不显著甚至可能有损模型性能(Sprague, et al., 2024)。
这种“思考”并不是真的思考,只是一种辅助它增强回答效果的手段。模型也并不是真的具有智能,本质上依然是给予更多信息来增加模型回答成功的概率。
零样本场景
最常见的CoT形式,通过给予大模型一个诱导性短语。如“让我们一步步思考”,“以循序渐进的方式解决这个问题”,“让我们一步步来判断答案是否正确”这类提示词通常与具体使用场景无关,是一句“万能咒语”。
后退提示:Step-Back Prompting(Zhang, et al., 2023)
类似于第一性原理,后退提示是让大模型先提取高层次的概念,然后再利用这些概念来指导推理路径。通常分为两步
- 抽象(Abstraction)
在面对问题的时候,先提问“解决这个任务涉及哪些原理定律?”让模型给出所需用的原理。 - 推理(Reasoning)
在上一步的基础上,再让模型回答问题。
模板如下:
Here is a question or task: {{Question}}
Let's think step-by-step to answer this:
Step 1) Abstract the key concepts and principles relevant to this question:
Step 2) Use the abstractions to reason through the question:
Final Answer:
整个操作等价于把所需知识+问题一并给大模型,让它来进行回答,我不觉得这属于什么推理能力,只是通过第一阶段诱导激活大模型的部分知识,并尽量排除不相关细节干扰,试图增加答案回答的准确度。原论文对于error cases的分析也证明了这一点,错误与提示词和前一阶段的原理通常无关,问题仍出现在大模型的推理阶段。
Analogical Prompting(Yasunaga et al., 2023)
自动生成CoT示例,适用场景:数学推理、代码生成
与SG-ICL类似,在零样本场景下希望能够自动生成示例变成少样本场景。这种自动生成的示例的稳定性并不能保证。该方法在数学推理以及代码生成任务中已被证明有效。模板如下:
# Problem: [x]
## Instructions
## Relevant problems: Recall three relevant and distinct problems. For each problem, describe it and explain the solution.
## Solve the initial problem:


Thread-of-Thought (ThoT) Prompting (Zhou et al., 2023)
适用场景:问题回答、配合RAG的答案检索、尤其是在大型复杂语境
思维线索(ThoT)以思维链提示为基础,改进了诱导方式,这种方法尤其适用于较长的问答设置,以及使用检索增强(RAG)生成大语境时。与 "让我们一步一步地思考 "相比,"思维导线 "的提示词是"Walk me through this context in manageable parts step by step, summarizing and analyzing as we go."( 让我一步一步地了解这个上下文,边总结和分析)。
说白了就是让模型总结上下文,排除无关干扰(总结),然后提高准确率。模板如下
{{Task}}
"Walk me through this context in manageable parts step by step, summarizing and analyzing as we go."
表格式思维链(Jin and Lu, 2023)
表格式思维链Tabular Chain-of-Thought (Tab-CoT)与ThoT类似,只是在推理步骤中使用了不同的格式。具体来说,它指示模型以结构化的格式(通常使用 markdown 表格)提供推理。这种结构化方法有助于提高模型输出的清晰度和条理性,使推理过程更容易理解。模板如下
Problem:[x]
|step|event|result|

少样本场景
Contrastive CoT Prompting (Chia et al., 2023)
适用场景:数学推理、事实问答
将正确示例以及错误示例同时放置于提示词中给到大模型,尝试向大模型表明应该如何推理/不要怎样推理。

Uncertainty-Routed CoT Prompting (Google, 2023)
不确定性导向思维链提示
适用场景:选择题
投票机制,采样多个思维链推理路径进行推理,并设置一个投票阈值。统计每个选项的投票数,如果多数票比例低于阈值则重新生成答案,反之则是最终答案。
将传统的投票算法应用到大模型推理中,有点类似于agent的reflection机制。但是相当于n倍的token消耗,目前没有实际工程意义。
Complexity-based Prompting (Fu et al., 2022)
提出了一个复杂度(Complexity)的概念,简单的理解为推理步骤越多往往意味着更高的答案质量。同时在两个方面得以应用:
- 在少样本选取的时候,选择复杂样例作为提示词
- 在推理阶段,采用类似上一个算法的投票选举,但是会设置一个推理长度阈值,超过阈值的推理过程才会被纳入投票环节。
参考文献
- Wei, J., Wang, X., Schuurmans, D., Bosma, M., Xia, F., Chi, E., ... & Zhou, D. (2022). Chain-of-thought prompting elicits reasoning in large language models. Advances in neural information processing systems, 35, 24824-24837.
- Sprague, Z., Yin, F., Rodriguez, J. D., Jiang, D., Wadhwa, M., Singhal, P., Zhao, X., Ye, X., Mahowald, K., & Durrett, G. (2024). To CoT or not to CoT? Chain-of-thought helps mainly on math and symbolic reasoning. arXiv.https://arxiv.org/abs/2409.12183
- Zheng, H. S., Mishra, S., Chen, X., Cheng, H. T., Chi, E. H., Le, Q. V., & Zhou, D. (2023). Take a step back: Evoking reasoning via abstraction in large language models. arXiv preprint arXiv:2310.06117.
- Yasunaga, M., Chen, X., Li, Y., Pasupat, P., Leskovec, J., Liang, P., ... & Zhou, D. (2023). Large language models as analogical reasoners. arXiv preprint arXiv:2310.01714.
- Zhou, Y., Geng, X., Shen, T., Tao, C., Long, G., Lou, J. G., & Shen, J. (2023). Thread of thought unraveling chaotic contexts. arXiv preprint arXiv:2311.08734.
- Jin, Z., & Lu, W. (2023). Tab-cot: Zero-shot tabular chain of thought. arXiv preprint arXiv:2305.17812.
- Chia, Y. K., Chen, G., Tuan, L. A., Poria, S., & Bing, L. (2023). Contrastive chain-of-thought prompting. arXiv preprint arXiv:2311.09277.
- Google. 2023. (2023). Gemini: a family of highly capable multimodal models. arXiv preprint arXiv:2312.11805.
- Fu, Y., Peng, H., Sabharwal, A., Clark, P., & Khot, T. (2022, October). Complexity-based prompting for multi-step reasoning. In The Eleventh International Conference on Learning Representations.
