The "Think" Tool: Enabling Claude to Stop and Think("think" 工具:让 Claude 停下来思考)
- 原文标题
- The "Think" Tool: Enabling Claude to Stop and Think("think" 工具:让 Claude 停下来思考)
- 原文链接
- https://www.anthropic.com/engineering/claude-think-tool
- 作者
- Anthropic
- 发布日期
- 2025-03-20(2025-12-15 更新:多数场景下推荐用扩展思考替代)
🎯 一句话
think 工具不做任何事——它唯一的作用就是给模型一块专门用来思考的草稿区。⭐ 它有效的场景很具体:拿到工具返回结果之后、决定下一步之前。
一个专门的 "think" 工具能显著提升 Claude 在复杂问题(尤其是需要遵守政策和顺序决策的场景)上的表现——某些基准上相对提升最高 54%。
⚠️ 注意时效: 2025 年 12 月的更新指出,随着模型性能提升,多数情况下建议使用扩展思考(extended thinking)而非 think 工具。
think 工具是什么
- 给 Claude 一个「停下来想想是否已掌握继续前进所需全部信息」的步骤,在长工具调用链中尤其有价值
- 实现极简:本质上是一个只记录思考、不改变任何外部数据或状态的函数
与扩展思考的区别: - think 工具: 在响应生成过程中工作,处理和分析工具结果等外部新信息 - 扩展思考: 在响应生成之前工作,深度考虑与迭代规划
基准数据
τ-Bench(客服领域)
- 航空领域: think 工具 + 优化提示词 0.570 vs 基线 0.370(相对提升 54%)
- 零售领域: think 工具 0.812 vs 基线 0.783(相对提升 3.7%)
SWE-Bench
- 对 Claude 3.7 Sonnet 达到 0.623 SOTA 有贡献;孤立测量显示平均提升 1.6%(p < .001)
关键发现
领域越复杂,配套的优化提示词越重要——航空场景中「工具+优化提示词」远优于「只有工具」。
适用时机
适合: 1. 工具输出分析——行动前处理之前工具调用的结果 2. 政策密集环境——遵循细则并核验合规 3. 顺序决策——前面的决定影响后面的多步任务
不适合: 1. 非顺序的工具调用(单次或并行调用) 2. 没有大量约束的简单指令跟随
实现指引
- 领域专属的策略性提示: 提供与场景相关的清晰指令和示例、期望的推理详细程度、常见场景的决策树、如何验证信息收集完整
- 放在系统提示词里: 复杂指令放系统提示词而非工具描述,获得更好的整合
- 上手流程: 先用 Claude 目前表现挣扎的高难度 Agent 场景测试→实现带领域指导的定制工具定义→监控使用模式并迭代提示词
结论
think 工具是低开销的实用增强,「用对场景就有可观收益,实现复杂度极低」。成功取决于场景匹配和领域提示词工程投入,收益可跨模型版本泛化。
✅ 检查点
- think 工具做了什么?它为什么有用?
- 它最有效的时机是什么?
- 它和「让模型在回答里先写思路」有什么区别?
👀 答案
- 它什么都不做——不查询、不修改、不调用外部系统,只是提供一个结构化的位置让模型写下推理过程。有用是因为它把「思考」变成了流程里的显式一步,而不是指望模型在生成答案时顺便想清楚。
- ⭐ 拿到工具返回结果之后、决定下一步之前。这个时刻信息量最大也最容易出错:返回的数据可能不完整、可能和预期不符、可能需要和之前的结果对照。强制停一步,能显著降低连锁错误。
- 区别在于它不占用最终回答的空间,也不会被用户看到,所以模型可以写得更长更啰嗦而不影响输出质量。更重要的是:它是一次独立的工具调用,位置固定、可被流程强制触发,而「在回答里先写思路」完全取决于模型当时想不想写。
🛑 可以停在这里
⚡ 走神救援
⭐think 工具什么都不做——不查询不修改不调外部系统,唯一作用是给模型一块专门的思考草稿区,把「思考」变成流程里的显式一步而不是指望模型顺便想清楚。⭐⭐最有效的时机很具体:拿到工具返回结果之后、决定下一步之前——这个时刻信息量最大也最容易出错(数据可能不完整、和预期不符、需要和之前结果对照),强制停一步能显著降低连锁错误。和「在回答里先写思路」的区别:不占用最终回答空间、用户看不到(可以写得更啰嗦),更关键的是它是独立的工具调用,位置固定、可被流程强制触发,而写思路完全取决于模型当时想不想写。