Skip to content

壓縮

每個模型都有一個上下文視窗——即其能處理的最大 token 數量。 當對話接近該限制時,OpenClaw 會將較舊的訊息壓縮 為摘要,以便聊天能夠繼續進行。

  1. 較舊的對話輪次會被總結為一個壓縮條目。
  2. 摘要會儲存在會話紀錄檔中。
  3. 最近的訊息會保持完整。

完整的對話歷史記錄會保留在磁碟上。壓縮僅改變模型 在下一輪中看到的內容。

預設情況下,自動壓縮是開啟的。當會話接近上下文限制時, 或者當模型返回上下文溢出錯誤時(在這種情況下 OpenClaw 會壓縮並重試),它就會運行。

在任何聊天中輸入 /compact 以強制進行壓縮。添加指令以引導摘要:

/compact Focus on the API design decisions

預設情況下,壓縮使用您代理的主要模型。您可以使用 能力更強的模型來獲得更好的摘要:

{
agents: {
defaults: {
compaction: {
model: "openrouter/anthropic/claude-sonnet-4-6",
},
},
},
}
壓縮修剪
作用總結較舊的對話修剪舊的工具結果
已儲存?是(在會話紀錄檔中)否(僅在記憶體中,每次請求)
範圍整個對話僅限工具結果

會話修剪 是一個更輕量級的補充機制,它會在不進行總結的情況下修剪工具輸出。

壓縮太頻繁? 模型的上下文視窗可能很小,或者 工具輸出可能很大。請嘗試啟用 會話修剪

壓縮後上下文感覺陳舊? 使用 /compact Focus on <topic> 來 引導摘要,或啟用 memory flush 以便 保留筆記。

需要全新的開始? /new 會啟動一個新的會話而不進行壓縮。

若要進行進階設定(保留 Token、識別符保留、自訂上下文引擎、OpenAI 伺服器端壓縮),請參閱 Session Management Deep Dive

  • Session — Session 管理與生命週期
  • Session Pruning — 修剪工具結果
  • Context — 如何為 Agent 回合建構上下文
  • Hooks — 壓縮生命週期 Hooks (before_compaction, after_compaction)