思维链是什么
思维链(Chain-of-Thought)指引导模型先分步推导再给结论,而不是直接跳到答案。对数学、多跳问答、逻辑分析这类任务,要求它分步处理能明显提高正确率;对分类、改写、抽取这类任务基本没有收益,还白涨输出 token。需要注意的是:推理模型内部已经做了推理,再手动加逐步引导几乎没有增益,有些模型甚至会对这类提示产生负面反应。
基本信息
| 适用任务 | 数学计算、多跳问答、逻辑与因果分析 |
|---|---|
| 不适用 | 分类、抽取、改写、格式转换等直给任务 |
| 常见写法 | 要求分步分析,再按固定格式给出结论 |
| 与推理模型 | 推理模型内部已有推理,手动引导收益很低 |
| 成本影响 | 思考过程会显著增加输出 token |
| 替代方案 | 把复杂任务拆成多次调用,每步只需简单推理 |
不同任务上的效果
| 任务类型 | 效果 | 说明 |
|---|---|---|
| 数学与算术 | 提升明显 | 中间步骤出错可被发现和纠正 |
| 多跳问答 | 提升明显 | 需要串联多个事实才能作答 |
| 逻辑与因果判断 | 提升较明显 | 分步排除假设比一次判断更稳 |
| 分类与打标 | 基本无收益 | 答案空间很小,推导过程多余 |
| 格式化改写 | 可能变差 | 额外解释文字会破坏输出格式 |
可用的提示写法
- 要求先列要点或条件,再给结论,避免只给答案
- 要求分步计算并保留中间结果,便于人工核对
- 给出推理模板:先澄清前提,再分析,最后给结论
- 把结论与过程分开输出,便于程序只取结论部分
- 对文档类任务,先逐段确认相关段落,再综合回答
分步引导的提示片段
分步引导的提示片段
# 适合:计算与多步分析
请按以下顺序作答:
1) 先列出题目给出的已知条件
2) 分步计算,写出每一步的中间结果
3) 最后单独一行给出结论,格式为「结论:……」
# 输出约束:只要结论部分进入后续流程,过程仅用于人工核对
# 不适合:情感分类、字段抽取、格式转换,这些任务直接给结果更准也更省与推理模型的配合
| 模型类型 | 要不要手动加思维链 | 替代做法 |
|---|---|---|
| 通用对话模型 | 复杂任务可加 | 提示里给出推理步骤要求 |
| 推理模型 | 不必加 | 用推理档位参数控制思考深度 |
| 小尺寸模型 | 视任务而定 | 先拆分任务再分别调用,比硬加更稳 |
| 结构化输出场景 | 谨慎使用 | 过程与结论分字段输出,避免污染结构 |
把过程与结论分成两个字段输出,是工程上最实用的做法:程序只消费结论字段,过程字段留作排查与人工核对。
分步推导会增加输出长度与费用:在设计提示时先确认收益是否值得,尤其是高频批量任务。