为 Claude Fable 5.2 编写提示
Claude Fable 5.2 和 Claude Mythos 5.2 特有的提示模式:effort、过早停止、审批、代码归属、进度更新、子代理、不断累积的谨慎、为早期模型编写的指令、最终报告以及拒绝。
本指南介绍 Claude Fable 5.2 特有的提示模式。有关该模型的能力和 API 变更,请参阅 Claude Fable 5.2 的新功能。有关适用于所有当前 Claude 模型的技巧,请参阅提示最佳实践。
Claude Fable 5.2 在几个方面的行为与早期模型不同。请从与您观察到的情况相符的部分开始:
- 不确定应使用哪个 effort 级别,或简单请求耗时过长:校准 effort
- 一个轮次在工作完成之前就结束了:完成整个任务
- 您在代理工作时逐步审批,或者您的系统提示中有审批规则:审批
- 编码代理重复现有代码而不是将其合并,或者报告附近的问题却不修复:说明代码归谁所有
- 长时间的代理轮次看起来没有任何输出:在长轮次中让用户了解进展
- 代理会话启动的子代理多于任务所需:为子代理设定预期
- 代理请求不需要的审批,或搁置常规工作:防止谨慎不断累积
- 您沿用了为 Claude Fable 5.1 或 Claude Opus 5.5 编写的系统提示、技能或 harness:审查为早期模型编写的指令
- 您的用户会在长任务结束后阅读最终报告或交接内容:让报告易于理解
- 请求返回
stop_reason: "refusal":安全防护拒绝
校准 effort
从 high 开始,这是 Claude API 上的默认值。如果您的用例需要,再上调或下调 effort,并用您自己的评估测试每一次更改。effort(投入程度)级别决定 Claude Fable 5.2 思考的多少、一个轮次耗费的时间以及使用的令牌数量。请将 effort 与提示一同调整,因为该级别还会改变模型的思考方式以及它进行的工具调用次数。
总体而言,各 Claude 模型的 effort 级别排序相同,但每个级别背后的思考量可能因模型而异。因此,请重新进行 effort 扫描测试,而不要沿用您在 Claude Fable 5.1 或 Claude Opus 5.5 上调好的设置。
请根据工作类型选择级别:
low适合快速的来回交互、定义明确的任务以及高吞吐量工作负载,例如快速、智能的子代理。在 Anthropic 的测试中,模型在low下的得分接近 Claude Fable 5.1 在更高 effort 级别下的得分。medium适合交互式编码、聊天和日常知识工作。high适合困难的编码、研究、代理工作以及长时间无人值守的运行。轮次完成所需的时间明显长于medium。xhigh用于您最困难的长时间编码和代理工作,前提是您已测得收益。在 Anthropic 的内部编码评估中,它略微提高了得分,但使用的令牌多得多。max用于测量模型的上限,或用于时间和令牌都无关紧要的少数任务。它最适合开放式问题,例如科学发现和数学。轮次很慢,使用的令牌也比xhigh多得多。
大部分能力提升在 high 时就已具备。从 medium 到 high 的提升提高了 Anthropic 跟踪的大多数编码和知识工作评估的得分。这一提升也会使用更多令牌和时间,因此凡是您的评估显示质量保持不变的地方,请降到 medium。在 high 之上,收益参差不齐,并取决于任务。
选择级别时,请注意三种行为:
- 在较低的 effort 级别下,模型更可能过早停止。对于在
low或medium下进行的代理工作,请添加完成整个任务中的文本。 - 在
high及以上级别,模型几乎在每次回复前都会思考,包括回复问候语。如果简单请求耗时过长或成本过高,请对这些轮次使用较低的 effort 级别。在 Anthropic 的测试中,在medium及以上级别,要求直接回答而不进行斟酌的指令并不能阻止模型思考。 - effort 几乎不会改变模型回复的长度。要改变回复的长度和语气,请使用您的提示。
您也可以在一个工作流中混合使用不同级别。例如,您可以在 medium 下与模型一起规划和迭代,然后为长时间无人值守的部分提高 effort。要在对话中更改级别并保留提示缓存,请使用按消息更改 effort(beta,mid-conversation-output-config-2026-07-01 标头);该部分列出了支持此功能的平台。一次更改会一直有效,直到另一次更改取代它。在不支持按消息设置 effort 的地方,请在下一个请求中设置新的顶层 effort 值,这会使缓存重新开始。
完成整个任务
在长时间、多步骤的任务中,Claude Fable 5.2 有时会在工作完成之前结束一个轮次。轮次结束时会列出剩余事项、提议继续,或者在超时等普通障碍处停止。这种情况在 low 和 medium effort 下更常见。
如果您在代理中看到这类停止,请向系统提示中添加如下文本:
# Finishing work
Please avoid stopping while you still owe work the user asked for. Be persistent and do not stop unless needed.
While status notes are welcome, as is clarifying with the user on open decisions, carry on with work that does not depend on the user's answer without unnecessary stops.
If you notice yourself inviting the user to redirect you or offering to wait, instead proceed on the next part of the task. You may meet ordinary obstacles like errors, timeouts, locked files, empty results or failing tools. Diagnose them first, and when they are not real blockers, work through them with the access you have (wait and retry, fix the request, use another tool or source) rather than stopping unnecessarily.
If someone clearly decided something is a hard blocker, such as a file marked not to be touched, access that was intentionally withheld, or a safety guardrail, leave it alone, say plainly what you found, and look for another safe way to finish the task. Stopping before the task is complete is very rarely merited, as in when the task can't move forward without user input, or where the blocker is deliberate and should not be worked past. This does not override the need for confirmation on risky or destructive actions.这段文本区分了两类障碍。它告诉模型诊断并解决普通障碍,例如错误、超时和失败的工具。它告诉模型不要触碰有意设置的阻碍,例如标记为不得修改的文件,并报告这些阻碍。请将这段文本作为起点,并在根据您的应用进行调整时保留这一区分。
Anthropic 在 medium effort 下重放了一款代理编码产品中录制的会话。使用这段文本的一个版本后,以仍有可完成工作未做而结束的会话数量减少了大约一半。这段文本消除了大部分请求许可或提议继续的结尾,但没有消除列出剩余事项后就停止的结尾。输出令牌增加了约 30%。
由于使用这段文本后模型提问的频率降低,请为有风险或不可逆的操作保留您自己的确认步骤。
审批
当您让模型继续时,请明确说明您希望它做什么,而不是只发送一个简单的"继续"。例如,在您可能会发送"go"或点赞表情的地方,回复"是的,在预发布数据库上运行迁移"。
如果您的系统提示中有审批规则,请准确列出这些规则所涵盖的操作,因为模型会按字面执行它们。在 Anthropic 针对无人审批的模拟任务进行的测试中,有一条规则将"向本对话之外的人发送消息"列为需要审批的步骤之一。在这条规则下,模型搁置了大约一半本应发给同事和其他团队的常规请求。
说明代码归谁所有
Claude Fable 5.2 会密切响应提示中关于其所处理的代码归谁所有的说明。在 Anthropic 针对小型编码任务的测试中,当提示未提及归属,或将代码库描述为他人所有时,模型倾向于在现有结构上添加内容,即使这会重复现有代码。它还倾向于报告附近的问题而不是修复它们。当提示说明代码库归模型自己所有时,模型通常会合并重复代码,并在未被要求的情况下进行相关修复。
如果您希望模型在工作时改进结构,请说明代码归它自己所有:
This codebase is yours: what it's for and how it's built are your call, and you'll keep building on it.在 Anthropic 针对小型编码任务的测试中,使用这句话时,模型在大约一半的尝试中合并了重复代码;不使用时,这一比例不到十分之一。该比例因任务而异。当这句话位于很长的系统提示中时,结果依然成立。无论哪种情况,所请求的功能几乎在每次尝试中都能正常工作。
在同一测试中,使用这句话时模型的输出令牌约为原来的 1.5 倍,并且做了若干无人要求的更改,其中许多是新的测试和文档。除 bug 修复外,它在六到十次尝试中有一次更改了现有功能的行为,在更高 effort 下更为频繁。它的结尾总结会提及较大的更改,但常常遗漏小的更改,因此请审查 diff,而不要只看总结。
如果代码归用户所有,且用户希望尽可能少地改动代码,请不要使用这句归属声明。提示中其他地方限制范围的规则并不能抵消这句归属声明。在 Anthropic 的测试中,即使同一提示前面有"No drive-by refactors, renames or cleanups"(不要顺手重构、重命名或清理),模型仍在大约三分之一的尝试中合并了重复代码。
在长轮次中让用户了解进展
在长时间连续调用工具的过程中,Claude Fable 5.2 有时很少写出面向用户的文本。模型也可能在进行第一次工具调用时不说明它将要做什么。
首先,请检查您的客户端是否能收到模型的更新。在 Claude Fable 5.2 上,模型在工具调用之间写下的更新会以进度更新 thinking 块的形式返回。这些更新说明模型发现了什么以及接下来要做什么。在 thinking.display 的默认值 "omitted" 下,其文本为空。因此,只渲染 text 块的客户端在长时间的代理轮次中可能看起来毫无输出。设置 display: "updates"(beta,thinking-display-updates-2026-08-18 标头)可接收每条更新的简短摘要,设置 "summarized" 则可同时接收更新和推理摘要。然后在工具调用之间渲染非空的 thinking 块。
当用户实时观看工作过程时(例如交互式编码),频繁的更新最为重要。如果您的用户在观看工作过程,但收到的更新仍然太少,请使用以下一个或多个选项。
如果您可以修改 harness,一个有效的做法是让它统计连续多少个工具调用步骤没有给用户任何可读内容:既没有 text 块,也没有带文本的 thinking 块。统计时请将 display 设置为 "updates" 或 "summarized",因为在 "omitted" 下每个 thinking 块都是空的。这一做法适用于支持对话中途系统消息的平台。在连续出现若干个这样的步骤后,让 harness 在最新的工具结果之后,以轮次范围的系统消息(clear_at: "next_user_message",beta,mid-conversation-system-clear-at-2026-08-21 标头)的形式追加以下提醒:
The user hasn't heard from you in a while: say in a few words what you're doing, then continue.在 Anthropic 针对多轮编码任务的测试中,该提醒将最长的无输出时段大致缩短了一半,且令牌和时间没有明显增加。
在后续请求中,请将每条提醒保留在 messages 中。删除或改写其中一条会编辑较早的轮次,从而使其之后的思考块失效。请参阅将每轮提醒作为轮次作用域系统消息发送。
如果还希望在第一次工具调用之前得到一句开场说明、简短的更新以及结尾的回顾,请向系统提示中添加以下文本:
Before you start, say in a line what you're about to do; brief updates while you work help the user follow along. Close with a short recap that stands on its own (what you found, what you did, and what's next), so a reader who only sees the last message has the full picture.在 Anthropic 针对编码任务的测试中,使用这段文本时,模型每次都会在第一次工具调用之前发言。这段文本也使每个任务的输出令牌增加了约 20%。请在有人直接参与其中的场景下使用这段文本。要获得最多的更新,请将其与您的 harness 追加的提醒搭配使用。
如果您无法修改 harness,或者您的平台不支持对话中途系统消息,请向系统提示中添加这句话:
Every few tool calls, give the user a one-line update on where things stand.在 Anthropic 针对工作流自动化任务的测试中,这句话消除了大部分长时间的无输出时段。
即使同时使用提醒以及开场和回顾文本,更新之间仍可能出现连续多次的工具调用。Claude Fable 5.2 在长时间运行的异步任务上表现良好,在这类任务中,用户会回来查看结果,而不是观看每一步。在这种情况下,更新之间的间隔就不那么重要了。
为子代理设定预期
Claude Fable 5.2 将多少工作委派给子代理,取决于您的 harness 和任务。在 Anthropic 针对短任务、使用一个用于启动子代理的最简工具进行的测试中,它很少启动子代理。在一款提示中鼓励委派的代理编码产品中,它则很乐于委派。
如果您的系统提示、技能或代理文件要求模型进行委派,请首先审查这些内容。只有当 Claude Fable 5.2 启动的子代理仍多于任务所需时,才修改启动子代理的工具的描述。如果该工具的描述很简单,且您的提示中没有其他内容要求委派,您可能不需要新的描述。
在新的描述中,说明子代理会给会话增加多少成本,说明何时值得委派、何时不值得,并告诉模型如何向它启动的子代理交代任务。Anthropic 测试的描述做到了这三点,并将成本放在首位。当您的 harness 已经鼓励委派,且子代理占您令牌用量的很大一部分时,这类描述最为有用。
在 Anthropic 针对短任务的测试中,与一个主要列举委派理由的描述相比,使用所测试的描述时模型的委派频率降低了约三分之一。任务成功率相同。
在所测试的描述中,开头关于成本的几句话会抑制委派。如果模型委派过少,请少谈成本。如果它仍然委派过多,请更多地说明子代理在您的 harness 中的成本,并测试这一更改。
Anthropic 还观察到,在一款代理编码产品中,Claude Fable 5.2 在较高的 effort 级别(例如 xhigh 和 max)下会使用子代理来审查自己的工作。在相同任务上,Claude Fable 5.1 不会这样做。早期测试者将 Claude Fable 5.2 用作其他模型的规划者和编排者,取得了良好效果。对于适合并行运行的工作,委派可以加快速度。不过,子代理可能占据会话成本的很大一部分,因此请检查您的 harness 默认在哪个模型上运行子代理。
防止谨慎不断累积
凡是上下文会延续的地方,谨慎性的指令都会不断累积:记忆、笔记、指令文件以及代理之间的消息。Claude Fable 5.2 会严格遵循这些指令,因此它可能会请求不需要的审批或搁置常规工作。少数早期测试者看到了这种行为,主要出现在多个代理协同工作的场景中。早期模型同样会遵循这类指令,但在这里描述的其中一种设置中,只有 Claude Fable 5.2 出现了搁置。
如果您看到这种行为,请清理您的代理所携带的内容:
- 删除不再需要的笔记。 在 Anthropic 针对模拟任务的测试中,来自早期会话的十几条笔记中有一条说永远不要重试。当上下文中有这些笔记、且提示中没有任何允许重试的内容时,在工具繁忙后,模型只在大约十分之四的尝试中进行了重试,而没有这些笔记时几乎每次都会重试。
- 列出不需要审批的步骤。 在 Anthropic 针对模拟任务的测试中,上下文中包含"never"规则、笔记以及审查者的条件。在规则末尾加上一行,将重试列为不需要审批的步骤之一,使重试比例从几乎为零提高到大约一半的尝试。在同一设置中,一条要求更自由地行动的笼统指令没有带来任何变化。只对可安全重复的调用列出重试。
- 检查审查代理附加的内容。 在 Anthropic 针对模拟任务的测试中,有一种设置在提示中有一行将重试列为不需要审批的步骤之一,同时上下文中有审查者的"在第一个错误处停止"。Claude Fable 5.2 在大约三分之一的尝试中没有重试。Claude Fable 5.1 和 Claude Opus 5.5 则进行了重试。
- 将例外写进规则本身。 在 Anthropic 针对模拟任务的测试中,负责人已经批准了某个步骤。在一条"never"规则下,模型大约每十次尝试中有一次执行了该步骤。另加一行说明已批准的步骤已获许可,并没有使这一比例发生太大变化。当规则本身说明应先获得许可时,模型大约每十次尝试中有九次执行了该步骤。请参阅审批。
同时,请为有风险或不可逆的操作保留您自己的确认步骤。
审查为早期模型编写的指令
迁移到 Claude Fable 5.2 时,请审查您的提示。在 Anthropic 的测试中,一些为早期模型编写的指令提高了成本、造成了副作用,或者不再起作用。请重新考虑以下指令:
- 长期有效的委派指令: 将工作推给子代理的内容可能存在于系统提示、技能和代理文件中。迁移前请阅读这些文件。如果在您的测试中,模型启动的子代理多于任务所需,请删除不再需要的内容。请参阅为子代理设定预期。
- 由 harness 写入提示的令牌预算: 有些 harness 会在提示中告诉模型任务可以使用多少令牌以及还剩多少。这个预算的大小会影响 Claude Fable 5.2 的花费。在 Anthropic 针对编码任务、在
high和xhigheffort 下进行的测试中,去掉一个较大的预算降低了成本,且性能相当。请在不带预算的情况下测试您的任务。这一发现针对的是提示中的文本,而不是 API 的任务预算,后者是一项 beta 功能,不在该测试范围内。 - 编辑较早轮次的 harness 代码: Claude Fable 5.2 使用保留思考。如果您的 harness 在请求之间更改系统提示、工具或较早的消息,那么历史记录中更改点之后的思考块就会失效。默认情况下,Messages API 此时会拒绝该请求,而 Message Batches API 会丢弃这些块。要在不出现此错误的情况下缩短历史记录,请使用上下文编辑,或者在摘要之后不保留任何较早轮次的压缩。要让 Messages API 也丢弃这些块,请将
thinking.block_binding.prefix_mismatch_behavior设置为"drop_block"(beta,thinking-binding-controls-2026-08-01标头)。在 Anthropic 的测试中,当每个轮次都丢弃较早的思考时,模型会重新思考并使用更多输出令牌。这是最坏的情况,增加的幅度取决于您的 harness 编辑较早轮次的频率。除压缩和上下文编辑之外,请保持历史记录只追加不修改。这样可以保持较高的缓存命中率,并且不会丢弃任何思考。在依赖"drop_block"之前,请在您自己的任务上测量输出令牌。请参阅API 如何处理无效块和在不编辑前缀的情况下进行更改。 - "将该回答视为已完成"类语句: 为 Claude Opus 5.5 编写提示为聊天系统提示提供了两句话。它们告诉模型将较早的回答视为已完成,并将思考集中在新消息上。在 Anthropic 于
higheffort 下进行的测试中,这两句话减少了 Claude Fable 5.2 在后续问题上的思考,但模型指出自己早先回答中错误的可能性也大大降低。如果您希望模型持续重新审视其早先的回答,请不要使用这些语句。在其他场景中,采用这些语句之前,请测试模型是否仍会指出自己的错误。 - 要求少思考的指令: Claude Fable 5.1 通常会遵循诸如"直接回答,不要斟酌"之类的语句。在 Anthropic 的测试中,在
medium及以上级别,这类语句并不能阻止 Claude Fable 5.2 思考。请删除这些语句并降低 effort 级别,如校准 effort中所述。 - 写作风格规则: Claude Fable 5.2 会严格遵循风格规则,因此诸如"每句一条指令,不超过 20 个词"之类的硬性限制可能会使其文字显得生硬断续。在添加让报告易于理解中的文本之前,请删除不再需要的规则。
- 不断累积的规则、笔记和记忆: 记忆文件、笔记和指令文件会随着时间积累各种谨慎提示,其中一些可能是模型自己写的。迁移前,请删除理由已不再成立的谨慎提示,并改写绝对化的规则,使其说明适用范围和理由。如果某个系统已经陷入停滞,请考虑在精简其记忆和笔记后重新启动,并保留原件的副本。请参阅防止谨慎不断累积。
让报告易于理解
在长时间的代理工作之后,阅读 Claude Fable 5.2 最终报告的人通常没有看到其背后的工具调用或文件。报告需要能够独立成文、自明其意。
如果您要求 Claude Fable 5.2 撰写最终报告或交接内容,请向系统提示中添加以下文本,并根据您的读者和产品进行调整:
# Communicating clearly
Write for an intelligent but low-context reader. The person reading has not seen your tool calls, your reasoning or the files you opened, and may be switching in from other work. Messages should generally be self-contained: the reader should understand what you mean without having to dig for other context. Put the key points in the first few sentences. Practice progressive disclosure in your sentence order, and do not use undefined references and ideas in line 1 that won't make sense until the reader reaches line 12.
Use plain words, and write in clear, understandable full sentences. Do not use a term or abbreviation that you made up during the work. Say what the thing is in a way any reader would understand. Write mostly in the style of ASD-STE100 Simplified Technical English: short sentences, one idea per sentence, active voice, and consistently using the same word for the same thing. Use a paragraph of flowing prose where ideas connect, and keep bullets for lists of separate items. Leave out unnecessary details unless the reader asks and practice concision, but do ensure that your messages have the key context. Aim to make your user-facing text as human-readable and clear as possible.在 Anthropic 针对代理任务的测试中,这段文本使最终报告不那么密集,分号也更少。在工作流自动化任务中,它还使句子变得更短。您也可以添加有关长度的指令,或要求模型包含特定细节。
安全防护拒绝
Claude Fable 5.2 运行的安全分类器可能会拒绝请求。被拒绝的请求会返回 stop_reason: "refusal",并由 stop_details.category 指明拒绝类别:
cyber:该请求可能促成网络危害,例如恶意软件或漏洞利用开发。bio:该请求可能促成生物危害,例如危险的实验室方法。frontier_llm:该请求可能有助于开发与之竞争的 AI 模型。reasoning_extraction:该请求要求模型在回复文本中重现其内部推理。general_harms:该请求属于其他使用政策领域。
良性的网络安全和生命科学工作也可能触发 cyber 和 bio 分类器。如果它们阻碍了您组织的正当工作,请参阅 Anthropic 的 Cyber Verification Program 和生命科学验证计划。Claude Mythos 5.2 提供与 Claude Fable 5.2 相同的能力,但仅面向通过这些计划验证的组织。
如果您的提示、技能或工具描述要求模型在回复中写出其推理,请删除这些指令。要查看模型的推理过程,请设置 display: "summarized" 并阅读思考块。请参阅将推理保留在思考块中。
要在另一个模型上重试被拒绝的请求,请参阅拒绝、回退和计费。
从哪里开始
迁移时,请按顺序完成以下步骤:
- 将
effort显式设置为high,然后也在medium和xhigh下运行您的评估。 - 阅读您沿用的系统提示、技能、代理文件、记忆文件、笔记和 harness 文本。删除或测试审查为早期模型编写的指令中列出的指令。
- 运行您最长的代理任务。记录模型在哪些地方过早停止、请求不需要的审批、不再输出、委派超出任务所需,或者在您希望重构的地方只是在现有代码上添加内容。
- 针对您观察到的每种行为,逐一应用相应的指导,并在您自己的任务上测量其效果和令牌成本。
此页面对您有帮助吗?