Claude Fable 5.1发布后,不少开发者发现一个奇怪的现象:答案质量没变,但模型的行为变了。工具调用次数少了,进度更新频率变了,甚至有时候该干活的时候停下来问你"要不要继续"。
Anthropic官方表示,现有的Fable 5提示词在5.1上"应该"能正常工作。这个"应该"指的是回答内容,但模型周围的行为——每轮调用几次工具、多久更新一次进度、文字密度、格式数量、是否重写文件、任务明明很明确却停下来请求许可——这些都可能和之前不一样。
![]()
好消息是,每个差异都有对应的解决方案。官方发布了一份针对Fable 5.1的提示词调优指南,核心思路不是改措辞,而是先调一个关键参数。
先调"努力程度",别急着改提示词
在Fable 5.1里,有一个叫"effort level"(努力程度)的变量,它是平衡智能、延迟和成本的核心旋钮。官方建议:先别动提示词,先调这个。
具体操作分三步:
- 从默认的high级别开始
- 拿另外四个级别跑你的真实评估集,对比效果
- 即使你之前在Fable 5上测过提示词,也要重新测——因为同样的级别名称,在两个模型上代表的思考量并不一样
Anthropic给出的参考数据:medium级别接近Fable 5的效果但成本更低;low级别在每任务成本上可能对标Opus和Sonnet,部分测试分数反而更高;而相比Fable 5提升最明显的,是xhigh和max两个级别。
还有个实用技巧:对话中途可以切换努力级别,不用重置缓存。方法是发一条空的系统消息,带上output_config参数,再加一个beta头(mid-conversation-output-config-2026-07-01)。API文档里有具体的请求格式。
指令放哪儿,比怎么措辞更重要
Fable 5.1的"保存的思考块"(saved thought blocks)只在创建它的那轮对话里有效。如果你删掉上一轮的提醒,或者修改下一条请求记录,会引发两个后果:提示词缓存要重新加载;2026年8月31日之后创建的账户,后续的思考块会失效。
每轮指令应该放在哪里?官方给了两种方案。
如果你能用beta版本(mid-conversation-system-clear-at-2026-08-21),就在工具结果消息后面加一条本轮专属的系统消息,同时保留之前所有版本。消息格式长这样:
{"role": "system", "clear_at": "next_user_message", "content": "..."}
当下一条用户消息到达时,API会自动清掉旧版本,模型只读最新一条。被清掉的版本不占token额度。
如果不用beta版,就把指令放在用户消息里的tool_result块后面,同样保留旧版本,但不要删除或重写任何已发送的内容。
至于会话级别的指令,放在系统提示词里或者第一轮用户消息里都行。Anthropic特别提到一个反直觉的结论:放在第一轮用户消息里的风格指令,比放在系统提示词里更有效。
Agent循环里,工具调用从"批量"变"单发"
这是最容易被忽略的行为变化。当用户一次性要多个独立的东西时,Fable 5.1会并行调用工具。但在编程循环和计算机使用场景里,后续的独立读取只是隐含的,模型可能每轮只调用一个工具——而Fable 5会把多个调用打包成一批。
最终答案没变,但每多一轮,就意味着更多token、一次往返延迟、更长的实际耗时。
官方建议:先测量再动手。统计一下助手角色里包含多个工具调用的比例。只有当这个比例确实下降了,才需要加一条提示词,内容是:"首先,在心里默默说出你下一步需要什么;然后,只请求那些不依赖上一步结果的条目。"
这条提示词的逻辑是:让模型先内部规划,再决定哪些调用可以并行,避免每轮只做一件事的低效循环。
小结
Fable 5.1的调优思路和传统提示词工程不太一样:先调effort level,再管指令位置,最后才考虑措辞。如果你发现Agent行为变了,别急着重写提示词——先看看是不是默认参数没跟上新模型的脾气。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.