Claude Opus 4.7 引入了自适应思考和 1M 上下文,要求开发者从细致引导转向“高级工程师委派”模式。文章深入分析了五个努力级别、更具字面意义的指令遵循以及上下文腐烂管理,并提供了具体的迁移代码与提示词优化策略,以帮助用户高效平衡推理成本与输出质量。

新的 xhigh effort level、adaptive thinking 和 1M 上下文窗口,如何改变你与 Claude 最强模型的提示方式、委派方式和会话管理方式。
你刚刚升级到了 Claude Opus 4.7。你的 prompts 还是一样,harness 也还是一样。
但你的 token 账单翻倍了,代码审查的 recall 下降了。发生了什么?
Opus 4.7 不是 4.6 的即插即用替代品。它的思考方式不同,更严格地遵循指令,生成的 subagents 更少,并且在每次用户轮次之后都会更积极地进行推理。
之前有效的模式现在会消耗你的 token,却没有带来成比例的质量提升。修复并不复杂,但需要你理解发生了什么,并相应调整你的工作流。
我们来看看。
Opus 4.7 最大的变化,是你如何界定自己的角色。把 Claude 当成一个你可以委派任务的能干工程师,而不是一个需要你逐行指导的结对编程伙伴。
交互式会话中的每个用户轮次都会触发推理开销。对于 4.6,你可以把指令分散到多个轮次中,而不会有太大代价。
对于 4.7,这种模式会推高 token 使用,因为模型会在你发送的每条消息之后进行深度推理。无论这一轮是否值得,它都会为每一轮推理付费。
下面三个具体改变可以解决这个问题。
你也可以让 Claude 在任务完成时播放声音。它会创建自己的基于 hook 的通知,这样你就不必一直盯着它工作。

Opus 4.7 引入了 xhigh,这是位于 high 和 max 之间的新 effort level。现在它是 Claude Code 的默认值。
如果你是现有用户,并且从未手动设置 effort level,你已经被自动升级到 xhigh。
下面是五个层级的划分方式。
一个实用建议:你可以在任务中途切换 effort。复杂设计阶段从 xhigh 开始,简单实现阶段降到 high,而在棘手的调试会话中提升到 max。这样你就能对 token 支出进行更精细的控制。
Opus 4.7 对 effort level 的遵守比 4.6 更严格,所以如果某个在 low 或 medium 下的任务感觉思考不足,不要绕着提示词打转,而是直接提高 effort。

如果你在 Opus 4.6 上使用带有 budget_tokens 的 Extended Thinking,那么这已经不再适用。Opus 4.7 改用了 adaptive thinking。
这个差异很重要。使用固定预算时,你会预先分配一组固定数量的 thinking tokens,模型会不管需不需要都使用它们。
使用 adaptive thinking 时,模型会在每一步决定何时以及思考多少。
简单查询会得到快速回复,复杂推理步骤会进行深度思考,而那些不需要思考的步骤则会跳过。
在长时间的 agentic 运行中,与统一的 thinking budget 相比,这会带来更快的响应和更低的 token 使用量。
迁移很直接:
## 之前(Opus 4.6 使用 extended thinking)
client.messages.create(
model="claude-opus-4-6",
max_tokens=64000,
thinking={"type": "enabled", "budget_tokens": 32000},
messages=[{"role": "user", "content": "..."}],
)
## 之后(Opus 4.7 使用 adaptive thinking)
client.messages.create(
model="claude-opus-4-7",
max_tokens=64000,
thinking={"type": "adaptive"},
output_config={"effort": "xhigh"},
messages=[{"role": "user", "content": "..."}],
)
你仍然可以通过 prompts 引导思考速度。若想让它多思考,可以尝试类似 “Think carefully and step-by-step before responding; this problem is harder than it looks.” 这样的提示。
若想让它少思考,可以使用 “Prioritize responding quickly rather than thinking deeply. When in doubt, respond directly.”
如果你在 max 或 xhigh effort 下运行,请设置较大的 max output token budget(先从 64k 开始),这样模型才有足够空间在 subagents 和 tool calls 之间进行思考和行动。

Opus 4.7 带来了一些默认行为变化,如果你已经针对 4.6 调整过 prompts 或 harnesses,这些变化会让你措手不及。我们来逐项看看。
Opus 4.7 会根据任务复杂度校准 response length。简单查询得到简短答案,开放式分析则得到更长答案。
如果你的用例依赖特定长度或风格,请明确说明。用你想要的语气的正面示例,比“不要这样做”之类的负面指令更有效。
模型调用 tools 的频率更低,但会进行更多推理。很多情况下这会产生更好的结果。
但如果你需要更激进的 tool 使用来进行搜索或文件读取,请明确说明何时以及为什么应该使用 tools。把 effort 提高到 high 或 xhigh 也会增加 tool 使用。
Opus 4.7 在委派给 subagents 方面更为审慎。如果你的工作流受益于并行展开,请清楚地写出来:
“不要为你能在单次响应中直接完成的工作 spawn subagent。当需要跨多个条目展开或读取多个文件时,在同一轮中 spawn 多个 subagents。”
这是最可能破坏现有设置的变化。Opus 4.7 对 prompts 的理解更字面化,尤其是在较低 effort level 下。
它不会悄悄把某一项的指令泛化到另一项,也不会推断你没有明确提出的请求。好处是更精确、减少来回折腾。
坏处是,如果你希望某条指令广泛适用,必须明确说明范围。例如:“将这种格式应用到每个部分,而不只是第一部分。”
Opus 4.7 更直接、更有主见,较少使用偏验证式的措辞,也比 4.6 更少 emoji,风格更温和的部分也更少。如果你的产品依赖特定语气,请针对新的基线重新评估你的 style prompts。
Opus 4.7 在发现 bug 方面明显更强。根据 Anthropic 基于真实 PR 的最难 bug-finding eval,它的 recall 高了 11 个百分点,precision 也更高。
但问题在这里。如果你的 review harness 写的是“只报告高严重性问题”或“保持保守”,Opus 4.7 会比 4.6 更忠实地执行这一指令。
它可能会像以前一样彻底检查代码,识别出 bug,然后却不报告那些它判断低于你设定门槛的发现。precision 上升了,但测得的 recall 下降了。
解决方法是把“发现”与“过滤”分开:
报告你发现的每一个问题,包括你不太确定或认为严重性较低的那些。在这个阶段不要按重要性或置信度过滤。你在这里的目标是覆盖率:先暴露一个之后可能被过滤掉的发现,也比悄悄漏掉一个真实 bug 更好。对于每个发现,给出你的置信度和一个估计的严重性,以便下游过滤器进行排序。
如果你需要单次通过的过滤,请明确说明门槛,而不要使用模糊表述。例如:“报告任何可能导致错误行为、测试失败或误导性结果的 bug;只省略纯粹的风格或命名偏好问题。”
Claude Code 现在拥有 100 万 token 的上下文窗口。这足以在单个会话中从零构建一个全栈应用。
但更多上下文并不总意味着更好的结果。context rot 是真实存在的。
随着上下文增长,注意力会分散到更多 token 上。较旧、无关的内容会开始干扰当前任务,而当上下文窗口被填满时,模型会变得不那么聪明。
中间丢失效应:

每一轮你有五种选择。
/compact focus on the auth refactor, drop the test debugging 的指令来引导它。
这个思维测试很简单:你之后还会需要 tool 输出,还是只需要结论?如果只需要结论,就使用 subagent。
当你接近上下文限制时,auto-compaction 会触发。问题在于,这恰恰是模型因为 context rot 而最不聪明的时候。
一个常见失败是这样的:在一段漫长的调试会话之后,autocompact 触发并总结了调查过程。你的下一条消息引用了摘要中被丢掉的内容。
有了一百万上下文,你就有更多时间主动进行 compact,并附上对重要内容的描述。不要等到 auto-compaction 自动启动。
有几种基础 prompting 技术在 Opus 4.7 上仍然有效,你不应该因为模型更聪明了就放弃它们。
<instructions>、<context>、<input>),以减少误解。<example> tags 中的示例,覆盖边界情况,并保持足够多样,以免模型学到非预期模式。Opus 4.7 默认调用 tools 的频率更低。若要增加 tool 使用,可提高 effort 或添加明确指导:“在有助于你理解问题时使用 [tool]。”
并行 tool 调用是一个值得利用的强项。模型会并行运行多个搜索、一次读取多个文件,并并行执行 bash commands。
你可以通过 XML tags 中的明确指导,将并行执行提升到接近 100%。
在较高 effort level 下,Opus 4.7 可能会思考得非常多,从而抬高 thinking tokens。添加下面这条 prompt 以保持聚焦:
“当你决定如何处理一个问题时,选择一个方法并坚持下去。除非你遇到直接与你推理相矛盾的新信息,否则不要反复推翻决定。”
对于长周期的 agentic 工作,Opus 4.7 在跨扩展会话的状态跟踪方面表现出色。几个模式可以让它更有效。
多上下文窗口工作流允许你在第一个上下文窗口中搭建框架(编写测试、创建 setup scripts),然后在后续窗口中围绕 todo list 迭代。让模型以结构化格式创建测试,比如 tests.json,以及像 init.sh 这样的 setup scripts,这样新的上下文窗口就能接上上一个窗口的工作。
状态管理在数据格式与内容匹配时效果最好。对测试结果和任务状态等结构化数据使用 JSON,对进度记录使用自由文本,对需要恢复的检查点使用 git。
平衡自主性与安全性需要一些指导。没有这些指导时,Opus 4.7 可能会采取难以逆转的动作,比如删除文件或强制 push。
添加一个可逆性提示来约束它:
“我们鼓励你采取本地的、可逆的动作,比如编辑文件或运行测试,但对于那些难以逆转或会影响共享系统的动作,在继续之前请先询问用户。”
明确减少过度工程化也很值得做。Opus 4.7 可能会创建额外文件、添加不必要的抽象,或者构建并未被要求的灵活性。
加入类似这样的指导:“只进行被直接要求或明显必要的更改。修复 bug 不需要顺带清理周边代码。”
减少幻觉的关键在于强制在回答前进行调查:“不要对你没有打开过的代码进行猜测。如果用户提到了某个具体文件,你必须在回答前阅读该文件。”

如果你要从 Opus 4.6 迁移到 4.7,以下内容需要更新。
thinking: {type: "enabled", budget_tokens: N} 替换为 thinking: {type: "adaptive"} 来切换到 adaptive thinking。Computer use 可在最高 2576px 或 3.75MP 的新上限范围内跨分辨率工作。发送 1080p 图像在性能和成本之间提供了最佳平衡。
对于对成本敏感的工作负载,720p 或 1366x768 是很强的低成本选项。
Opus 4.7 奖励前置式说明,惩罚增量式、多轮次提示。这个模型比 4.6 更强大、更字面化,也更自主。
给它一个定义明确的任务,将 effort 设为 xhigh,然后让它运行。最能充分发挥这个模型价值的开发者,是那些不再逐步指导它,而是开始像委派给一位高级工程师那样去委派任务的人。
今天就试试:拿下一个编码任务,写一条包含意图、约束和验收标准的详细 prompt,然后在 xhigh 下用一轮发出去。把结果和 token 使用量与你原来的多轮模式比较一下。
差异会不言自明。
References:
- 原文链接: x.com/akshay_pachaar/sta...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!