Think Tool — 讓 Claude 在工具呼叫鏈裡有個草稿紙的設計模式
同一個場景,加了一個東西之後,Claude 的正確率從 37% 跳到 57%。
那個東西不是更強的模型、不是更長的 prompt、不是換一個框架。是加了一個叫 think 的工具——讓 Claude 在工具呼叫鏈的中間,有個地方可以把想法寫下來。
這是 Anthropic 工程師在 2025 年 3 月發表的設計模式。一個工程師做 code review,但不能用草稿紙,所有推理都得在腦子裡跑。同一個人、同樣的問題,給他一張草稿紙,結果大概率不一樣。think tool 就是在做這件事——給 Claude 一張草稿紙,讓它在需要的時候把推理過程寫出來,不直接跳到下一個動作。
它和 Extended Thinking 不一樣
這是很多人容易混的地方,值得先講清楚。
Extended Thinking 是 Claude 在開始回應之前的思考——一個深度推理過程,讀完你的問題,在心裡把整個計畫想清楚,然後才開始生成答案。就像你解一道數學題之前,先在腦子裡把解題路徑跑一遍。
think tool 是不一樣的東西。它是 Claude 已經開始行動之後的中途思考。Claude 呼叫了工具 A,拿到結果,這個結果告訴了它一些新資訊——但它還沒決定下一步要怎麼走。這時候它可以呼叫 think,把這些資訊、相關規則、衝突之處都梳理一遍,再決定下一個動作。
用做菜來類比:Extended Thinking 是你在進廚房之前把整道菜的做法在腦子裡過一遍。think tool 是你切完洋蔥,嘗了一下,覺得哪裡不對,然後停下來想「接下來應該加醬油還是鹽」,把推理寫在旁邊的便條紙上。
Anthropic 在 2025 年 12 月更新了建議:大部分情況下,優先用 Extended Thinking(包括 Adaptive Thinking),因為整體效果更好。但有一類場景 think tool 還是比 Extended Thinking 更合適——就是長串工具呼叫鏈,每一步都依賴上一步的結果,而且中途拿到的資訊比問題本身更關鍵。
實作
工具定義很簡單,實際上就是一個不做任何事的工具:
1 | { |
Claude 呼叫這個工具時,它回傳的東西是空的——沒有任何副作用,只是把推理過程寫進 tool use 的 log 裡。下一輪的 context 就包含了這段推理,Claude 在決定下一步時可以參考。
光是加這個工具,在某些場景已經有效果。但 Anthropic 的測試顯示,搭配 system prompt 裡的使用說明,效果會顯著更好:
1 | ## Using the think tool |
難域(像是有複雜規則的航空客服)中,光有工具但沒有說明的效果接近 Extended Thinking;加了說明的版本把 pass^1 從 0.33 推到 0.57。
什麼時候用、什麼時候不用
think tool 適合的場景有三類:
長串工具呼叫鏈:每一步的輸出是下一步的輸入,而且錯一步後面都錯。例如:先查使用者身份 → 查訂單狀態 → 查退款規則 → 判斷能不能退 → 執行退款。這個鏈上有任何一步判斷錯誤,後面就會雪崩。think tool 讓 Claude 在每個決策點把資訊整理清楚,再往下走。
規則複雜的環境:有詳細業務規則需要遵守,而且規則之間可能有衝突(「高級會員享免費托運,除非跨太平洋航線除非有促銷碼除非…」)。Claude 原生的行為容易漏掉邊界條件。
Sequential decision making:每個動作都在改變環境狀態,而且代價昂貴——搞錯了要付出真實成本,不是重試一次就好。
不適合用的場景也清楚:
單一工具呼叫、並行工具呼叫、簡單的指令跟隨。這些情況加 think tool 不會讓結果更好,只會多燒 token 和延遲。
效果數據
Anthropic 用 τ-Bench 測試,這個 benchmark 設計來評估 AI 在真實客服情境裡的工具使用能力——要對話、要查資料庫、要遵守複雜的規則。
航空客服域(複雜規則):
| 設定 | pass^1 |
|---|---|
| 基線(無任何強化) | 0.33 |
| 只加 Extended Thinking | 0.41 |
| 只加 think tool(無說明) | 0.40 |
| think tool + optimized prompt | 0.57 |
零售客服域(規則相對簡單):
| 設定 | pass^1 |
|---|---|
| 基線 | 0.78 |
| Extended Thinking | 0.77 |
| think tool(無說明) | 0.81 |
兩個發現:在複雜域裡,提示詞說明和 think tool 要同時用才能拉開差距;在簡單域裡,光加工具就有效果。
SWE-Bench 的結果也在同一篇報告裡:Claude 3.7 Sonnet 的 SWE-Bench 評分中,加入 think tool 讓平均準確率提升了 1.6%(統計顯著,p < .001,d = 1.47)。
和現在的 Adaptive Thinking 怎麼搭
2026 年推薦的設定是 Adaptive Thinking——Claude 自己判斷問題複雜度,決定要不要使用 Extended Thinking,以及用多少。大部分一般 API 應用已經夠了。
如果你在做的是:
- 有 3 個以上工具呼叫、每步依賴前步結果的 agent
- 有複雜業務規則需要遵守的 customer-facing 應用
- 每個錯誤都有真實後果的自動化流程
那可以考慮在 Adaptive Thinking 的基礎上再加 think tool,讓 Claude 在工具呼叫之間有額外的思考機制。兩者不衝突。
加這個工具的成本很低——它不會改變現有工具的行為,不會在 Claude 不需要它的時候被呼叫,也不會干擾其他工作流。唯一的代價是偶爾多幾個 token——如果問題夠複雜,這個代價是值得的。
學完這個設計模式,如果你想繼續深入,下一步是看看怎麼用 system prompt 裡的 domain-specific examples 讓 think 的效果最大化。Anthropic 在報告裡給了航空客服的完整 prompt 範例——那些範例教 Claude 什麼時候思考、思考什麼面向、怎麼把規則列出來交叉驗證,是最直接的參考。
原文來源:The “think” tool: Enabling Claude to stop and think in complex tool use situations - Anthropic Engineering
參考來源:Extended Thinking documentation - Anthropic
參考來源:τ-Bench: A Benchmark for Tool-Agent-User Interaction in Real-World Domains










