
| Model (模型) | Alias (别名) | Model ID (模型 ID) |
|---|---|---|
| Claude Opus 4 | claude-opus-4-0 | claude-opus-4-20250514 |
| Claude Sonnet 4 | claude-sonnet-4-0 | claude-sonnet-4-20250514 |
| Claude Sonnet 3.7 | claude-3-7-sonnet-latest | claude-3-7-sonnet-20250219 |
| Claude Sonnet 3.5 | claude-3-5-sonnet-latest | claude-3-5-sonnet-20241022 |
| Claude Haiku 3.5 | claude-3-5-haiku-latest | claude-3-5-haiku-20241022 |
| Claude Opus 3 | claude-3-opus-latest | claude-3-opus-20240229 |
| 特性 | Claude Opus 4 | Claude Sonnet 4 | Claude Sonnet 3.7 | Claude Sonnet 3.5 | Claude Haiku 3.5 | Claude Opus 3 | Claude Haiku 3 |
|---|---|---|---|---|---|---|---|
| 描述 | 我们最强大的模型 | 高性能模型 | 具有早期扩展思维的高性能模型 | 我们之前的智能模型 | 我们最快的模型 | 适用于复杂任务的强大模型 | 快速紧凑、响应近乎即时的模型 |
| 优势 | 最高水平的智能和能力 | 高智能和均衡的性能 | 高智能,可切换扩展思维 | 高水平的智能和能力 | 速度极快的智能 | 顶级的智能、流畅度和理解力 | 快速准确的定向性能 |
| 多语言 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
| 视觉 | 是 | 是 | 是 | 是 | 是 | 是 | 是 |
| 扩展思维 | 是 | 是 | 是 | 否 | 否 | 否 | 否 |
| 优先层级 | 是 | 是 | 是 | 是 | 是 | 否 | 否 |
| API 模型名称 | claude-opus-4-20250514 | claude-sonnet-4-20250514 | claude-3-7-sonnet-20250219 | 升级版本: claude-3-5-sonnet-20241022 之前版本: claude-3-5-sonnet-20240620 | claude-3-5-haiku-20241022 | claude-3-opus-20240229 | claude-3-haiku-20240307 |
| 相对延迟 | 中等快 | 快 | 快 | 快 | 最快 | 中等快 | 快 |
| 上下文窗口 | 200K | 200K | 200K | 200K | 200K | 200K | 200K |
| 最大输出 | 32000 tokens | 64000 tokens | 64000 tokens | 8192 tokens | 8192 tokens | 4096 tokens | 4096 tokens |
| 训练数据截止 | 2025年3月 | 2025年3月 | 2024年11月 | 2024年4月 | 2024年7月 | 2023年8月 | 2023年8月 |
Claude 4 模型支持将工具使用与扩展思考交错进行,使得工具使用和回复可以与常规消息混合,实现更自然的对话体验。用interleaved-thinking-2025-05-14 头.
交错式思考会放大缓存失效的情况,因为思考模块可能会出现在多次工具调用之间, 通过交错式思考, budget_tokens 可以超过 max_tokens 参数,因为它代表了在一次助手轮次中所有思考模块的总预算。
不再支持token-efficient-tools-2025-02-19头,也不支持output-128k-2025-02-19
Claude Sonnet 4相比3.7:
Claude Opus 4:
接口会显示思考总结
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
示例代码:
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=16000,
thinking={
"type": "enabled",
"budget_tokens": 10000
},
messages=[{
"role": "user",
"content": "Are there an infinite number of prime numbers such that n mod 4 == 3?"
}]
)
# The response will contain summarized thinking blocks and text blocks
for block in response.content:
if block.type == "thinking":
print(f"\nThinking summary: {block.thinking}")
elif block.type == "text":
print(f"\nResponse: {block.text}")
在使用工具时,您必须将 thinking 模块完整无修改地传回 API。这对于保持模型的推理流程和对话完整性至关重要。
import anthropic
client = anthropic.Anthropic()
with client.messages.stream(
model="claude-leopard-v0-34-prod",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 10000},
messages=[{"role": "user", "content": "What is 27 * 453?"}],
) as stream:
thinking_started = False
response_started = False
for event in stream:
if event.type == "content_block_start":
print(f"\nStarting {event.content_block.type} block...")
# Reset flags for each new block
thinking_started = False
response_started = False
elif event.type == "content_block_delta":
if event.delta.type == "thinking_delta":
if not thinking_started:
print("Thinking: ", end="", flush=True)
thinking_started = True
print(event.delta.thinking, end="", flush=True)
elif event.delta.type == "text_delta":
if not response_started:
print("Response: ", end="", flush=True)
response_started = True
print(event.delta.text, end="", flush=True)
elif event.type == "content_block_stop":
print("\nBlock complete.")
您将按照原始请求生成的全部思维 Token 收费,而非摘要 Token。
计费的输出标记数量与您在响应中看到的标记数量可能不一致。
思维输出的前几行较为冗长,提供了详细的推理,这对提示工程尤为有用。
上下文组成:
context window = (current input tokens - previous thinking tokens) + (thinking tokens + encrypted thinking tokens + text output tokens)
完整的思维内容被加密并返回在 signature 字段中。这个字段用于在传回 API 时验证思维块是否由 Claude 生成。