Messages上下文管理
壓縮概覽
了解壓縮的作用、隨需壓縮與在 token 閾值時進行壓縮有何不同,以及哪個頁面涵蓋您的任務。
「Compaction」(壓縮)會將對話中較舊的輪次替換為 Claude 在伺服器上撰寫的摘要,因此您不需要自己編寫任何摘要程式碼。它讓長對話或代理任務保持在上下文視窗內,並讓作用中的上下文保持精簡,因為回應品質會隨著對話增長而下降。
如果您想跳過此概覽,請從隨需壓縮開始,將壓縮加入您的應用程式。雖然它和在 token 閾值時進行壓縮都處於 beta 階段,但隨需壓縮涵蓋了更常見的使用案例。若要依規則清除舊的工具結果或舊的思考區塊,而非對其進行摘要,請參閱上下文編輯。
選擇如何壓縮
只要可以使用,就使用隨需壓縮。
| 隨需壓縮 | 在 token 閾值時進行壓縮 | 您自己的摘要器(在用戶端進行壓縮) | |
|---|---|---|---|
| 由誰決定時機 | 由您,透過發送請求 | 由 API,當輸入 token 達到您設定的觸發條件時 | 由您 |
| 您編寫的程式碼 | 一個壓縮迴圈,用於請求摘要並將其替換進去 | 在您一般請求上的一個參數 | 摘要呼叫、其提示,以及歷史記錄重寫 |
| 之後您送回什麼 | 將回傳的區塊放在 messages 的最前面,取代它所摘要的訊息 | 照常附加回應。API 會捨棄該區塊之前的內容 | 您的摘要,作為您自己的一則訊息 |
| 最近的輪次逐字保留 | 是:保留最近輪次的壓縮 | 是,透過壓縮後暫停並重新插入它們 | 是 |
| 在背景執行 | 是:在背景中進行壓縮 | 否:它在達到閾值的請求內執行 | 是,在您自己的程式碼中 |
| 保留的輪次保有其思考,在具有保留思考的模型上 | 是,在壓縮與保留思考中的條件下 | 否:在 Claude Fable 5.1 和 Claude Opus 5.5 上,移除或捨棄您重新插入的輪次中的思考(請參閱閾值壓縮範例) | 否:該思考未通過檢查 |
| Beta 標頭、參數與平台 | compact-2026-09-04 和頂層的 compaction 參數。平台:請參閱隨需相容性清單 | 請參閱閾值相容性清單和基本用法 | 無。它在您的程式碼中執行 |
| 何時選擇它 | 您的應用程式需要控制壓縮發生的時機、無法在撰寫摘要時暫停,或必須保留最近的輪次及其思考 | 您希望 API 在一般請求內管理上下文 | 您已經執行自己的摘要器,且它會用摘要取代整個歷史記錄 |
隨需壓縮選項
隨需壓縮展示了一個在您的應用程式等待時摘要整個對話的迴圈。此清單中的前兩個頁面會改變該迴圈的執行方式,您可以將它們結合使用。第三個則適用於您送回思考區塊並執行上述任一操作的情況。
- 保留最近輪次的壓縮:當最後幾個輪次必須逐字送達 Claude 時。摘要僅涵蓋較舊的輪次。
- 在背景中進行壓縮:當對話無法為摘要暫停時。請求在工作繼續進行時執行,當區塊送達時您再將其替換進去。
- 壓縮與保留思考:如果您在具有保留思考的模型上送回思考區塊,並且保留最近的輪次或在背景壓縮。否則請跳過它。
- 撰寫您自己的摘要提示:當預設摘要捨棄了後續輪次所需的內容時。您的提示會取代預設提示。
- 再次壓縮:當一個已經以壓縮區塊開頭的對話再次變長時。
在其他頁面上尋找這些主題:
- 請求摘要位於隨需壓縮頁面。
- 從摘要繼續位於隨需壓縮頁面。讓您保留的輪次中的思考保持有效的條件位於壓縮與保留思考。
- 未回傳摘要時:請參閱隨需壓縮頁面上的處理缺少摘要或錯誤的情況。
- 與 API 其他部分的搭配方式:請參閱隨需壓縮頁面上的限制以及與其他功能的互動。
- 了解用量:對於隨需壓縮,請參閱計算壓縮用量;對於閾值壓縮,請參閱了解用量。
- 相容性:每種類型都有自己的 beta 標頭,因此每個頁面都有自己的清單。請參閱隨需相容性清單或閾值相容性清單。
閾值壓縮有自己的頁面:在 token 閾值時進行壓縮。
Was this page helpful?