摘要: 長時間運作的 agent 會在 context 裡累積過時的中間結果,最後拖垮生成品質、甚至塞爆 context window。Apple ML Research 與 Johns Hopkins University 在 2026 年 10 月發表的 SELFCOMPACT 論文提出:與其按固定 token 數量強制摘要,不如給模型一個壓縮工具,加上一份「什麼時候該用、什麼時候別用」的輕量規則。結果是在七個模型、六個 benchmark 上,效果追平或超過固定間隔摘要,但每題成本降低 30–70%。
問題出在觸發時機,不是摘要本身
多數 agent framework 已經有 context compaction:累積到某個 token 門檻就自動摘要、捨棄舊內容。論文指出這種做法的盲點——觸發點完全不看任務正在發生什麼。如果一個數學推導做到一半、或一輪搜尋還沒收斂,這時強制壓縮,等於把部分結果丟掉,後續生成反而被「截斷的歷史」錨定。
這對 builder 是很實際的教訓。我們常把 compaction 當成基礎設施問題:設好門檻就不管了。但壓縮其實是個判斷問題,判斷錯時機,摘要做得再好也會傷害任務。
工具和規則,缺一不可
SELFCOMPACT 的做法是兩個推論時元件的組合:
- 一個 compaction tool,讓模型主動呼叫,把累積的 context 摘要成精簡版本;
- 一份輕量 rubric,規定何時適合壓縮(子任務已完成、軌跡正在收斂),何時該壓抑(推導進行中、或模型卡住時)。
論文的消融結果很值得注意:只給工具,開放權重模型的使用並不穩定,常常在不該壓縮的時候呼叫、或乾脆不叫;只有 rubric 沒有工具,模型想整理也無從下手。兩者合起來,不需要 fine-tuning 或外部監督,就能引導出有效的自適應壓縮。
一個「後設認知」缺口
這篇研究最有意思的發現,論文作者稱之為 meta-cognitive gap:模型在沒被提示的情況下,無法可靠地察覺自己的 context 已經在腐壞。但只要一份簡短的規則把「什麼狀態該整理」講清楚,這個能力就能由 scaffold 補上,不必透過訓練。
換句話說,「何時整理記憶」可以被當成一個框架層的能力來產品化,而不是等模型廠商把這件事內建。這和我在把記憶和持續專注做成產品功能:Meta 新旗艦模型對個人 agent 的三個啟示裡談的方向一致——agent 的記憶管理正在從模型的隱性行為,變成產品可以明確設計的介面。
實際數字,以及要保留的懷疑
具體成果:在競技數學類 benchmark 上,比完全不摘要的基線最多提升 18.1 分;在 agentic search 上提升 5–9 分;同時每題成本低 30–70%。測試涵蓋七個模型。
幾點保留。第一,成效數字來自 Apple 發表的論文摘要,我沒有獨立複現;rubric 長什麼樣、對不同任務類型要多客製,需要讀原文才能評估。第二,benchmark 集中在數學和搜尋兩類任務,寫程式、長對話客服這類軌跡結構不同的場景是否適用,論文摘要沒有涵蓋。第三,rubric 是用自然語言寫的,代表它和 prompt 一樣需要維護——任務型態改變時,規則可能也要跟著改。
對 builder 的下一步
如果你手上的 agent 已經在做固定間隔摘要,這篇研究給了一個低成本實驗方向:把觸發條件從 token 數改成任務狀態(子任務完成才壓縮),觀察成功率和成本怎麼動。不需要換模型、不需要訓練,改的是 scaffold。這正是論文的核心主張——compaction 的時機感,是一種可以由框架供應的能力。
