思维链实例解析
CoT(思维链)是帮助大型语言模型解决如数学问题和关系推理问题等复杂问题的有效方式,下面通过实际例子来帮助我们了解思维链。
-
零样本思维链
定义:无需提供示例,直接通过指令引导模型生成推理步骤。
示例:
问题:小明有 12 个苹果,给了小红 5 个,然后又买了 3 个,现在他有多少个苹果?
模型输出:
-
小明原有 12 个苹果。
-
送给小红 5 个后,剩余 12 - 5 =7 个。
-
又买了 3 个后,总数为 7 + 3 = 10 个。 答案:10 个苹果。
特点:
-
指令中无需提供示例,直接要求模型“逐步思考”。
-
适用于简单任务,但复杂问题可能因步骤缺失导致错误。
-
小样本思维链
定义:通过提供少量带推理步骤的示例,引导模型模仿并生成答案。
示例:
示例 1:
问:小明有 5 个羽毛球,买了 2 管,每管 3 个,现在有多少个?
答:5(原数量) + (2 × 3) = 11 个。
示例 2:
问:自助餐厅有 23 个苹果,用掉 20 个后又买 6 个,现在有多少个?
答:23 - 20 + 6 = 9 个。
待解决问题:
问:商店上午卖出 8 杯咖啡,下午卖出的是上午的 2 倍,全天卖了多少杯?
模型输出:
-
上午卖出 8 杯。
-
下午卖出 8 × 2 = 16 杯。
-
全天共 8 + 16 = 24 杯。 答案:24 杯。
特点:
-
通过示例明确推理逻辑,模型可直接模仿生成答案。
-
适用于数学计算、逻辑推理等结构化问题。
-
Self-Consistency(自一致性)
- SC (Self-Consistency) 方法是在 此文章 中提出的,该方法会为问题生成多条不同的推理路径,并对生成的答案进行众数投票。这种方法在复杂推理任务中表现出了显著的能力,但由于需要推理多次来采样多条推理链,所以可能会消耗很多的时间和资源。
定义:生成多条推理路径,并通过投票选择最一致的答案。
示例:
问题:小明有 12 个苹果,给了小红 5 个,又买了 3 个,现在有多少个?
模型生成的多条推理路径:
-
12 - 5 + 3 = 10
-
(12 - 5) + 3 = 10
-
12 + 3 - 5 = 10
-
12 - (5 + 3) = 4(错误路径) 投票结果:10(3 票),4(1 票) 最终答案:10 个苹果。
特点:1)只用了一个模型,没有用多个模型集成。2)根据答案做投票,而不是根据推理路径,这里假设每个复杂的问题存在多种解决方案。
-
Tree-of-Thoughts(思维树)
大模型的推理过程是一个token级别的,从左到右的一个决策过程,对比人类的思考方式来说,有着非常大的局限,这使得大模型在需要探索,全局分析(前瞻探索或者回溯),初步决策发挥关键作用的任务中效果不太好。
相比一般的CoT方法采样一条推理路径,ToT(Tree-of-Thoughts)允许语言模型同时考虑多种不同的推理路径,通过对推理过程进行自我评估,以及在必要时进行前瞻或回溯以做出全局选择。具体的,分为下面四个阶段:
- 问题分解 (Thought Decomposition)
根据问题的特点,将问题分解成多个中间步骤。每个步骤可以是短语、算式或写作计划,这取决于问题的性质。
- 推理过程生成 (Thought Generation)
假设解决问题需要k个步骤,有两种方法生成推理内容:
-
独立采样:对于每个状态,模型会独立地从CoT提示中完整抽取k个推理内容,不依赖于其他的推理内容。
-
顺序生成:顺序地使用“提示”来逐步引导推理内容生成,每个推理内容都可能依赖于前一个推理内容。
- 启发式评估 (Heuristic Evaluation)
使用启发式方法评估每个生成的推理内容对问题解决的贡献,这种自我评估基于语言模型的自我反馈,如设计Prompt让模型对多个生成结果进行打分。
- 选择搜索算法 (Search Algorithm)
根据生成和评估推理内容的方法,选择适当的搜索算法。例如,可以使用广度优先搜索(BFS)或深度优先搜索(DFS)等算法来系统地探索思维树,并进行前瞻和回溯。
示例:
24点游戏:给定4个整数数字,通过加、减、乘、除四种运算(可以使用括号),使得最终结果等于24。
具体题目:
- 分成三个步骤解决,每个步骤为一个中间算式,如给定4,9,10,13 ,用如下三个步骤可以解决,每次运算一次:
-
13 - 9 = 4 (left: 4 4 10);
-
10 - 4 = 6 (left: 4 6);
-
4 * 6 = 24 (left: 24)
-
在每个步骤中,采用下图(a)中的过程让模型生成多个候选者;
-
对于每个步骤中的候选者,用(b)中的过程同样用模型来做评估,如评价该候选者剩余数10 13 13是否能运算得到 24 点得到不可能,下一步将从得分较高的候选者出发;
-
对每个步骤都执行 2、3 来生成中间算式以及评估;
-
进行 BFS 搜索,采样出可行的解法路径(绿色部分)
总结对比
| 方法 | 核心机制 | 适用场景 | 优势 | 局限性 |
| 零样本 CoT | 直接指令引导模型生成推理步骤 | 简单数学、逻辑问题 | 无需示例,简洁高效 | 复杂问题易出错 |
| 小样本 CoT | 提供少量示例模仿推理逻辑 | 结构化问题(如应用题) | 步骤明确,答案准确 | 依赖高质量示例 |
| Self-Consistency | 多路径采样 + 投票 | 多解问题(如数学歧义) | 提高鲁棒性,减少单一路径偏差 | 计算成本高 |
| Tree-of-Thoughts | 分解问题 + 搜索算法探索多路径 | 复杂逻辑问题(如 24 点) | 全局优化,支持回溯和前瞻 | 实现复杂,需设计评估规则 |

浙公网安备 33010602011771号