Was this page helpful?
本指南涵蓋 Messages API 程式碼的遷移。如果您使用 Claude Managed Agents,除了更新模型名稱外,無需進行其他變更。
使用 Claude API skill 自動化您的遷移。 在 Claude Code 中,執行 /claude-api migrate 以呼叫內建的 Claude API skill。它適用於本頁面上的任何目標模型:
/claude-api migrate this project to claude-opus-4-8此 skill 會套用模型 ID 替換,並視需要在您的程式碼庫中套用破壞性參數變更、prefill 替換,以及針對目標模型的 effort 校準,然後產生一份需要手動驗證的項目檢查清單。在編輯任何檔案之前,它會要求您確認遷移範圍(整個工作目錄、子目錄或特定檔案清單)。此 skill 也會偵測 Amazon Bedrock、Vertex AI、Claude Platform on AWS 和 Microsoft Foundry 用戶端,並針對每個平台調整模型 ID 格式和功能變更。
Claude Mythos 5 是 Claude Mythos Preview(僅限邀請的研究預覽版)的存取受限後繼版本。如需具有相同功能的正式發布模型,請參閱 Claude Fable 5。
遷移大多可直接替換。Claude Mythos 5 使用與 Claude Mythos Preview 相同的 Messages API 和相同的工具使用模式,且由於兩個模型使用相同的 tokenizer,token 數量大致不變。需要檢查的主要變更是不再提供的功能(列於下一節)以及思考輸出。
關於 Claude Mythos Preview 的停用時程,請參閱模型棄用。
model = "claude-mythos-preview" # Before
model = "claude-mythos-5" # After擴展思考與思考 token 預算: 手動擴展思考(thinking: {type: "enabled", budget_tokens: N})在 claude-mythos-5 上不受支援,會回傳 400 錯誤。自適應思考始終啟用:模型會在每個請求中自行決定何時思考以及思考多少,且不需要 thinking 設定。thinking: {type: "disabled"} 會回傳錯誤。budget_tokens 沒有直接的替代方案:思考是自適應的,而 effort 參數是獨立的輸出層級控制,而非思考預算。
之前(Claude Mythos Preview):
claude-mythos-5 使用與 claude-mythos-preview 相同的 tokenizer(隨 Claude Opus 4.7 引入的 tokenizer)。從 claude-mythos-preview 遷移時,token 數量大致不變。與 Claude Opus 4.7 之前的模型相比,相同內容的 token 化結果可能多出約 30%,視內容和工作負載型態而異。
對於 claude-mythos-5,/v1/messages/count_tokens 回傳的值與 claude-mythos-preview 相比大致不變。請在您自己的工作負載上重新建立成本和延遲基準。
claude-mythos-preview 更新為 claude-mythos-5。thinking: {type: "enabled", budget_tokens: N})。自適應思考始終啟用,且不需要 thinking 欄位。thinking: {type: "disabled"} 設定。在 claude-mythos-5 上停用思考會回傳錯誤。budget_tokens。它沒有直接的替代方案:思考是自適應的,而 effort 參數是獨立的輸出層級控制,而非思考預算。thinking 欄位的程式碼僅將其視為顯示文字,並在同一模型上繼續對話時原封不動地傳回思考區塊。在 claude-mythos-5 上,thinking.display 預設為 "omitted",與 Claude Mythos Preview 相同;設定 display: "summarized" 以接收可讀的摘要。請參閱 。Claude Fable 5 是 Anthropic 最強大的廣泛發布模型,在 Claude API、Claude Platform on AWS、Amazon Bedrock、Vertex AI 和 Microsoft Foundry 上正式提供。
遷移大多可直接替換。Claude Fable 5 使用與 Claude Opus 4.8 相同的 Messages API 和相同的工具使用模式。它預設支援相同的 1M token 上下文視窗和相同的 128k 最大輸出 token。由於兩個模型使用相同的 tokenizer,token 數量大致不變。
需要檢查的主要變更是始終啟用的自適應思考、思考輸出、安全分類器拒絕以及定價。遷移前涵蓋定價和資料保留;變更內容涵蓋其餘部分。
Claude Fable 5 的定價為每百萬輸入 token $10、每百萬輸出 token $50,而 Claude Opus 4.8 為 $5 和 $25。詳情請參閱 Claude 定價。
Claude Fable 5 需要 30 天資料保留,且在「zero data retention」(零資料保留),即 ZDR 安排下不提供;它被指定為 Covered Model(受管模型)。若組織的資料保留設定不符合此要求,其請求會回傳 400 invalid_request_error。具有 ZDR 安排的組織應聯絡其 Anthropic 客戶團隊以討論資料保留設定;Claude Opus 4.8 在 ZDR 下仍可使用。或者,您可以按工作區設定資料保留;請參閱模型特定的資料保留要求。在 Amazon Bedrock、Vertex AI 和 Microsoft Foundry 上,資料保留由各平台管理。
如果您的程式碼在 Claude Opus 4.7 或更早版本上,請先套用從 Claude Opus 4.7 遷移至 Claude Opus 4.8,對於早於 Claude Opus 4.7 的模型,請套用 Claude Opus 4.7 遷移步驟。這些章節涵蓋本節不再重複的破壞性變更(取樣參數被拒絕、手動擴展思考被拒絕、prefill 移除、新 tokenizer)。
model = "claude-opus-4-8" # Before
model = "claude-fable-5" # After本節中的項目描述在您替換模型 ID 後值得檢查的 API 和行為差異。
自適應思考始終啟用: 自適應思考是 claude-fable-5 上唯一的思考模式。模型會在每個請求中自行決定何時思考以及思考多少,且不需要 thinking 設定。thinking: {type: "disabled"} 會回傳錯誤。使用 effort 參數來控制思考深度。
需要檢查的行為變更:在 Claude Opus 4.8 上,沒有 thinking 欄位的請求會在不思考的情況下執行;在 claude-fable-5 上,相同的請求會以自適應思考執行。max_tokens 仍是總輸出(思考加上回應文字)的硬性限制,因此對於在 Claude Opus 4.8 上不使用思考執行的工作負載,請重新檢視此設定。請參閱成本控制。
之前(Claude Opus 4.8):
claude-fable-5 需要 30 天資料保留,否則會回傳 400 invalid_request_error。請參閱模型特定的資料保留要求。claude-opus-4-8 更新為 claude-fable-5。thinking: {type: "disabled"} 設定。在 claude-fable-5 上停用思考會回傳錯誤,且沒有 thinking 欄位的請求會以自適應思考執行。claude-fable-5 上仍不受支援。thinking 欄位的程式碼僅將其視為顯示文字,並在同一模型上繼續對話時原封不動地傳回思考區塊。在 claude-fable-5 上,thinking.display 預設為 "omitted",與 Claude Opus 4.8 相同;設定 以接收可讀的摘要。請參閱 。Claude Opus 4.8 是 Anthropic 最強大的 Opus 層級模型。它建立在 Claude Opus 4.7 之上。
Claude Opus 4.8 在現有的 Claude Opus 4.7 提示和評估上應具有強大的開箱即用效能。對於已在 Claude Opus 4.7 上執行的程式碼,沒有破壞性的 API 變更。它支援與 Claude Opus 4.7 相同的功能集,包括 1M token 上下文視窗、128k 最大輸出 token、自適應思考、提示快取、批次處理、Files API、PDF 支援、視覺,以及完整的伺服器端和用戶端工具集。它還新增了對話中系統訊息,並公開記錄了拒絕停止詳情。
如果您的程式碼在 Claude Opus 4.6 或更早版本上,在升級至 Claude Opus 4.8 之前,也請套用下方的 Claude Opus 4.7 遷移步驟。這些步驟包含破壞性變更(取樣參數被拒絕、手動擴展思考被拒絕、新 tokenizer),而僅 4.8 升級本身並未涵蓋這些變更。
在 Microsoft Foundry 上,Claude Opus 4.8 在發布時具有 200k token 的上下文視窗。1M 上下文視窗適用於 Claude API、Amazon Bedrock 和 Vertex AI。請參閱 Microsoft Foundry 中的 Claude。
# Opus 遷移
model = "claude-opus-4-7" # Before
model = "claude-opus-4-8" # After這些不是破壞性變更。在 Claude Opus 4.7 上執行的程式碼在 Claude Opus 4.8 上無需變更即可繼續運作。以下項目描述在您替換模型 ID 後值得檢查的行為差異。
取樣參數(不變): 在 Claude Opus 4.8 上將 temperature、top_p 或 top_k 設為非預設值會回傳 400 錯誤,與 Claude Opus 4.7 相同。SDK 請求類型仍定義這些欄位以與早期模型相容,因此設定它們的程式碼可通過類型檢查,但 API 會在伺服器端拒絕該請求。如果您在遷移至 Opus 4.7 時已移除這些參數,則無需進一步變更。
Effort 預設為 high: 在 Claude Opus 4.8 上,effort 參數的預設值在所有介面上均為 high,包括 Claude Code 和 Messages API。如果您已明確設定 effort,您的設定不會改變。對於程式編寫和高自主性工作,請明確設定 xhigh。請根據您的延遲和成本預算重新評估您的 effort 設定。
1M 上下文視窗為預設值: Claude Opus 4.8 預設提供完整的 1M token 上下文視窗,無需 beta 標頭且無長上下文加價。如果您的用戶端為了與舊模型相容而傳遞上下文視窗 beta 標頭,您可以在 Claude Opus 4.8 上移除它。
對話中系統訊息: Claude Opus 4.8 接受在 messages 陣列中緊接在 user 回合之後的 role: "system" 訊息(須遵守)。對於從一開始就適用的指令,請使用頂層 欄位。早期模型(包括 Claude Opus 4.7)會以 400 錯誤拒絕 中的 。如果您維護的程式碼路徑會重建完整訊息歷史以更新指令,您可以簡化它們並保留先前回合的命中。
claude-opus-4-7 更新為 claude-opus-4-8(或更新別名)。effort 設定。所有介面上的預設值均為 high;對於程式編寫和高自主性工作,請明確設定 xhigh。stop_details(自 Claude Opus 4.7 起提供;現已公開記錄)。Claude Opus 4.7 具有高度自主性,在長期代理工作、知識工作、視覺任務和記憶任務上表現出色。
Claude Opus 4.7 在現有的 Claude Opus 4.6 提示和評估上應具有強大的開箱即用效能,且維持相同的每 MTok $5 / $25 定價,但在遷移時有一些行為和 API 變更值得了解。它支援與 Claude Opus 4.6 相同的功能集,包括:
# Opus 遷移
model = "claude-opus-4-6" # Before
model = "claude-opus-4-7" # After擴展思考已移除: thinking: {type: "enabled", budget_tokens: N} 在 Claude Opus 4.7 或更新的模型上不再受支援,會回傳 400 錯誤。請改用自適應思考(thinking: {type: "adaptive"}),並使用 effort 參數來控制思考深度。自適應思考在 Claude Opus 4.7 上預設為關閉:沒有 thinking 欄位的請求會在不思考的情況下執行,與 Opus 4.6 的行為一致。請明確設定 thinking: {type: "adaptive"} 以啟用它。
之前(Claude Opus 4.6):
Effort 參數允許您調整 Claude 的智能與 token 花費之間的平衡,以能力換取更快的速度和更低的成本。對於程式編寫和代理使用案例,請從新的 xhigh effort 層級開始,對於大多數對智能敏感的使用案例,請使用至少 high 的 effort。嘗試其他 effort 層級以進一步調整 token 使用和智能:
max: Max effort 在某些使用案例中可帶來效能提升,但可能因 token 使用增加而出現報酬遞減。此設定有時也可能容易過度思考。請針對需要高智能的任務測試 max effort。xhigh(新增): Extra high effort 是大多數程式編寫和代理使用案例的最佳設定。high: 此設定在 token 使用和智能之間取得平衡。對於大多數對智能敏感的使用案例,請使用至少 high 的 effort。medium: 適合需要減少 token 使用同時在智能上有所取捨的成本敏感使用案例。low: 保留給簡短、範圍明確的任務,以及對延遲敏感但對智能不敏感的工作負載。對於此模型而言,effort 比任何先前的 Opus 都更為重要。升級時請積極嘗試調整它。
Claude Opus 4.7 與 Claude Opus 4.6 相比有幾項行為差異,這些差異並非 API 的重大變更,但可能需要更新提示或移除鷹架(scaffolding)。
回應長度因使用案例而異: Claude Opus 4.7 會根據其判斷任務的複雜程度來校準回應長度,而非預設使用固定的詳細程度。這通常意味著簡單查詢會得到較短的答案,而開放式分析則會得到更長的回應。
如果您的產品依賴特定的輸出風格或詳細程度,您可能需要調整提示。例如,若要降低詳細程度,可新增:「提供簡潔、聚焦的回應。略過非必要的背景資訊,並將範例保持在最少。」如果您發現特定類型的過度解釋,請在提示中新增針對性的指示以防止這些情況。
展示 Claude 如何以適當簡潔程度進行溝通的正面範例,往往比告訴模型不該做什麼的負面範例或指示更有效。
更字面化的指令遵循: Claude Opus 4.7 比 Claude Opus 4.6 更字面且明確地解讀提示,特別是在較低的 effort 層級下。它不會默默地將一個項目的指令推廣到另一個項目,也不會推斷您未提出的請求。這種字面化的好處是精確性更高且減少反覆。對於具有精心調整提示、結構化擷取以及需要可預測行為的管線等 API 使用案例,它通常表現更佳。在遷移至 Claude Opus 4.7 時,審查提示和測試框架(harness)可能特別有幫助。
更直接的語氣: 與任何新模型一樣,長篇寫作的文體風格可能會有所變化。Claude Opus 4.7 更直接且更有主見,相較於 Claude Opus 4.6 較溫暖的風格,它較少使用以肯定為導向的措辭,也較少使用表情符號。如果您的產品依賴特定的語氣,請根據新的基準重新評估風格提示。
代理軌跡中的內建進度更新: Claude Opus 4.7 在長時間的代理軌跡中會向使用者提供更規律、更高品質的更新。如果您已新增鷹架來強制產生中間狀態訊息(「每 3 次工具呼叫後,總結進度」),請嘗試移除它。如果您發現 Claude Opus 4.7 面向使用者的更新在長度或內容上未能很好地校準至您的使用案例,請在提示中明確描述這些更新應該是什麼樣子,並提供範例。
預設產生較少的子代理: Claude Opus 4.7 預設傾向於產生較少的子代理。然而,此行為可透過提示來引導;請向 Claude Opus 4.7 明確說明何時需要子代理。
這些並非必要,但會改善您的使用體驗:
重新評估 max_tokens: 由於相同的文字在 Claude Opus 4.7 上會產生更高的 token 計數,請更新您的 max_tokens 參數以提供額外的餘裕,包括壓縮觸發器。提示介入、task_budget 和 effort 可協助控制成本並確保適當的 token 使用。
稽核 token 計數預期: 任何在用戶端估算 token 或假設固定 token 對字元比率的程式碼路徑,都應針對 Claude Opus 4.7 重新測試。使用 Token 計數端點進行驗證。
採用 task budgets(beta): Claude Opus 4.7 引入了 task budgets(任務預算)。這些預算讓您告知 Claude 在完整的代理迴圈中有多少 token 可用,包括思考、工具呼叫、工具結果和最終輸出。模型會看到持續遞減的倒數計時,並利用它來排定工作優先順序,並在預算消耗時優雅地完成任務。若要使用,請設定 beta 標頭 task-budgets-2026-03-13 並將以下內容新增至您的輸出設定:
claude-opus-4-6 更新為 claude-opus-4-7(或更新別名)。temperature、top_p 和 top_k。thinking: {type: "enabled", budget_tokens: N} 替換為 thinking: {type: "adaptive"} 加上 effort 參數。max_tokens 以因應更新的 tokenization。如果您從 Claude Opus 4.5、Opus 4.1(已棄用)或更早的模型直接遷移至 Claude Opus 4.7,請套用上述所有 Opus 4.7 變更,加上本節中在 Opus 4.5 和 Opus 4.7 之間生效的累積變更。如果您從 Opus 4.6 遷移,您只需要上述 Opus 4.7 章節。
# Opus 遷移
model = "claude-opus-4-5" # Before
model = "claude-opus-4-7" # After移除預填已在上述 Opus 4.7 重大變更中涵蓋。
工具參數引號處理: Claude Opus 4.6 及更新的模型在工具呼叫引數中可能產生略有不同的 JSON 字串跳脫(例如,Unicode 跳脫或正斜線跳脫的不同處理方式)。如果您將工具呼叫 input 解析為原始字串而非使用 JSON 解析器,請驗證您的解析邏輯。標準 JSON 解析器(如 json.loads() 或 JSON.parse())會自動處理這些差異。
這些變更會改善您在 Opus 4.7 上的體驗。標記為**(Opus 4.7 上必要)**的項目在 Opus 4.6 推出時是選用建議,但現在是強制性的;其餘項目仍為建議。
遷移至 adaptive thinking(Opus 4.7 上必要): thinking: {type: "enabled", budget_tokens: N} 在 Claude Opus 4.7 上會回傳 400 錯誤。請切換至 thinking: {type: "adaptive"} 並使用 effort 參數來控制思考深度。請參閱 Adaptive thinking。
如果您從 Opus 4.1(已棄用)或更早的模型直接遷移至 Claude Opus 4.7,請套用本指南頂部的 Claude Opus 4.7 變更和上述累積變更,加上本節中的額外變更。
# 來自 Opus 4.1
model = "claude-opus-4-1-20250805" # Before
model = "claude-opus-4-7" # After
# 來自 Sonnet 3.7
model = "claude-3-7-sonnet-20250219" # Before
model = "claude-opus-4-7" # After移除取樣參數
從 Claude 3.x 模型遷移時,這是一項重大變更。
從 Claude Opus 4.7 開始,將 temperature、top_p 或 top_k 設定為任何非預設值將回傳 400 錯誤。最安全的遷移路徑是從請求中完全省略這些參數,並使用提示來引導模型的行為。如果您之前使用 temperature = 0 來追求確定性,請注意它從未保證完全相同的輸出。
token-efficient-tools-2025-02-19 和 output-128k-2025-02-19。所有 Claude 4+ 模型都內建 token 高效工具使用,這些標頭沒有作用。claude-opus-4-7output_config.formatthinking: {type: "enabled", budget_tokens: N} 替換為 thinking: {type: "adaptive"} 加上 effort 參數(在 Opus 4.7 上回傳 400)effort-2025-11-24 beta 標頭(effort 現已 GA)fine-grained-tool-streaming-2025-05-14 beta 標頭interleaved-thinking-2025-05-14 beta 標頭(adaptive thinking 會自動啟用 interleaved thinking)Claude Sonnet 4.6 結合了強大的智慧與快速的效能,具備改進的代理搜尋能力,並在搭配網頁搜尋或網頁擷取使用時提供免費的程式碼執行。它非常適合日常程式編寫、分析和內容任務。
如需完整的功能概覽,請參閱模型概覽。
Sonnet 4.6 定價為每百萬輸入 token $3,每百萬輸出 token $15。詳情請參閱 Claude 定價。
更新您的模型名稱:
# 來自 Sonnet 4.5
model = "claude-sonnet-4-5" # Before
model = "claude-sonnet-4-6" # After不再支援預填助理訊息
從 Sonnet 4.5 或更早版本遷移時,這是一項重大變更。
在 Sonnet 4.6 上預填助理訊息會回傳 400 錯誤。請改用結構化輸出、系統提示指令或 output_config.format。
常見的預填使用案例與遷移方式:
控制輸出格式(強制 JSON/YAML 輸出):使用結構化輸出或具有 enum 欄位的工具來進行分類任務。
消除前言(移除「以下是...」等措辭):在系統提示中新增直接指示:「直接回應,不要有前言。不要以『以下是...』、『根據...』等措辭開頭。」
避免不當拒絕: Claude 現在在適當拒絕方面表現更好。在使用者訊息中清楚提示而不使用預填應該就足夠了。
延續(恢復中斷的回應):將延續移至使用者訊息:「您先前的回應被中斷,結尾為 [previous_response]。請從中斷處繼續。」
更新取樣參數
從 Claude 3.x 模型遷移時,這是一項重大變更。
僅使用 temperature 或 top_p 其中之一,不要同時使用兩者。
更新工具版本
從 Claude 3.x 模型遷移時,這是一項重大變更。
更新至最新的工具版本(text_editor_20250728、code_execution_20250825)。移除任何使用 undo_edit 命令的程式碼。
處理 refusal 停止原因
更新您的應用程式以處理 refusal 停止原因。
針對行為變更更新您的提示
fine-grained-tool-streaming-2025-05-14 beta 標頭: Fine-grained tool streaming 在 Sonnet 4.6 上現已 GA,不再需要 beta 標頭。output_format 遷移至 output_config.format: output_format 參數已棄用。請改用 output_config.format。考慮從 Sonnet 4.5 遷移至 Sonnet 4.6,後者以相同的價格提供更高的智慧。
Sonnet 4.6 預設的 effort 層級為 high,與沒有 effort 參數的 Sonnet 4.5 不同。從 Sonnet 4.5 遷移至 Sonnet 4.6 時,請考慮調整 effort 參數。如果未明確設定,您可能會在預設 effort 層級下遇到較高的延遲。
如果您在 Sonnet 4.5 上未使用擴展思考,您可以在 Sonnet 4.6 上繼續不使用它。您應該明確將 effort 設定為適合您使用案例的層級。在 low effort 且停用思考的情況下,您可以預期相對於未使用擴展思考的 Sonnet 4.5 有相似或更好的效能。
如果您在 Sonnet 4.5 上使用帶有 budget_tokens 的擴展思考,它在 Sonnet 4.6 上仍可運作但已棄用。請遷移至搭配 effort 參數的 adaptive thinking。
Adaptive thinking 是 Sonnet 4.6 上 budget_tokens 的建議替代方案。它特別適合以下工作負載模式:
high effort 開始。如果延遲或 token 使用量是考量因素,請降低至 medium。使用 adaptive thinking 時,請在您的任務上評估 medium 和 high effort。正確的層級取決於您的工作負載在品質、延遲和 token 使用量之間的權衡。
如果您在使用 adaptive thinking 時發現行為不一致或品質退化,請先嘗試降低 effort 設定或使用 max_tokens 作為硬性限制。帶有 budget_tokens 的擴展思考在 Sonnet 4.6 上仍可運作,但已棄用且不再建議使用。
如果您在遷移期間需要暫時保留 budget_tokens,約 16k token 的預算可為較困難的問題提供餘裕,而不會有 token 使用失控的風險。此設定已棄用,將在未來的模型版本中移除。
對於代理程式編寫、前端設計、工具密集型工作流程和複雜的企業工作流程,請從 medium effort 開始。如果您發現延遲過高,請考慮將 effort 降低至 low。如果您需要更高的智慧,請考慮將 effort 提高至 high 或遷移至 Opus 4.7。
對於聊天、內容生成、搜尋、分類和其他非程式編寫任務,請從搭配擴展思考的 low effort 開始。如果您需要更深入的處理,請將 effort 提高至 medium。
claude-sonnet-4-6output_config.formattext_editor_20250728、code_execution_20250825);不支援舊版本(如果從 3.x 遷移)undo_edit 命令的程式碼(如適用)temperature 或 top_p 其中之一,不要同時使用兩者(如果從 3.x 遷移)refusal 停止原因Claude Sonnet 4.5 結合了強大的智慧與快速的效能,非常適合日常程式編寫、分析和內容任務。
如需完整的功能概覽,請參閱模型概覽。
Sonnet 4.5 定價為每百萬輸入 token $3,每百萬輸出 token $15。詳情請參閱 Claude 定價。
更新您的模型名稱:
# 來自 Sonnet 3.7
model = "claude-3-7-sonnet-20250219" # Before
model = "claude-sonnet-4-5-20250929" # After這些重大變更適用於從 Claude 3.x Sonnet 模型遷移時。
更新取樣參數
從 Claude 3.x 模型遷移時,這是一項重大變更。
僅使用 temperature 或 top_p 其中之一,不要同時使用兩者。
更新工具版本
從 Claude 3.x 模型遷移時,這是一項重大變更。
更新至最新的工具版本(text_editor_20250728、code_execution_20250825)。移除任何使用 undo_edit 命令的程式碼。
處理 refusal 停止原因
更新您的應用程式以處理 refusal 停止原因。
針對行為變更更新您的提示
claude-sonnet-4-5-20250929text_editor_20250728、code_execution_20250825);不支援舊版本(若從 3.x 遷移)undo_edit 命令的程式碼(如適用)temperature 或 top_p 其中之一,不可同時使用兩者(若從 3.x 遷移)refusal 停止原因Claude Haiku 4.5 是速度最快且最智慧的 Haiku 模型,具備接近前沿的效能,為互動式應用程式和大量處理作業提供優質的模型品質。
如需完整的功能概述,請參閱模型概述。
Haiku 4.5 的定價為每百萬個輸入 token 1 美元,每百萬個輸出 token 5 美元。詳情請參閱 Claude 定價。
更新您的模型名稱:
# 來自 Haiku 3.5
model = "claude-3-5-haiku-20241022" # Before
model = "claude-haiku-4-5-20251001" # After**檢視新的速率限制:**Haiku 4.5 的速率限制與 Haiku 3.5 是分開的。詳情請參閱速率限制文件。
若要在程式編寫和推理任務上獲得顯著的效能提升,請考慮使用 thinking: {type: "enabled", budget_tokens: N} 啟用擴展思考。
**探索新功能:**請參閱模型概述,了解上下文感知、更大的輸出容量(64k token)、更高的智慧程度以及更快的速度等詳細資訊。
以下重大變更適用於從 Claude 3.x Haiku 模型遷移的情況。
更新取樣參數
從 Claude 3.x 模型遷移時,這是一項重大變更。
僅使用 temperature 或 top_p 其中之一,不可同時使用兩者。
更新工具版本
從 Claude 3.x 模型遷移時,這是一項重大變更。
更新至最新的工具版本(text_editor_20250728、code_execution_20250825)。移除任何使用 undo_edit 命令的程式碼。
處理 refusal 停止原因
更新您的應用程式以處理 refusal 停止原因。
針對行為變更更新您的提示
claude-haiku-4-5-20251001text_editor_20250728、code_execution_20250825);不支援舊版本undo_edit 命令的程式碼(如適用)temperature 或 top_p 其中之一,不可同時使用兩者refusal 停止原因client.messages.create(
model="claude-mythos-preview",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 10000},
messages=[{"role": "user", "content": "..."}],
)之後(Claude Mythos 5):
client.messages.create(
model="claude-mythos-5",
max_tokens=16000,
messages=[{"role": "user", "content": "..."}],
)Assistant prefill: 在 claude-mythos-5 上不支援預填 assistant 訊息,會回傳 400 錯誤,與 Claude Mythos Preview 相同。請改用系統提示指令。
思考輸出: 在 claude-mythos-5 上,原始思維鏈永遠不會回傳,但當 thinking.display 設為 summarized 時,思考區塊仍會帶有可讀的摘要文字。在同一模型上繼續對話時,請原封不動地傳回思考區塊。請參閱 Claude Fable 5 和 Claude Mythos 5 上的思考輸出。
thinking 和 redacted_thinking 區塊。來自 claude-mythos-5 的思考區塊與產生它們的模型綁定,而 Claude Fable 5 和 Claude Mythos 5 以外的模型會靜默忽略它們。移除這些區塊可使跨模型請求保持精簡且一致。claude-mythos-preview 遷移時,token 數量大致不變。client.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
thinking={"type": "adaptive"},
output_config={"effort": "high"},
messages=[{"role": "user", "content": "..."}],
)之後(Claude Fable 5):
client.messages.create(
model="claude-fable-5",
max_tokens=16000,
output_config={"effort": "high"},
messages=[{"role": "user", "content": "..."}],
)擴展思考與思考預算(不變): 手動擴展思考(thinking: {type: "enabled", budget_tokens: N})在 claude-fable-5 上不受支援,會回傳 400 錯誤,與 Claude Opus 4.8 相同。budget_tokens 沒有直接的替代方案:思考是自適應的,而 effort 參數是獨立的輸出層級控制,而非思考預算。
Assistant prefill(不變): 在 claude-fable-5 上不支援預填 assistant 訊息,會回傳 400 錯誤,與 Claude Opus 4.8 相同。請改用系統提示指令。
思考輸出: 在 claude-fable-5 上,原始思維鏈永遠不會回傳,但當 thinking.display 設為 summarized 時,思考區塊仍會帶有可讀的摘要文字。在同一模型上繼續對話時,請原封不動地傳回思考區塊。請參閱 Claude Fable 5 和 Claude Mythos 5 上的思考輸出。
安全分類器與 refusal 停止原因: claude-fable-5 會在請求上以及回應生成期間執行安全分類器。當分類器拒絕請求時,Messages API 會以成功的 HTTP 200 回應回傳 stop_reason: "refusal",而非錯誤。stop_details.category 欄位會報告觸發的分類器,類別包括 "cyber"、"bio" 和 "reasoning_extraction" 等,或當拒絕未對應到任何具名類別時為 null。完整集合請參閱拒絕類別表。
對於在產生任何輸出之前被拒絕的請求,您不會被收取輸入 token 的費用。當分類器在串流中途觸發時,輸入和已串流的輸出會被計費;請捨棄部分輸出。
若要自動在另一個模型上重新執行被拒絕的請求,請傳遞選擇性加入的 fallbacks 參數,該參數在 Claude API 和 Claude Platform on AWS 上處於 beta 階段。此參數在 Message Batches API 或 Amazon Bedrock、Vertex AI 和 Microsoft Foundry 上不提供;在這三個平台上,請在用戶端執行重試或使用 SDK 的 refusal-fallback 中介軟體。請參閱處理停止原因。
從 high effort 開始: effort 參數的預設值仍為 high。在 Claude Opus 4.8 上,針對程式編寫和高自主性工作的建議是明確設定 xhigh。在 claude-fable-5 上,對大多數任務使用 high 作為預設值,並將 xhigh 保留給對能力最敏感的工作負載。claude-fable-5 上較低的 effort 設定仍表現良好,且通常超越先前模型上的 xhigh 效能。如果任務完成但耗時超過必要,請降低 effort。請參閱 Claude Fable 5 的提示技巧。
較低的提示快取最小值: claude-fable-5 上可快取的最小提示長度為 512 個 token,低於 Claude Opus 4.8 上的 1,024 個 token。在 Claude Opus 4.8 上因太短而無法快取的提示現在可以建立快取項目,無需變更程式碼。在 Amazon Bedrock 上,claude-fable-5 的最小值為 1,024 個 token。各模型的最小值請參閱提示快取。
display: "summarized"thinking 和 redacted_thinking 區塊。來自 claude-fable-5 的思考區塊與產生它們的模型綁定,而 Claude Fable 5 和 Claude Mythos 5 以外的模型會靜默忽略它們。移除這些區塊可使跨模型請求保持精簡且一致。例外情況是兌換 fallback credit,這需要按照該功能的確切規則回傳請求主體。stop_reason: "refusal" 並讀取 stop_details.category 欄位。若要自動在另一個模型上重新執行被拒絕的請求,請考慮使用選擇性加入的 fallbacks 參數(beta)。請參閱處理停止原因。effort 設定。對大多數任務從 high 開始,包括在 Claude Opus 4.8 上以 xhigh 執行的工作負載。claude-opus-4-8 遷移時,token 數量大致不變;每 token 定價不同。systemmessagesrole: "system"拒絕停止詳情: 拒絕回應上的 stop_details 物件(自 Claude Opus 4.7 起提供)現已公開記錄。當模型拒絕請求時,除了現有的 refusal 停止原因外,它還會識別拒絕的類別。不需要 beta 標頭,且無法選擇退出。請參閱處理停止原因。
較低的提示快取最小值: Claude Opus 4.8 上可快取的最小提示長度為 1,024 個 token,低於 Claude Opus 4.7。在 Claude Opus 4.7 上因太短而無法快取的提示現在可以建立快取項目,無需變更程式碼。各模型的最小值請參閱提示快取。
Effort 層級重新校準: 與 Claude Opus 4.7 相比,Claude Opus 4.8 上每個 effort 層級背後的 token 分配有所變更:medium 允許稍多的思考,high 稍少,而 xhigh 則大幅增加。如果您針對 Claude Opus 4.7 的成本或延遲調整了 effort 層級,請在調整之前先在相同層級重新建立基準。請參閱 Effort。
client.messages.create(
model="claude-opus-4-6",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 10000},
messages=[{"role": "user", "content": "..."}],
)之後(Claude Opus 4.7):
client.messages.create(
model="claude-opus-4-7",
max_tokens=16000,
thinking={"type": "adaptive"},
output_config={"effort": "high"}, # or "max", "xhigh", "medium", "low"
messages=[{"role": "user", "content": "..."}],
)自適應思考可透過提示來引導。關於在模型過度思考或思考不足時進行調整的指引,請參閱校準 effort 與思考深度。
取樣參數已移除: 在 Claude Opus 4.7 上將 temperature、top_p 或 top_k 設為任何非預設值會回傳 400 錯誤。最安全的遷移路徑是從請求負載中完全省略這些參數。在 Claude Opus 4.7 上,提示是引導模型行為的建議方式。如果您之前使用 temperature = 0 來取得確定性,請注意它在先前的模型上也從未保證完全相同的輸出。
思考內容預設省略: 在 Claude Opus 4.7 上,思考區塊仍會出現在回應串流中,但除非您明確選擇加入,否則其 thinking 欄位為空。這是相對於 Claude Opus 4.6 的靜默變更,後者的預設行為是回傳摘要的思考文字。若要在 Claude Opus 4.7 上恢復摘要的思考內容,請將 thinking.display 設為 "summarized":
thinking = {
"type": "adaptive",
"display": "summarized",
}在 Claude Opus 4.7 上預設為 "omitted"。如果您的產品會將推理過程串流給使用者,新的預設值會表現為輸出開始前的長時間停頓;設定 display: "summarized" 以在思考期間恢復可見的進度。詳情請參閱擴展思考。
更新的 token 計數: Claude Opus 4.7 使用新的 tokenizer,這有助於其在廣泛任務上的效能提升。新的 tokenizer 在處理文字時可能使用約 1 倍至 1.35 倍的 token(最多約多 35%,視內容而異),相較於先前的模型。
對於 Claude Opus 4.7,/v1/messages/count_tokens 回傳的 token 數量會與 Claude Opus 4.6 不同。Token 效率可能因工作負載型態而異。
提示介入、task_budget 和 effort 可協助控制成本並確保適當的 token 使用。這些控制可能會在模型智能上有所取捨。請更新您的 max_tokens 參數以提供額外的餘裕,包括壓縮觸發器。Claude Opus 4.7 提供 1M 上下文視窗,採用標準 API 定價,無長上下文加價。
Prefill 移除(延續自 Opus 4.6): 在 Claude Opus 4.7 上預填 assistant 訊息會回傳 400 錯誤。請改用結構化輸出、系統提示指令或 output_config.format。
更嚴格的 effort 校準: 與 Claude Opus 4.6 相比有顯著變化,Claude Opus 4.7 嚴格遵守 effort 層級,特別是在低端。在 low 和 medium 層級下,模型會將其工作範圍限定在所要求的內容,而非超出預期。
這對延遲和成本有利,但在以 low effort 執行中等複雜度的任務時,存在思考不足的風險。如果您在複雜問題上觀察到淺層推理,請將 effort 提高至 high 或 xhigh,而非透過提示來繞過此問題。
如果您因延遲考量需要將 effort 保持在 low,請新增針對性的指引:「此任務涉及多步驟推理。在回應前請仔細思考問題。」請參閱 Claude Opus 4.7 的建議 effort 層級。
預設較少的工具呼叫: Claude Opus 4.7 傾向於比 Claude Opus 4.6 更少使用工具,而更多地使用推理。在大多數情況下,這會產生更好的結果。
若要增加工具使用,請提高 effort 設定。high 或 xhigh effort 設定在代理搜尋和程式編寫中顯示出明顯更多的工具使用。您也可以調整提示,明確指示模型何時以及如何正確使用其工具。
即時網路安全防護: Claude Opus 4.7 新增的功能,涉及禁止或高風險主題的請求可能會導致拒絕。對於合法的安全工作,例如滲透測試、漏洞研究或紅隊演練,請申請 Cyber Verification Program 以請求降低限制。相關背景請參閱 Safeguards, warnings, and appeals。
高解析度影像支援: Claude Opus 4.7 是首個支援高解析度影像的 Claude 模型。最大影像解析度在長邊為 2576 像素,高於先前模型的 1568 像素。這為視覺密集型工作負載帶來提升,對於電腦使用、螢幕截圖理解和文件分析特別有價值。
高解析度支援是自動的,不需要 beta 標頭或用戶端選擇加入。需要規劃的兩件事:
max_tokens 和成本預期,或者如果您不需要額外的精細度,請在傳送前進行降採樣。詳情請參閱 Claude Opus 4.7 的高解析度影像支援。
output_config = {
"effort": "high",
"task_budget": {"type": "tokens", "total": 128000},
}您可能需要針對您的使用案例嘗試不同的任務預算。如果給予模型的任務預算過於嚴格,它可能會以較不徹底的方式完成任務,並引用其預算作為限制。
對於品質比速度更重要的開放式代理任務,請勿設定任務預算。將任務預算保留給需要模型將其工作範圍限定在 token 配額內的工作負載。任務預算的最小值為 20k token。
任務預算並非硬性上限;它是模型知曉的建議。它與 max_tokens 不同:
task_budget: 跨整個代理迴圈的建議性上限。模型會看到它並用它來調整自己的節奏。max_tokens: 每個請求生成 token 的硬性上限。它不會傳遞給模型,因此模型不知道它的存在。當您希望模型自我調節時使用 task_budget,並使用 max_tokens 作為硬性上限來限制使用量。
在 max 或 xhigh effort 下設定較大的 max_tokens: 如果您以 max 或 xhigh effort 執行 Claude Opus 4.7,請設定較大的最大輸出 token 預算,讓模型有空間在其子代理和工具呼叫中進行思考和行動。從 64k token 開始,然後進行調整。
如果不需要高解析度,請對影像進行降採樣: Claude Opus 4.7 支援最高 2576px / 3.75MP 的影像。高解析度影像會使用更多 token。如果不需要額外的影像精細度,請在傳送給 Claude 之前對影像進行降採樣,以避免 token 使用量增加。請參閱影像與視覺。
xhigh 或 max effort,請將 max_tokens 提高至至少 64k 作為起點。response = client.beta.messages.create(
model="claude-opus-4-5",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 32000},
betas=["interleaved-thinking-2025-05-14"],
messages=[{"role": "user", "content": "Your prompt here"}],
)請注意,此遷移也從 client.beta.messages.create 移至 client.messages.create。Adaptive thinking 和 effort 是 GA 功能,不需要 beta SDK 命名空間或任何 beta 標頭。
移除 effort beta 標頭: effort 參數現已 GA。請從您的請求中移除 betas=["effort-2025-11-24"]。
移除 fine-grained tool streaming beta 標頭: Fine-grained tool streaming 現已 GA。請從您的請求中移除 betas=["fine-grained-tool-streaming-2025-05-14"]。
移除 interleaved thinking beta 標頭: Adaptive thinking 在 Claude Opus 4.7、Opus 4.6 和 Sonnet 4.6 上會自動啟用 interleaved thinking。請從您的請求中移除 betas=["interleaved-thinking-2025-05-14"]。此標頭在 Sonnet 4.6 上搭配手動擴展思考時仍可運作,但手動模式已棄用。
遷移至 output_config.format: 如果使用結構化輸出,請將 output_format={...} 更新為 output_config={"format": {...}}。舊參數仍可運作但已棄用,將在未來的模型版本中移除。
# 之前 - 這在 Claude 4+ 模型中會產生錯誤
response = client.messages.create(
model="claude-3-7-sonnet-20250219",
temperature=0.7,
top_p=0.9, # Non-default sampling params return 400 on Opus 4.7
# ...
)
# 之後
response = client.messages.create(
model="claude-opus-4-7",
# ...
)更新工具版本
從 Claude 3.x 模型遷移時,這是一項重大變更。
更新至最新的工具版本。移除任何使用 undo_edit 命令的程式碼。
# 之前
tools = [{"type": "text_editor_20250124", "name": "str_replace_editor"}]
# 之後
tools = [{"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"}]處理 refusal 停止原因
更新您的應用程式以處理 refusal 停止原因:
response = client.messages.create(...)
if response.stop_reason == "refusal":
# 適當地處理拒絕情況
pass處理 model_context_window_exceeded 停止原因
Claude 4.5+ 模型在生成因達到上下文視窗限制而停止時(而非達到請求的 max_tokens 限制),會回傳 model_context_window_exceeded 停止原因。更新您的應用程式以處理此新的停止原因:
response = client.messages.create(...)
if response.stop_reason == "model_context_window_exceeded":
# 適當處理上下文視窗限制
pass驗證工具參數處理(尾隨換行符號)
Claude 4.5+ 模型會保留工具呼叫字串參數中先前被移除的尾隨換行符號。如果您的工具依賴對工具呼叫參數的精確字串比對,請驗證您的邏輯能正確處理尾隨換行符號。
針對行為變更更新您的提示
Claude 4+ 模型具有更簡潔、直接的溝通風格,並需要明確的指示。請查閱提示最佳實務以取得最佳化指引。
output_format 遷移至 output_config.format(如適用)temperature、top_p 和 top_k(非預設值在 Opus 4.7 上回傳 400)text_editor_20250728、code_execution_20250825)refusal 停止原因model_context_window_exceeded 停止原因token-efficient-tools-2025-02-19、output-128k-2025-02-19)上下文補充 / 角色一致性(在長對話中重新整理上下文):將先前預填至助理的提醒改為注入至使用者回合中。
工具參數 JSON 跳脫可能不同
從 Sonnet 4.5 或更早版本遷移時,這是一項重大變更。
工具參數中的 JSON 字串跳脫可能與先前的模型不同。標準 JSON 解析器會自動處理此問題,但自訂的基於字串的解析可能需要更新。
Claude 4 模型具有更簡潔、直接的溝通風格。請查閱提示最佳實務以取得最佳化指引。
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=8192,
output_config={"effort": "low"},
messages=[{"role": "user", "content": "Your prompt here"}],
)response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=64000,
thinking={"type": "adaptive"},
output_config={"effort": "medium"},
messages=[{"role": "user", "content": "Your prompt here"}],
)response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=16384,
thinking={"type": "enabled", "budget_tokens": 16384},
output_config={"effort": "medium"},
betas=["interleaved-thinking-2025-05-14"],
messages=[{"role": "user", "content": "Your prompt here"}],
)response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=8192,
thinking={"type": "enabled", "budget_tokens": 16384},
output_config={"effort": "low"},
betas=["interleaved-thinking-2025-05-14"],
messages=[{"role": "user", "content": "Your prompt here"}],
)fine-grained-tool-streaming-2025-05-14output_format 遷移至 output_config.formatthinking: {type: "enabled", budget_tokens: N} 遷移至搭配 effort 參數的 thinking: {type: "adaptive"}(budget_tokens 已棄用,將在未來版本中移除)Claude 4 模型具有更簡潔、直接的溝通風格。請查閱提示最佳實務以取得最佳化指引。
Claude 4 模型具有更簡潔、直接的溝通風格。請參閱提示最佳實踐以取得最佳化指引。