effortパラメータを使用すると、リクエストに応答する際にClaudeがトークンを使用することにどの程度積極的であるかを制御できます。これにより、単一のモデルで応答の詳細さとトークン効率のバランスを取ることができます。
effortパラメータは現在ベータ版であり、Claude Opus 4.5でのみサポートされています。
この機能を使用する場合は、ベータヘッダー effort-2025-11-24 を含める必要があります。
デフォルトでは、Claudeは最大限の努力を使用します。つまり、最良の結果を得るために必要なだけのトークンを使用します。effortレベルを下げることで、Claudeにトークン使用をより慎重にするよう指示し、速度とコストを最適化しながら、機能の低下を受け入れることができます。
effort を "high" に設定すると、effort パラメータを完全に省略した場合とまったく同じ動作が得られます。
effortパラメータは、以下を含むすべてのトークンに影響します:
このアプローチには2つの大きな利点があります:
| レベル | 説明 | 典型的な使用例 |
|---|---|---|
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)ツールを使用する場合、effortパラメータはツール呼び出しの周囲の説明とツール呼び出し自体の両方に影響します。低いeffortレベルは傾向として:
高いeffortレベルは以下を行う可能性があります:
effortパラメータは、拡張思考が有効な場合、思考トークン予算と一緒に機能します。これら2つのコントロールは異なる目的を果たします:
effortパラメータは、拡張思考が有効であるかどうかに関わらず使用できます。両方が構成されている場合:
複雑な推論タスクで最高のパフォーマンスを得るには、高いeffort(デフォルト)と高い思考トークン予算を使用します。これにより、Claudeは徹底的に考え、包括的な応答を提供できます。