Claude Platform Docs
模型與定價Claude Sonnet 5.5

Claude Sonnet 5.5 的新功能

從 Claude Sonnet 5 遷移到 Claude Sonnet 5.5 時有哪些變化:破壞性變更、功能支援、行為差異、定價與可用性。

Claude Sonnet 5.5 提供速度與智慧的最佳組合。有五項「breaking changes」(破壞性變更)會影響已在 Claude Sonnet 5 上執行的程式碼:

另有一項變更會改變回應的結構,但不會導致任何請求失敗:工具呼叫之間的文字會以 thinking 區塊傳回。若應用程式會將這些文字串流給使用者,則在工具呼叫之間將不會有任何輸出,直到它設定會傳回文字的 display 值,或使用 between_tools 關閉預先思考為止。

新模型

模型Claude API ID說明
Claude Sonnet 5.5速度與智慧的最佳組合

「Adaptive thinking」(自適應思考)預設為開啟,而「effort parameter」(努力程度參數)控制思考的深度。它在 Claude API 上的預設值為 high。「Tokenizer」(分詞器)與 Claude Sonnet 5 相同,因此相同的文字會產生相同的 token 數量。關於「context window」(上下文視窗)、輸出限制、知識截止日期和價格,請參閱 Claude Sonnet 5.5 模型頁面。

如需所有目前的模型,請參閱模型概覽。

破壞性變更

使用 between_tools 關閉預先思考

若要在 Claude Sonnet 5.5 上關閉「up-front thinking」(預先思考),請傳送 thinking: {"type": "between_tools"},而非 "disabled"。這是此模型上最低的思考設定。所有提供 Claude Sonnet 5.5 的平台皆可使用此設定,且不需要 beta 標頭。模型在工具呼叫之間撰寫的簡短「progress updates」(進度更新)仍會以 thinking 區塊的形式傳回,並附帶其摘要文字。請將這些區塊連同助理回合的其餘內容原封不動地傳回。您傳回的進度更新區塊會提供模型它所撰寫的完整筆記,而非摘要。如果您的請求未使用工具,回應將只包含文字,與在 Claude Sonnet 5 上使用 disabled 時相同。

在 Claude Sonnet 5.5 上,傳送 thinking: {"type": "disabled"} 的請求會傳回 400 invalid_request_error,其訊息會指向 between_tools。

between_tools 可在 low、medium 和 high 努力程度下使用。在 xhigh 或 max 努力程度下,使用 between_tools 的請求會傳回 400 錯誤。若要以 xhigh 或 max 執行,請使用自適應思考:省略 thinking 欄位,或傳送等效的 thinking: {"type": "adaptive"}。使用 between_tools 時,努力程度無法在對話中途變更:與目前生效層級不同的逐訊息 output_config.effort 會傳回 400 錯誤。若要在每個回合使用不同的努力程度,請使用自適應思考。

between_tools 不接受其他欄位:與其一同傳送的 display、budget_tokens 或 block_binding 會傳回 400 錯誤。手動思考預算(thinking: {"type": "enabled", "budget_tokens": N})會傳回 400 錯誤。請參閱思考以及遷移指南中的變更前後對照。

不支援強制工具使用

Claude Sonnet 5.5 不支援「forced tool use」(強制工具使用)。將 tool_choice 設為 {"type": "any"} 或 {"type": "tool", "name": "..."} 會傳回 400 invalid_request_error:

tool_choice: type "tool" and "any" are not supported for this model.

支援 tool_choice: {"type": "auto"}(預設值)和 {"type": "none"}。相同的檢查也適用於 token 計數端點。若要取得符合結構描述的工具輸入,請保留 tool_choice: {"type": "auto"},並透過嚴格工具使用設定 strict: true,或將結構描述移至結構化輸出。若要讓模型呼叫工具而非以文字回覆,請在提示中說明何時適用該工具。遷移指南中提供了變更前後對照。

思考區塊與模型及對話綁定

每個「thinking block」(思考區塊)都會記錄產生它的模型。每個模型都能讀取自己的區塊,但只能讀取部分其他模型的區塊。Claude Sonnet 5.5 可讀取來自 Claude Sonnet 5、Claude Opus 4.8、Claude Haiku 4.5 及更早模型的思考區塊,但無法讀取來自 Claude Opus 5、Claude Opus 5.5 或任何 Claude Fable 或 Claude Mythos 模型的思考區塊。沒有其他模型能讀取 Claude Sonnet 5.5 的思考區塊。

因此,從 Claude Sonnet 5 轉移到 Claude Sonnet 5.5 的對話會保留其推理內容,而從 Claude Sonnet 5.5 轉移到任何其他模型的對話,在切換後的回合中將不會有這些推理內容。當請求包含目標模型無法讀取的區塊時,API 會在模型看到之前將其捨棄:請求會成功,且被捨棄的區塊不會計費。使用 thinking-binding-controls-2026-08-01 beta 標頭時,捨棄情況會在頂層的 input_transformations 陣列中回報。請參閱在對話中途切換模型。

API 也會檢查 Claude Sonnet 5.5 思考區塊之前的任何內容自該區塊產生以來是否有所變更:包括 system 提示、tools 或較早的訊息。對於在 2026 年 8 月 31 日 00:00 UTC 當天或之後建立的帳戶,在 Claude API、Amazon Bedrock 和 Google Cloud 上,API 預設會強制執行此檢查。在這些帳戶上,於此類變更後重新傳送區塊的請求會傳回 400 錯誤。若要改為捨棄受影響的區塊,請傳送 thinking-binding-controls-2026-08-01 beta 標頭,並將 thinking.block_binding.prefix_mismatch_behavior 設為 "drop_block"。在較舊的帳戶上,將該欄位設為任一值都會讓請求選擇加入此檢查。block_binding 僅適用於 thinking: {"type": "adaptive"}。使用 between_tools 時,請讓歷史記錄保持僅附加,或從被編輯的回合起移除思考區塊。

請讓對話保持僅附加,使檢查永遠不會失敗:使用對話中途的系統訊息來變更指示或工具,而非進行編輯。請參閱保留思考以及遷移指南中關於此變更的說明。

Claude API 和 Google Cloud 上不支援 computer_20251124 電腦使用工具

在 Claude API 和 Google Cloud 上,Claude Sonnet 5.5 僅透過 computer_toolset_20260801 工具集支援「computer use」(電腦使用)。宣告較早的 computer_20251124 工具的請求會傳回 400 invalid_request_error。在 Claude API 上,訊息會指出被拒絕的類型,接著列出模型接受的工具類型。其開頭如下:

'claude-sonnet-5-5' does not support tool types: computer_20251124.

在 Amazon Bedrock 上,Claude Sonnet 5.5 接受較早的 computer_20251124 工具。

若要遷移在 Claude API 或 Google Cloud 上的現有整合,請依照從 computer_20251124 遷移操作,其中展示了變更前後的請求。移除 beta 標頭,將 tools 項目替換為 {"type": "computer_toolset_20260801"},並更新您的代理迴圈以處理成員 tool_use 區塊、批次動作以及結果上的 toolset_name。此工具集可在 Claude API 和 Google Cloud 上使用。關於其他平台,請參閱電腦使用工具的相容性章節。已使用此工具集的整合以及瀏覽器使用工具無需變更。

不支援部分顧問工具配對

使用「advisor tool」(顧問工具,beta)時,Claude Sonnet 5.5「executor」(執行者)需要以 Claude Mythos 5.1、Claude Fable 5.1、Claude Mythos 5、Claude Fable 5、Claude Opus 5.5 或 Claude Opus 5 作為其顧問,或以 Claude Sonnet 5.5 本身作為顧問。Claude Opus 4.8、Claude Opus 4.7 和 Claude Sonnet 5 顧問可搭配 Claude Sonnet 5 執行者使用,但搭配 Claude Sonnet 5.5 執行者時會傳回 400 invalid_request_error。Claude Sonnet 5.5 接受的每個顧問都會以加密形式傳回其建議,作為 advisor_redacted_result 區塊,因此您的用戶端無法讀取建議文字。請參閱顧問工具的模型相容性和結果變體。

功能支援

Claude Sonnet 5.5 支援逐訊息努力程度(beta)、對話中途的系統訊息、對話中途的工具變更(beta)、最低可快取提示為 512 個 token 的「prompt caching」(提示快取)、「batch processing」(批次處理)、Files API、PDF 支援、視覺,以及伺服器端和用戶端工具。逐訊息努力程度、對話中途的系統訊息和對話中途的工具變更在 Claude Sonnet 5 上無法使用,而 Claude Sonnet 5 的最低可快取提示為 1,024 個 token。在 Claude API 和 Google Cloud 上,電腦使用需要 computer_toolset_20260801 工具集(請參閱破壞性變更)。關於模型可用性,請參閱各功能的頁面。

隨需壓縮(beta)

使用 compact-2026-09-04 beta 標頭時,傳送頂層 compaction 參數的請求會傳回一個已簽署的 compaction 區塊,其中摘要了整個對話。接著,您將該區塊放在最前面傳送,以取代被摘要的訊息。您可以自行選擇何時壓縮,而在符合壓縮與保留思考中所述條件的情況下,您保留的回合中的思考區塊在替換後仍可保持有效。這在 Claude Sonnet 5.5 上很重要,因為其思考區塊與對話綁定。關於平台可用性和完整的請求流程,請參閱隨需壓縮。

在訊息中定義工具(beta)

使用 inline-tools-2026-09-15 beta 標頭時,對話中途系統訊息中的 tool_addition 區塊可以攜帶完整的工具定義,而非參照。您可以在對話中途新增工具、變更其結構描述,或將伺服器工具移至較新版本,而無需編輯 tools,也不會失去提示快取。請參閱在訊息中定義工具。

思考區塊僅限於產生它們的帳戶

Claude Sonnet 5.5 產生的思考區塊僅能在產生它們的帳戶中使用,或在與其連結的帳戶中使用。當其他帳戶傳送這些區塊之一時,API 會在模型看到之前捨棄該區塊,且請求會成功。在 Claude API 和 Google Cloud 上,使用 thinking-binding-controls-2026-08-01 beta 標頭時,回應會在 input_transformations 中列出每個被捨棄的區塊,並附帶 reason: "organization_binding_mismatch"。來自較早模型的區塊不受影響。請參閱保留思考。

行為差異

Claude Sonnet 5.5 與 Claude Sonnet 5 在幾個方面有所不同,這些差異無需任何程式碼變更就會顯現。為 Claude Sonnet 5.5 撰寫提示針對每一項提供了指引:

  • 努力程度已重新校準。 某個努力程度層級所產生的思考量與在 Claude Sonnet 5 上不同。請重新執行您的努力程度測試,而非沿用原有設定。除非您的工作負載屬於代理型或對延遲敏感,否則請從 high 開始。對於代理型程式設計和多步驟工具使用,明確定義的任務請從 medium 開始,較困難或較長的任務則改用 high。對於聊天和其他對延遲敏感的工作,請從 medium 或 low 開始。
  • 工具呼叫之間的文字會以思考區塊傳回。 在工具呼叫之間,長度超過一兩句的筆記會以進度更新 thinking 區塊的形式傳回。較短的評論則維持為 text。在預設的 display: "omitted" 下,進度更新區塊的文字為空,因此會將這些筆記串流給使用者的應用程式在工具呼叫之間將不會有任何輸出,且不會出現錯誤。如果您使用 between_tools 關閉預先思考,文字就會傳回。遷移指南說明了如何接收這些文字。
  • 安全防護類別。 模型的安全防護機制可能會以五種 stop_details 類別拒絕請求。"cyber" 表示該請求可能促成網路危害。"bio" 表示它可能促成生物危害。"frontier_llm" 表示它可能協助開發競爭性的 AI 模型。"reasoning_extraction" 表示它要求模型在回應文字中重現其內部推理。"general_harms" 表示它屬於其他使用政策領域。請參閱拒絕、備援與計費。

拒絕、備援與計費

拒絕與備援中的所有內容皆適用於 Claude Sonnet 5.5。被拒絕的請求會傳回 HTTP 200,並附帶 stop_reason: "refusal" 以及指出政策領域的 stop_details 物件。請處理拒絕情況並設定備援。伺服器端備援(fallbacks: "default",beta 版,適用於 Claude API)會在 Claude Sonnet 5 上重試 "cyber" 和 "frontier_llm" 拒絕。它不會重試 "bio"、"reasoning_extraction" 或 "general_harms" 拒絕。您也可以使用 SDK 中介軟體或您自己的重試機制。在任何輸出之前發生的拒絕是否計費取決於其拒絕類別,且無論如何都會計入您的速率限制。請參閱拒絕如何計費。

定價

Claude Sonnet 5.5 的價格與 Claude Sonnet 5 相同,包括提示快取和批次處理的費率。如需完整清單、資料駐留和工具定價,請參閱定價。

可用性

Claude Sonnet 5.5 可在以下平台使用:

從 Claude Sonnet 5 遷移

更新您的模型 ID:

model = "claude-sonnet-5"  # Before
model = "claude-sonnet-5-5"  # After

接著檢查以下六件事:

  1. 如果您的程式碼使用 disabled 關閉思考,請改為傳送 between_tools,並使用 high 或更低的努力程度。
  2. 將 tool_choice 類型 any 和 tool 替換為 auto 並搭配嚴格工具使用。
  3. 讓對話保持僅附加。在編輯較早的歷史記錄後重新傳送 Claude Sonnet 5.5 思考區塊的請求可能會傳回 400 錯誤。請參閱思考區塊與模型及對話綁定。
  4. 如果您在 Claude API 或 Google Cloud 上透過 computer_20251124 使用電腦使用功能,請改用工具集。
  5. 如果您使用顧問工具並以 Claude Opus 4.8、Claude Opus 4.7 或 Claude Sonnet 5 作為顧問,請改用 Claude Sonnet 5.5 接受的顧問。
  6. 如果您的介面會顯示工具呼叫之間的文字,請在使用自適應思考時設定 thinking.display。使用 between_tools 時,即使不設定,文字也會傳回。請參閱工具呼叫之間的文字會以思考區塊傳回。

遷移指南提供了從 Claude Sonnet 5 及更早模型遷移的逐步說明,以及完整的檢查清單。

後續步驟

所有目前 Claude 模型的完整規格與定價。

將程式碼從 Claude Sonnet 5 及更早模型遷移至 Claude Sonnet 5.5。

Claude Sonnet 5.5 特有的行為差異與提示模式。

控制 Claude 回應時使用的 token 數量,從 low 到 max。

自適應思考的運作方式,以及思考區塊如何被保留。

處理 stop_reason: "refusal" 並在其他模型上重試。

Was this page helpful?