本指南涵蓋兩個關鍵的遷移路徑至 Claude 4.5 模型:
兩個遷移都涉及需要更新實現的破壞性變更。本指南將逐步引導您完成每個遷移路徑,並清楚標記破壞性變更。
在開始遷移之前,我們建議查看 Claude 4.5 的新功能,以了解這些模型中可用的新功能和能力,包括擴展思考、上下文感知和行為改進。
Claude Sonnet 4.5 是我們最智能的模型,為推理、編碼和長期運行的自主代理提供同類最佳的性能。此遷移包括多個破壞性變更,需要更新您的實現。
更新您的模型名稱:
# 之前 (Claude Sonnet 3.7)
model="claude-3-7-sonnet-20250219"
# 之後 (Claude Sonnet 4.5)
model="claude-sonnet-4-5-20250929"更新採樣參數
這是從 Claude Sonnet 3.7 的破壞性變更。
僅使用 temperature 或 top_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,不能同時使用
...
)處理新的 refusal 停止原因
更新您的應用程式以 處理 refusal 停止原因:
response = client.messages.create(...)
if response.stop_reason == "refusal":
# 適當處理拒絕
pass更新文字編輯器工具(如適用)
這是從 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"}]詳見 。
更新程式碼執行工具(如適用)
升級至 code_execution_20250825。舊版本 code_execution_20250522 仍然可用但不推薦。詳見 程式碼執行工具文件 以了解遷移說明。
移除令牌高效工具使用測試版標頭
令牌高效工具使用是僅適用於 Claude 3.7 Sonnet 的測試版功能。所有 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",
# 無令牌高效工具測試版標頭
...
)移除擴展輸出測試版標頭
用於擴展輸出的 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",
# 無輸出 128k 測試版標頭
...
)為行為變更更新您的提示
Claude Sonnet 4.5 具有更簡潔、直接的通訊風格,需要明確的指導。查看 Claude 4 提示工程最佳實踐 以獲得優化指導。
考慮為複雜任務啟用擴展思考
為編碼和推理任務啟用 擴展思考 以獲得顯著的性能改進(預設禁用):
response = client.messages.create(
model="claude-sonnet-4-5-20250929",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 10000},
messages=[...]
)擴展思考會影響 提示快取 效率。
測試您的實現
在部署到生產環境之前在開發環境中測試,以確保所有破壞性變更都得到適當處理。
claude-sonnet-4-5-20250929temperature 或 top_p,不能同時使用refusal 停止原因text_editor_20250728 和 str_replace_based_edit_tool(如適用)undo_edit 命令的程式碼(如適用)code_execution_20250825(如適用)token-efficient-tools-2025-02-19 測試版標頭(如適用)token-efficient-tools-2025-02-19 測試版標頭僅適用於 Claude 3.7 Sonnet,Claude 4 模型不支援(見步驟 6)output-128k-2025-02-19 測試版標頭不支援(見步驟 7)兩個標頭都可以包含在 Claude 4 請求中,但不會產生任何效果。
Claude Haiku 4.5 是我們最快且最智能的 Haiku 模型,具有接近前沿的性能,為互動應用和大量智能處理提供高級模型品質和實時性能。此遷移包括多個破壞性變更,需要更新您的實現。
有關新功能的完整概述,請參閱 Claude 4.5 的新功能。
Haiku 4.5 定價為每百萬輸入令牌 $1,每百萬輸出令牌 $5。詳見 Claude 定價。
更新您的模型名稱:
# 之前 (Haiku 3.5)
model="claude-3-5-haiku-20241022"
# 之後 (Haiku 4.5)
model="claude-haiku-4-5-20251001"更新工具版本(如適用)
這是從 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"}]claude-haiku-4-5-20251001text_editor_20250728、code_execution_20250825)- 不支援舊版本undo_edit 命令的程式碼(如適用)temperature 或 top_p,不能同時使用refusal 停止原因Claude Sonnet 4.5 和 Claude Haiku 4.5 都是強大的 Claude 4 模型,具有不同的優勢:
Claude 4 模型,特別是 Sonnet 和 Haiku 4.5,在使用 擴展思考 進行編碼和複雜推理任務時顯示顯著的性能改進。擴展思考預設禁用,但我們建議為要求苛刻的工作啟用它。
重要:擴展思考會影響 提示快取 效率。當非工具結果內容添加到對話時,思考塊會從快取中移除,這可能會增加多輪對話的成本。我們建議在性能優勢超過快取權衡時啟用思考。
上面涵蓋的主要遷移路徑(Sonnet 3.7 → 4.5 和 Haiku 3.5 → 4.5)代表最常見的升級。但是,您可能正在從其他 Claude 模型遷移至 Claude 4.5。本節涵蓋這些場景。
破壞性變更:不能在同一請求中同時指定 temperature 和 top_p。
所有其他 API 呼叫將無需修改即可工作。更新您的模型 ID 並根據需要調整採樣參數:
# 之前 (Claude Sonnet 4)
model="claude-sonnet-4-20250514"
# 之後 (Claude Sonnet 4.5)
model="claude-sonnet-4-5-20250929"無破壞性變更。 所有 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 更優越的性能。
無破壞性變更。 所有 API 呼叫將無需修改即可工作。
只需更新您的模型 ID:
# 之前 (Claude Opus 4.1)
model="claude-opus-4-1-20250805"
# 之後 (Claude Opus 4.5)
model="claude-opus-4-5-20251101"Claude Opus 4.5 是我們最智能的模型,結合了最大功能和實際性能。它在視覺、編碼和電腦使用方面具有階躍式改進,價格點比 Opus 4.1 更易於接受。適合複雜的專業任務和專業軟體工程。
對於具有許多模型參考的程式碼庫,可以使用 Claude Code 外掛程式 自動遷移至 Opus 4.5。
無破壞性變更。 所有 API 呼叫將無需修改即可工作。
只需更新您的模型 ID。
output-128k-2025-02-19 測試版標頭(如適用)model_context_window_exceeded 停止原因(Sonnet 4.5 特定)text_editor_20250728 和 str_replace_based_edit_toolcode_execution_20250825undo_edit 命令的程式碼更新採樣參數
這是從 Claude Haiku 3.5 的破壞性變更。
僅使用 temperature 或 top_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,不能同時使用
...
)審查新的速率限制
Haiku 4.5 與 Haiku 3.5 有不同的速率限制。詳見 速率限制文件。
處理新的 refusal 停止原因
更新您的應用程式以 處理拒絕停止原因。
考慮為複雜任務啟用擴展思考
為編碼和推理任務啟用 擴展思考 以獲得顯著的性能改進(預設禁用):
response = client.messages.create(
model="claude-haiku-4-5-20251001",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 5000},
messages=[...]
)擴展思考會影響 提示快取 效率。
探索新功能
詳見 Claude 4.5 的新功能 以了解上下文感知、增加的輸出容量(64K 令牌)、更高的智能和改進的速度。
測試您的實現
在部署到生產環境之前在開發環境中測試,以確保所有破壞性變更都得到適當處理。