本指南涵盖了迁移到 Claude 4.5 模型的两个关键路径:
  • Claude Sonnet 3.7 → Claude Sonnet 4.5:我们最智能的模型,具有一流的推理、编码和长期运行代理能力
  • Claude Haiku 3.5 → Claude Haiku 4.5:我们最快且最智能的 Haiku 模型,具有接近前沿的性能,适用于实时应用和大容量智能处理
这两种迁移都涉及需要更新实现的重大变更。本指南将通过逐步说明和明确标记的重大变更来引导您完成每个迁移路径。 在开始迁移之前,我们建议查看 Claude 4.5 的新功能 以了解这些模型中可用的新功能和能力,包括扩展思考、上下文感知和行为改进。

从 Claude Sonnet 3.7 迁移到 Claude Sonnet 4.5

Claude Sonnet 4.5 是我们最智能的模型,为推理、编码和长期运行的自主代理提供一流的性能。此迁移包括几个需要更新实现的重大变更。

迁移步骤

  1. 更新您的模型名称:
    # 之前(Claude Sonnet 3.7)
    model="claude-3-7-sonnet-20250219"
    
    # 之后(Claude Sonnet 4.5)
    model="claude-sonnet-4-5-20250929"
    
  2. 更新采样参数
    这是与 Claude Sonnet 3.7 的重大变更。
    只使用 temperaturetop_p,不能同时使用:
    # 之前(Claude Sonnet 3.7)- 这在 Sonnet 4.5 中会出错
    response = client.messages.create(
        model="claude-3-7-sonnet-20250219",
        temperature=0.7,
        top_p=0.9,  # 不能同时使用
        ...
    )
    
    # 之后(Claude Sonnet 4.5)
    response = client.messages.create(
        model="claude-sonnet-4-5-20250929",
        temperature=0.7,  # 使用 temperature 或 top_p,不能同时使用
        ...
    )
    
  3. 处理新的 refusal 停止原因 更新您的应用程序以处理 refusal 停止原因
    response = client.messages.create(...)
    
    if response.stop_reason == "refusal":
        # 适当处理拒绝
        pass
    
  4. 更新文本编辑器工具(如适用)
    这是与 Claude Sonnet 3.7 的重大变更。
    更新为 text_editor_20250728(类型)和 str_replace_based_edit_tool(名称)。删除任何使用 undo_edit 命令的代码。
    # 之前(Claude Sonnet 3.7)
    tools=[{"type": "text_editor_20250124", "name": "str_replace_editor"}]
    
    # 之后(Claude Sonnet 4.5)
    tools=[{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}]
    
    详情请参见文本编辑器工具文档
  5. 更新代码执行工具(如适用) 升级到 code_execution_20250825。旧版本 code_execution_20250522 仍然可用但不推荐。迁移说明请参见代码执行工具文档
  6. 删除令牌高效工具使用测试版标头 令牌高效工具使用是 Claude 3.7 中的测试版功能。所有 Claude 4 模型都内置了令牌高效工具使用,因此您不应再包含测试版标头。 从您的请求中删除 token-efficient-tools-2025-02-19 测试版标头
    # 之前(Claude Sonnet 3.7)
    client.messages.create(
        model="claude-3-7-sonnet-20250219",
        betas=["token-efficient-tools-2025-02-19"],  # 删除此项
        ...
    )
    
    # 之后(Claude Sonnet 4.5)
    client.messages.create(
        model="claude-sonnet-4-5-20250929",
        # 无令牌高效工具测试版标头
        ...
    )
    
  7. 删除扩展输出测试版标头 用于扩展输出的 output-128k-2025-02-19 测试版标头仅在 Claude Sonnet 3.7 中可用。 从您的请求中删除此标头:
    # 之前(Claude Sonnet 3.7)
    client.messages.create(
        model="claude-3-7-sonnet-20250219",
        betas=["output-128k-2025-02-19"],  # 删除此项
        ...
    )
    
    # 之后(Claude Sonnet 4.5)
    client.messages.create(
        model="claude-sonnet-4-5-20250929",
        # 无 output-128k 测试版标头
        ...
    )
    
  8. 更新您的提示以适应行为变化 Claude Sonnet 4.5 具有更简洁、直接的沟通风格,需要明确的指导。查看 Claude 4 提示工程最佳实践以获得优化指导。
  9. 考虑为复杂任务启用扩展思考 为编码和推理任务启用扩展思考以显著提高性能(默认禁用):
    response = client.messages.create(
        model="claude-sonnet-4-5-20250929",
        max_tokens=16000,
        thinking={"type": "enabled", "budget_tokens": 10000},
        messages=[...]
    )
    
    扩展思考会影响提示缓存效率。
  10. 测试您的实现 在部署到生产环境之前,在开发环境中进行测试,以确保所有重大变更都得到正确处理。

Sonnet 3.7 → 4.5 迁移检查清单

  • 将模型 ID 更新为 claude-sonnet-4-5-20250929
  • 重大变更:更新采样参数以仅使用 temperaturetop_p,不能同时使用
  • 在您的应用程序中处理新的 refusal 停止原因
  • 重大变更:将文本编辑器工具更新为 text_editor_20250728str_replace_based_edit_tool(如适用)
  • 重大变更:删除任何使用 undo_edit 命令的代码(如适用)
  • 将代码执行工具更新为 code_execution_20250825(如适用)
  • 删除 token-efficient-tools-2025-02-19 测试版标头(如适用)
  • 删除 output-128k-2025-02-19 测试版标头(如适用)
  • 按照 Claude 4 最佳实践审查和更新提示
  • 考虑为复杂推理任务启用扩展思考
  • 处理 model_context_window_exceeded 停止原因(Sonnet 4.5 特有)
  • 考虑为长期运行的代理启用内存工具(测试版)
  • 考虑使用自动工具调用清除进行上下文编辑(测试版)
  • 在生产部署之前在开发环境中测试

从 Claude Sonnet 3.7 中删除的功能

  • 令牌高效工具使用:不支持 token-efficient-tools-2025-02-19 测试版标头(见步骤 6)
  • 扩展输出:不支持 output-128k-2025-02-19 测试版标头(见步骤 7)
这两个标头可以包含在请求中,但不会产生任何效果。

从 Claude Haiku 3.5 迁移到 Claude Haiku 4.5

Claude Haiku 4.5 是我们最快且最智能的 Haiku 模型,具有接近前沿的性能,为交互式应用和大容量智能处理提供高级模型质量和实时性能。此迁移包括几个需要更新实现的重大变更。 有关新功能的完整概述,请参见 Claude 4.5 的新功能
Haiku 4.5 定价为每百万输入令牌 1 美元,每百万输出令牌 5 美元。详情请参见 Claude 定价

迁移步骤

  1. 更新您的模型名称:
    # 之前(Haiku 3.5)
    model="claude-3-5-haiku-20241022"
    
    # 之后(Haiku 4.5)
    model="claude-haiku-4-5-20251001"
    
  2. 更新工具版本(如适用)
    这是与 Claude Haiku 3.5 的重大变更。
    Haiku 4.5 仅支持最新的工具版本:
    # 之前(Haiku 3.5)
    tools=[{"type": "text_editor_20250124", "name": "str_replace_editor"}]
    
    # 之后(Haiku 4.5)
    tools=[{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}]
    
    • 文本编辑器:使用 text_editor_20250728str_replace_based_edit_tool
    • 代码执行:使用 code_execution_20250825
    • 删除任何使用 undo_edit 命令的代码
  3. 更新采样参数
    这是与 Claude Haiku 3.5 的重大变更。
    只使用 temperaturetop_p,不能同时使用:
    # 之前(Haiku 3.5)- 这在 Haiku 4.5 中会出错
    response = client.messages.create(
        model="claude-3-5-haiku-20241022",
        temperature=0.7,
        top_p=0.9,  # 不能同时使用
        ...
    )
    
    # 之后(Haiku 4.5)
    response = client.messages.create(
        model="claude-haiku-4-5-20251001",
        temperature=0.7,  # 使用 temperature 或 top_p,不能同时使用
        ...
    )
    
  4. 审查新的速率限制 Haiku 4.5 与 Haiku 3.5 有单独的速率限制。详情请参见速率限制文档
  5. 处理新的 refusal 停止原因 更新您的应用程序以处理拒绝停止原因
  6. 考虑为复杂任务启用扩展思考 为编码和推理任务启用扩展思考以显著提高性能(默认禁用):
    response = client.messages.create(
        model="claude-haiku-4-5-20251001",
        max_tokens=16000,
        thinking={"type": "enabled", "budget_tokens": 5000},
        messages=[...]
    )
    
    扩展思考会影响提示缓存效率。
  7. 探索新功能 有关上下文感知、增加的输出容量(64K 令牌)、更高智能和改进速度的详情,请参见 Claude 4.5 的新功能
  8. 测试您的实现 在部署到生产环境之前,在开发环境中进行测试,以确保所有重大变更都得到正确处理。

Haiku 3.5 → 4.5 迁移检查清单

  • 将模型 ID 更新为 claude-haiku-4-5-20251001
  • 重大变更:将工具版本更新为最新版本(例如,text_editor_20250728code_execution_20250825)- 不支持旧版本
  • 重大变更:删除任何使用 undo_edit 命令的代码(如适用)
  • 重大变更:更新采样参数以仅使用 temperaturetop_p,不能同时使用
  • 审查并调整新的速率限制(与 Haiku 3.5 分开)
  • 在您的应用程序中处理新的 refusal 停止原因
  • 考虑为复杂推理任务启用扩展思考(新功能)
  • 利用上下文感知在长会话中更好地管理令牌
  • 为更大的响应做准备(最大输出从 8K 增加到 64K 令牌)
  • 按照 Claude 4 最佳实践审查和更新提示
  • 在生产部署之前在开发环境中测试

在 Sonnet 4.5 和 Haiku 4.5 之间选择

Claude Sonnet 4.5 和 Claude Haiku 4.5 都是功能强大的 Claude 4 模型,具有不同的优势:

选择 Claude Sonnet 4.5(最智能)用于:

  • 复杂推理和分析:用于复杂任务的一流智能
  • 长期运行的自主代理:在长时间独立工作的代理方面表现卓越
  • 高级编码任务:我们最强的编码模型,具有高级规划和安全工程能力
  • 大上下文工作流:通过内存工具和上下文编辑功能增强上下文管理
  • 需要最大能力的任务:当智能和准确性是首要优先级时

选择 Claude Haiku 4.5(最快且最智能的 Haiku)用于:

  • 实时应用:为交互式用户体验提供快速响应时间和接近前沿的性能
  • 大容量智能处理:以提高的速度进行成本效益的大规模智能处理
  • 成本敏感的部署:以较低的价格点提供接近前沿的性能
  • 子代理架构:用于多代理系统的快速、智能代理
  • 大规模计算机使用:成本效益的自主桌面和浏览器自动化
  • 需要速度的任务:当低延迟至关重要同时保持接近前沿智能时

扩展思考建议

Claude 4 模型,特别是 Sonnet 和 Haiku 4.5,在使用扩展思考进行编码和复杂推理任务时显示出显著的性能改进。扩展思考默认禁用,但我们建议为要求苛刻的工作启用它。 重要:扩展思考会影响提示缓存效率。当非工具结果内容添加到对话中时,思考块会从缓存中剥离,这可能会增加多轮对话的成本。我们建议在性能收益超过缓存权衡时启用思考。

其他迁移场景

上面涵盖的主要迁移路径(Sonnet 3.7 → 4.5 和 Haiku 3.5 → 4.5)代表了最常见的升级。但是,您可能正在从其他 Claude 模型迁移到 Claude 4.5。本节涵盖这些场景。

从 Claude Sonnet 4 → Sonnet 4.5 迁移

重大变更:不能在同一请求中同时指定 temperaturetop_p 所有其他 API 调用都将无需修改即可工作。更新您的模型 ID 并根据需要调整采样参数:
# 之前(Claude Sonnet 4)
model="claude-sonnet-4-20250514"

# 之后(Claude Sonnet 4.5)
model="claude-sonnet-4-5-20250929"

从 Claude Opus 4.1 → Sonnet 4.5 迁移

无重大变更。 所有 API 调用都将无需修改即可工作。 只需更新您的模型 ID:
# 之前(Claude Opus 4.1)
model="claude-opus-4-1-20250805"

# 之后(Claude Sonnet 4.5)
model="claude-sonnet-4-5-20250929"
Claude Sonnet 4.5 是我们最智能的模型,具有一流的推理、编码和长期运行代理能力。对于大多数用例,它提供比 Opus 4.1 更优越的性能。

需要帮助?