LLM Extended Thinking:让模型"多想一会儿"的工程实践
目录
Extended Thinking 是什么
允许 LLM 在回答前动态分配更多推理资源。
# 普通推理
response = llm.generate(prompt)
# Extended Thinking
response = llm.generate(
prompt,
thinking_budget=8000 # 允许最多想 8000 个 token
)thinking budget 越大,模型可以探索更多推理路径。
什么场景值得开启
值得开的场景:
✅ 复杂算法设计
✅ 多步推理任务
✅ Bug 根因分析
✅ 架构设计评审
✅ 数学证明
不值得开的场景:
❌ 简单翻译、格式化
❌ 代码补全
❌ 快速问答
❌ 实时 chat成本与质量权衡
# thinking_budget 越大,成本越高
| budget | 适合任务 | 成本倍数 |
|--------|----------|----------|
| 0 (关闭) | 简单任务 | 1x |
| 1000 | 中等复杂 | 1.5x |
| 4000 | 复杂推理 | 2.5x |
| 8000 | 极复杂 | 4x |
# 实测:thinking_budget 从 0 到 4000
# 复杂任务准确率从 45% → 72%
# 简单任务准确率:几乎无变化(浪费钱)动态 thinking budget
# 根据任务复杂度自动选择 budget
def estimate_thinking_budget(task):
complexity = llm.classify(task) # simple/medium/hard
if complexity == "simple":
return 0
elif complexity == "medium":
return 1000
else: # hard
return 4000
# 使用
response = llm.generate(
prompt,
thinking_budget=estimate_thinking_budget(task)
)结论
Extended Thinking 是 2026 年的标配能力。用对了,复杂任务成功率提升 30-50%;用错了,token 费用翻倍但没效果。
先判断任务复杂度,再决定 thinking budget。