Claude 扩展思考:什么时候这些 token 花得值
12 个 Claude id 里有 11 个支持 thinking。思考预算花的是生成 token,上限就是模型的输出上限——所以真正决定值不值的是输出单价。
哪些 id 支持,预算又受什么约束
目录里 12 个 Claude id,有 11 个在 capabilities 里带 thinking。例外是 stable-claude-haiku-4-5,它只有 text 和 tools——要它"想一想",它没有这个档位可退。
思考预算买的是生成 token,所以它受和答案同一条上限约束:100 万上下文那批(claude-opus-5、claude-opus-4-8、claude-opus-4-6、claude-sonnet-5、各自的 stable-* 版本,以及两个 Fable)是 12.8 万 token;claude-sonnet-4-6 和 stable-claude-sonnet-4-6 是 6.4 万。预算超过上限会被压回上限。
另外,预算还得给答案留位置。budget_tokens 顶到 max_tokens 附近,模型就没有余量写回复了。所以正确的做法是把 max_tokens 一起抬上去,而不是拿现有额度去换推理。
curl -sS https://token-share.app/v1/messages \
-H "x-api-key: $TOKEN_SHARE_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-sonnet-5",
"max_tokens": 8000,
"thinking": {"type": "enabled", "budget_tokens": 4000},
"messages": [{"role": "user", "content": "Two services deadlock under load. Here are both stack traces."}]
}'这些 token 值多少钱
思考消耗的是生成 token,因此按输出价计。claude-sonnet-5 输出官方 15 美元每百万、0.1 倍率,实付 1.50 美元;claude-opus-5 官方 25 美元,实付 2.50 美元;Fable 那两条通道是官方 50 美元、0.4 倍率,实付 20.00 美元每百万。
换成单次调用看:Sonnet 5 上 4000 token 的思考预算约 0.006 美元;同样的预算放在 stable-claude-fable-5-1 上是 0.08 美元——因为那里的输出单价是 Sonnet 5 的 13.3 倍。在 Opus 5 上花 3.2 万 token 思考,一次约 0.08 美元。
单看一次请求,这些都是小钱。但如果是一个千步 agent、每一步都要想一遍,它就是账单本身。所以这件事该按任务类型逐个决定,而不是一刀切全局打开。
什么时候它改变答案,什么时候不
思考发生在答案定稿之前,所以它只在一种情况下有用:初稿本来会错,而多想一会儿能把这个错捉回来。依赖链长的问题正好是这种形状——第二步走偏,从输出上看不出来,但到第九步就是错的。
没有链条可走偏的活儿则不适合:改格式、抽字段、分类、翻译、在已给材料里查一个值——答案由输入唯一决定,多想一轮只是把同一个结果用更多输出 token 说一遍。
判断依据是看你的失败属于哪一类:是"答错了",还是"路子就不对"。字段读错的模型,想完还是会读错;策略选错、然后一丝不苟地执行到底的模型,才是思考要救的那一种。
与其猜,不如量
在同一个 id 上把评测集跑三遍:关闭思考、小预算、大预算,其余变量全部固定。你会得到一条"准确率对输出 token"的曲线,而这条曲线是贴着你自己任务长出来的,任何关于这个功能的泛泛说法都替代不了。
从曲线上读两件事:一是准确率从哪里开始不再上升——那就是你的预算,通常远低于上限;二是这段提升,按你所用 id 的输出单价折算,值不值那些 token。
然后别忘了横向那一比。claude-sonnet-5 配大预算,和 claude-opus-5 配小预算,总成本可能落在同一个量级——Opus 的输出单价是 Sonnet 的 1.67 倍。这两条路谁更适合你的活儿是个实证问题,同样这三轮就能给出答案。