开始之前
本指南假设您已经决定使用扩展思考模式,并已查看了我们关于如何开始使用扩展思考模型的基本步骤以及我们的扩展思考实施指南。扩展思考的技术考虑
- 思考令牌的最小预算为1024个令牌。我们建议您从最小思考预算开始,然后根据您的需求和任务复杂性逐步增加调整。
- 对于最佳思考预算超过32K的工作负载,我们建议您使用批处理以避免网络问题。推动模型思考超过32K令牌的请求会导致长时间运行的请求,可能会遇到系统超时和开放连接限制。
- 扩展思考在英语中表现最佳,尽管最终输出可以是Claude支持的任何语言。
- 如果您需要低于最小预算的思考,我们建议使用标准模式,关闭思考,使用带有XML标签(如
<thinking>)的传统思维链提示。请参阅思维链提示。
扩展思考的提示技术
首先使用一般指令,然后用更多分步指令进行故障排除
Claude通常在高级指令下表现更好,只需深入思考任务,而不是分步的规定性指导。模型在解决问题方面的创造力可能超过人类规定最佳思考过程的能力。 例如,不要这样:扩展思考的多样本提示
多样本提示与扩展思考配合良好。当您为Claude提供如何思考问题的示例时,它将在其扩展思考块中遵循类似的推理模式。 您可以在扩展思考场景中通过使用XML标签(如<thinking>或<scratchpad>)在提示中包含少样本示例,以指示这些示例中扩展思考的规范模式。
Claude将把模式推广到正式的扩展思考过程。但是,通过让Claude自由地以它认为最好的方式思考,您可能会获得更好的结果。
示例:
通过扩展思考最大化指令遵循
当启用扩展思考时,Claude显示出显著改善的指令遵循能力。模型通常:- 在扩展思考块内推理指令
- 在响应中执行这些指令
- 对您想要的内容要清晰具体
- 对于复杂指令,考虑将它们分解为Claude应该有条不紊地执行的编号步骤
- 允许Claude有足够的预算在其扩展思考中充分处理指令
使用扩展思考调试和引导Claude的行为
您可以使用Claude的思考输出来调试Claude的逻辑,尽管这种方法并不总是完全可靠。 为了最好地利用这种方法,我们建议以下技巧:- 我们不建议在用户文本块中传回Claude的扩展思考,因为这不会提高性能,实际上可能会降低结果。
- 明确不允许预填充扩展思考,手动更改模型在其思考块之后的输出文本可能会由于模型混乱而降低结果。
assistant响应文本预填充仍然是允许的。
有时Claude可能会在助手输出文本中重复其扩展思考。如果您想要一个干净的响应,请指示Claude不要重复其扩展思考,只输出答案。
充分利用长输出和长形式思考
对于数据集生成用例,尝试诸如”请创建一个极其详细的…表格”之类的提示来生成综合数据集。 对于详细内容生成等用例,您可能希望生成更长的扩展思考块和更详细的响应,请尝试这些技巧:- 增加最大扩展思考长度并明确要求更长的输出
- 对于非常长的输出(20,000+字),请求一个详细的大纲,包含到段落级别的字数统计。然后要求Claude将其段落索引到大纲并保持指定的字数
我们不建议您为了输出令牌而推动Claude输出更多令牌。相反,我们鼓励您从小的思考预算开始,根据需要增加以找到您用例的最佳设置。
复杂STEM问题
复杂STEM问题
复杂的STEM问题需要Claude构建心理模型、应用专业知识并通过顺序逻辑步骤工作——这些过程受益于更长的推理时间。
约束优化问题
约束优化问题
约束优化挑战Claude同时满足多个竞争要求,当允许长扩展思考时间以便模型可以有条不紊地解决每个约束时,这最好完成。
思考框架
思考框架
结构化思考框架为Claude提供了明确的方法论,当Claude被给予长扩展思考空间来遵循每个步骤时,这可能效果最好。
让Claude反思并检查其工作以提高一致性和错误处理
您可以使用简单的自然语言提示来提高一致性并减少错误:- 要求Claude在宣布任务完成之前用简单测试验证其工作
- 指示模型分析其前一步是否达到了预期结果
- 对于编码任务,要求Claude在其扩展思考中运行测试用例