ESC
AI 1 分钟阅读

Opus 5.5 干一半就开溜?Anthropic 揭秘:你的程序替它打了下班卡

Anthropic 揭示 Opus 5.5 存在任务中途提前停工问题,官方建议预设完成标准、用小模型校验并自动续跑,卡死任务及时转人工。从 Opus 5 迁移到 5.5 有四处破坏性 API 改动,涉及 thinking 配置、tool_choice、思考块回放与 computer use 工具版本,不改会直接报 400 错误。进度文字移入思考块、effort 档位 token 消耗上升等差异,开

来源:IT之家

列出一大串需要你拍板的决策项,但实际上按它自己的说法,这些决策根本不影响它继续干剩下的活。

有点讽刺的是,在 Opus 5.5 的官方宣传里,「沟通更主动、总结更清楚」恰恰是它的核心卖点。

回合结束时,如果清单上还有没做完的任务,模型也没解释被什么卡住了,你的应用就得自动发条消息,点名让它接着干。

官方给出的续跑示例:「你的任务清单还有未完成项:迁移剩下两个端点,并更新它们的测试。继续做。如果哪项被卡住,说明卡在哪里。」

事先定好完成的标准。每次回合结束,甩给一个更小的模型去对照检查。没达标?把没达标的原因当成下一条消息再塞给它,让它返工。

同一个任务如果自动续跑两三次还卡在原地,必须强制停下来交给人复查。真卡死的任务,千万别让它把你的 API 额度空转烧光。

既要明说绝对不想要上述四种停法,也要说清楚什么时候才准停,比如离了用户真推不下去,或者碰到了被刻意保护的核心资源。

从 Opus 5 切换到 Opus 5.5,有四处 API 改动。原来给 Opus 5 写的请求,不改就发给新模型,会被直接拒绝,返回 400 错误。

如果你把 thinking 设为 disabled,或者手工指定了 budget_tokens,系统会直接拒绝请求。要么别传 thinking 字段,要么设为 adaptive,让 effort 参数来控制思考深度。

把 tool_choice 设为 any 或者指定某一个 tool,都会报 400。官方建议用 auto,配合严格工具调用或结构化输出,再在提示词里说清什么时候用哪个工具。

2026 年 8 月 31 日之后创建的账户,中途改了系统提示词、工具或历史消息,再回放旧的 thinking 块,默认会直接报错。只追加、不改写的用法不受影响。

在 Claude API 和 Google Cloud 上,要换成 computer_toolset_20260801。Amazon Bedrock 上,旧的 computer_20251124 照样能用。

在 Opus 5 上,模型在两次工具调用之间写的进度文字,是普通的正文(text 块)。

到了 Opus 5.5,这些文字被挪进了思考块(thinking 块),而思考块默认不显示内容(display 为 omitted),返回时是空的。

如果你的界面只显示正文,长任务跑起来就是一片安静。请求一个都没失败,用户却以为它卡死了。

解法是把 display 设为 updates(beta),只拿进度摘要;或者设为 summarized,进度和推理摘要一起返回。

max_tokens 管的是思考加正文的总量。过去关掉思考时定的上限,现在可能不够用,回答写到一半就断了。

一是读结果时要分清类型。模型返回的内容里,思考和正文是分开的,别想当然地把第一段当成回答。

二是来回调用工具时,模型的思考记录要原封不动地传回去。删掉一段、改几个字、调换一下顺序,都会被拒。

官方说,现在开 medium 档,就能追平甚至超越以前 Opus 5 的 high 档,如果是 low 档处理简单任务,成本更是低得惊人。

听着像白捡的便宜,但官方立刻补了一句:在同一个档位下,Opus 5.5 每回合的思考量比 Opus 5 大得多,尤其是高档位。

也就是说,如果你把旧项目的 high 档原封不动搬过来,不仅回合变长,输出的 token 数也会狂飙。

一个接地气的建议是:从 medium 起步,用你自己的数据跑跑看,确实需要提智商的地方再往上调。

如果想让它少琢磨点,直接降档,这比你在提示词里苦口婆心地喊「别想太多」要管用得多。

如果你不给明确的设计方向,让模型自己发挥,它多半会搞出那种千篇一律的 AI 风界面。

这时候你如果在提示词里写「请避免通用的 AI 感」,它只会从一套 AI 模板换到另一套 AI 模板。