一段代码审查日志。开发者打开 Claude Code 的 session 文件,打算复盘模型在处理一个复杂重构时的完整推理链——走了哪几条路径、排除了哪些错误方案、最终如何收敛到正确答案。
thinking block 里没有任何推理文本。只有一段 600 字符的加密签名。
这不是 Bug。这是产品设计。
当 Anthropic 在 2025 年 2 月首次推出 Claude Code 和 extended thinking 时,它的宣传语让开发者充满期待:"模型不再只是回答问题,它开始展示自己的思考过程。"如果你真的去翻阅 Anthropic 的 API 文档,翻到 "summarized thinking" 那一节,会读到一个字字珠玑的表述——"Messages API for Claude 4 models returns a summary of Claude's full thinking process"——一瞬间,一个技术功能变成了一面镜子:你从里面看到的,不是模型的内心,而是产品经理为你挑选好的那部分。
thinking block 里到底有什么?
当一个开发者调用 Claude 4 模型启用 extended thinking,API 返回的响应包含两类 content block:thinking 和 text。前者展示推理过程,后者输出最终答案。
这个设计始于 Anthropic 2025 年 2 月发布 extended thinking 时奠定的基调。在 Claude 3.7 Sonnet 时代,thinking block 传达的是相对完整的思维链条——开发者可以逐段查看模型如何拆解问题、考虑哪些路径、最终走向哪个方向。
Claude 4 系列(Sonnet 4.6 / Opus 4.6)上线后,情况变了。
默认状态下,thinking block 不再返回原始推理 token 流,而是返回一段经过自动摘要算法压缩后的精简版本。官方文档白纸黑字地写着:"The API returns a summary of the full thinking process, not the raw thinking tokens."
更极端的选项是 display: "omitted"。在这种模式下,thinking block 不包含任何人类可读的推理内容——只有一段加密的 signature 用于多轮对话的连续性维护。开发者看到的 thinking 字段是空的。AWS Bedrock 的文档提供了一句更直白的补充:"The billed output token count will not match the visible token count in the response. You are billed for the full thinking process, not the summary you see."
你付了全款。拿到了双份牛肉的账单。但咬下去的那一口,是压缩饼干。
Reddit 上的 Claude Code 用户社区里,一位工程师的吐槽被顶到了前排:"Claude absolutely has extended thinking. You can enable it via the API, set a budget_tokens parameter, and watch the model reason step-by-step on Claude.ai. But in Claude Code, the tool literally designed for developers, it's all redacted by default. You're literally paying for reasoning you can't learn from."
这段话精准地戳到了痛点——这件产品的目标用户是开发者,而开发者最需要的,恰恰就是那个"被摘要掉"的部分。
三层拆解"摘要"的产品逻辑
第一重:技术维度——成本与噪音的博弈
站在技术角度看,摘要不是无缘无故的。
复杂问题的原始推理链可以轻松跑到数万乃至十余万 token。这些 token 中充满了"中间过程噪音"——反复重述问题、探索死胡同、回退修正、分支尝试。这些迭代对模型自身的推理过程是必要的,但对阅读者来说是噪音。Anthropic 的选择是:将噪音滤除、保留关键推理链路,压缩为用户可以快速消化的一段摘要。
Cobus Greyling 在 2026 年 4 月的一篇技术分析中总结道:"Raw thinking on complex problems can run to tens of thousands of tokens. Most of that is noise… restating the problem, considering dead ends, circling back. The summary gives you the signal."
从工程角度看,这很合理。但问题在于——谁来决定什么是"噪音",什么是"信号"?
第二重:商业维度——谁被"安全"保护了?
Anthropic 文档中的一个措辞耐人寻味:"Summarized thinking provides the full intelligence benefits of extended thinking, while preventing misuse。"
"防止滥用"这四个字,暴露了摘要的底层动机。
原始推理链包含了模型"怎么想到这个答案"的完整路径,其中包括:对安全边界的试探、对违规方向的短暂考虑、未经过滤的候选思路。如果这些内容以原始形态暴露给终端用户,会产生两类风险:一是安全机制的可攻击面扩大——用户看到模型如何被约束,就能更有针对性地绕过它;二是产品声誉风险——用户看到模型"想到过"不当内容,即使最终从未输出。
因此,摘要层不仅是技术优化,更是一道安全围栏。而且这道围栏被刻意设计成不可绕过——Anthropic 文档明确写着:"In rare cases where you need access to full thinking output for Claude 4 models, contact Anthropic sales。"默认体验是受控的,完整访问是企业付费墙后的特权。
对 Anthropic 而言,这是理性的商业选择。对开发者而言,这意味着默认工具链中镶嵌了一层信息衰减层——而你可能根本没意识到它的存在。
第三重:行业维度——AI 透明度正在倒退?
将视野拉宽,一个更令人不安的行业趋势浮出水面。
2025 年初,AI 编码工具领域掀起了一波"透明化"浪潮。Aider、Cline 等开源替代品主打的就是"完整可见的推理过程"——开发者可以看着模型一步步拆解需求、调用工具、修正错误。这种透明性不仅是教育价值,它直接关系到信任。
一年之后,风向变了。
头部产品不约而同地向"隐藏推理"方向移动。Claude Code 默认将 thinking 压缩为摘要甚至空签名,理由是延迟优化和用户体验优化。但用户仍在为完整推理支付费用。与此同时,竞争对手也在跟随同一策略——Reddit 用户尖锐指出:"We've got two of the biggest AI coding tools both quietly moving toward hiding their reasoning from developers for UX and latency reasons. Both charging you for the thinking anyway."
一个 AI 编码工具,如果连自己怎么想的都不愿意让开发者看全,它真的配得上"辅助开发者"这个定位吗?
当日志变成了叙事
这从来不是关于 Claude 能不能推理的问题。它能。在 SWE-bench Verified 上,Claude 3.7 Sonnet 以 70.3% 的成绩碾压竞品;在 MATH 500 上达到 96.2%;在 GPQA 物理子集上做到 96.5%。这些成绩不需要质疑。
问题是:一个推理的展示版本,到底在声称什么?
当企业将 AI Agent 嵌入生产流水线,日志就是证据。安全团队需要知道模型是否接触了敏感数据。审计人员需要验证模型行为是否符合政策。合规审查要求的是完整的决策轨迹,不是一个经过润色的叙事。
而摘要的本质,恰恰是好故事。它把原本凌乱、充斥着试探和回退的思维过程,整理成了一条干净漂亮的逻辑线。但一条干净的逻辑线,不等于一条完整的证据链——就像一本人物传记不是一个人的全部人生。
对于日常聊天或简单代码补全,这种区别或许不重要。但对于依赖 AI Agent 完成关键任务的工程团队来说,这是一个危险的治理盲点。
Anthropic 的设计选择是理性的、可解释的。但从开发者信任的维度来看,它传递了一个微妙的信号:你不需要知道全部。在一个越来越多决策权正在被让渡给 AI 的世界里,这个信号的代价,可能比任何人现在意识到的都要昂贵。
模型在推理。你在付费。你看到的内容已经过编译。你看到的不是模型的大脑。你看到的是它愿意给你看的那部分。






快报