努力程度
努力程度参数允许您控制 Claude 在响应请求时花费令牌的积极程度。这使您能够在响应完整性和令牌效率之间进行权衡,所有这一切都可以通过单个模型实现。
努力程度参数目前处于测试阶段,仅由 Claude Opus 4.5 支持。
使用此功能时,您必须包含测试版标头 effort-2025-11-24。
努力程度如何工作
默认情况下,Claude 使用最大努力程度——花费尽可能多的令牌来提供全面的响应。通过降低努力程度,您可以指示 Claude 更保守地使用令牌,将令牌视为更昂贵的资源。
将 effort 设置为 "high" 会产生与完全省略 effort 参数完全相同的行为。
努力程度参数影响响应中的所有令牌,包括:
- 文本响应和解释
- 工具调用和函数参数
- 扩展思考(启用时)
努力程度级别
| 级别 | 描述 | 典型用例 |
|---|---|---|
high | 最大完整性——Claude 使用尽可能多的令牌。等同于不设置该参数。 | 复杂分析、详细解释、教育内容 |
medium | 平衡的方法,具有适度的令牌节省。 | 大多数生产用例、成本意识应用 |
low | 最高效的令牌响应。 | 高容量自动化、简单查询、当响应以编程方式处理时 |
基本用法
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-opus-4-5-20251101",
betas=["effort-2025-11-24"],
max_tokens=4096,
messages=[{
"role": "user",
"content": "Analyze the trade-offs between microservices and monolithic architectures"
}],
output_config={
"effort": "medium"
}
)
print(response.content[0].text)按努力程度的行为
努力程度参数主要控制输出冗长度和解释深度,而不是响应正确性。Claude 无论努力程度如何都执行类似的内部推理,但调整该推理在输出中出现的程度。
低努力程度响应
- 直接陈述答案,最少解释
- 简洁、高效的响应(1-2 句上下文)
- 显示公式但不推导
- 假设读者可以验证答案
- 工具使用的简洁确认("完成。"、"已修复。")
中等努力程度响应
- 答案前的简要上下文
- 具有关键中间步骤的简洁理由
- 可能包括一个已解决的示例
- 仍然专注于效率
高努力程度响应
- 用部分标题结构化
- 问题设置和变量定义
- 分步解决过程
- 验证和合理性检查
- 丰富的 markdown 格式
用例
何时使用低努力程度
- 速度优化:较低的令牌数意味着更快的响应时间,对延迟敏感的应用有益
- 自动化管道:当响应由代码处理而不是由人类阅读时
- 高容量应用:减少日常简单查询的成本
- 有经验的用户:当用户不需要详细解释时
- 快速确认:简单的是/否或状态响应
何时使用中等努力程度
- 生产 API:清晰度和成本效率的平衡
- 面向用户的应用:足够的上下文而不过度冗长
- 成本意识部署:显著节省,质量影响最小
何时使用高努力程度(或不使用努力程度参数)
- 复杂分析:当完整性至关重要时
- 教育内容:当用户需要理解推理时
- 文档:当响应作为参考资料时
- 调试:当详细解释有助于识别问题时
努力程度与工具使用
使用工具时,努力程度参数影响工具调用周围的解释和工具调用本身。较低的努力程度倾向于:
- 将多个操作合并为更少的工具调用
- 直接进行操作而不进行前言
- 完成后使用简洁的确认消息
较高的努力程度可能:
- 在采取行动前解释计划
- 提供详细的更改摘要
- 包含更全面的代码注释
努力程度与扩展思考
当启用扩展思考时,努力程度参数与思考令牌预算一起工作。这两个控制服务于不同的目的:
- 努力程度参数:控制 Claude 如何花费所有令牌——包括思考令牌、文本响应和工具调用
- 思考令牌预算:设置专门针对思考令牌的最大限制
努力程度参数可以在启用或不启用扩展思考的情况下使用。当两者都配置时:
- 首先确定适合您任务的努力程度
- 然后根据任务复杂性设置思考令牌预算
为了在复杂推理任务上获得最佳性能,使用高努力程度(默认值)和高思考令牌预算。这允许 Claude 充分思考并提供全面的响应。
最佳实践
-
从中等开始:对于大多数应用,中等努力程度提供了质量和效率的良好平衡。
-
对自动化使用低努力程度:当响应由代码而不是人类使用时,低努力程度可以显著降低成本而不影响正确性。
-
测试您的用例:努力程度的影响因任务类型而异。在部署前评估您特定用例的性能。
-
监控质量:虽然正确性通常在各个努力程度上保持,但解释质量会有所不同。确保您选择的级别满足用户的需求。
-
考虑动态努力程度:根据任务复杂性或用户偏好调整努力程度。简单查询可能需要低努力程度,而复杂分析受益于高努力程度。