介紹
上下文壓縮是一種減少發送到人工智慧模型的資訊量,同時保留獲得良好結果所需的事實、限制和工作狀態的做法。這很重要,因為現代人工智慧工作流程通常攜帶比下一步實際需要更多的上下文:長時間聊天、工具輸出、日誌、檢索到的文件、螢幕截圖、記憶體和先前的代理操作。
重點不是為了提示本身而縮短提示。重点是在模型的工作环境中保留正确的信息。
對於 AI 建構者、SaaS 營運商和技術創始人來說,情境壓縮會影響成本、延遲、可靠性和產品品質。如果做得好,它可以讓人工智慧系統以更少的浪費運作。如果做得不好,它會刪除使答案正確的細節。
上下文壓縮真正衡量的是什麼
上下文壓縮衡量人工智慧系統將可用資訊轉化為有用的工作上下文的效率。
模型可以存取大的上下文窗口,但這並不意味著每個標記都是有用的。有些標記具有重要意義。其他人重複舊訊息,包括不相關的工具輸出,或保留不再重要的廢棄決策。
一個好的上下文壓縮過程會提出四個實際問題:
| 問題 | 它揭示了什麼 |
|---|---|
| 模型下一步需要什麼? | Task-relevant context |
| 在不改變答案的情況下可以刪除什麼? | Redundant or irrelevant context |
| 什麼必須保持準確? | 高風險事實、限制和來源證據 |
| 可以安全地總結什麼? | Lower-risk background or history |
這與一般人工智慧成本降低不同。上下文壓縮著重於輸入本身的形狀和有用性。
例如,處理帳單投訴的客戶支援副駕駛可能有權存取完整的帳戶歷史記錄、訂閱事件、付款日誌、先前的票證和內部註釋。下一步可能只需要最新的失敗費用、計劃類型、客戶陳述的問題以及任何退款政策限制。
發送所有內容的成本很高,並且可能會使模型感到困惑。發送太少可能會導致它錯過重要的事實。
真正的衡量標準不是“我們移除了多少代幣?”問題是“壓縮後的上下文是否仍然支持正確的決策?”
情境壓縮如何出現在即時工作流程中
當人工智慧從單輪提示轉變為即時系統時,情境壓縮變得非常重要。
在簡單的提示中,使用者直接提供上下文。在代理工作流程中,上下文從許多地方累積:
- 使用者說明
- 之前的聊天輪流
- 檢索到的文件
- 工具結果
- 錯誤日誌
- 瀏覽器或桌面狀態
- API 回應
- 記憶記錄
- 中期計劃
- 失敗的嘗試和重試
這種累積的上下文可能會很快變得吵雜。
考慮一個 AI 代理正在調查 SaaS 平台中失敗的發票同步。使用者詢問:“找出該客戶的發票未同步到會計的原因,並為客戶經理起草一份說明。”
代理人可能會收集:
| 輸入 | 例子 | 壓縮問題 |
|---|---|---|
| User request | 任務和期望的輸出 | Must remain visible |
| CRM data | Account ID, owner, lifecycle stage | Keep only fields relevant to the問題 |
| Billing events | Invoice created, payment failed, sync retried | Preserve timeline and exact timestamps |
| API logs | Error codes and payloads | Preserve exact errors, trim unrelated logs |
| Accounting system response | Permission or mapping failure | Keep source-specific details |
| Prior attempts | 代理已重試一次 | Keep only if it affects the next step |
| Internal policy | Refund or escalation rules | Preserve constraints exactly |
弱壓縮步驟可能會將所有這些總結為:
> 由於整合問題,發票失敗。客戶經理應跟進。
雖然很短,但沒什麼用。
更強的壓縮上下文可能如下所示:
`文本
任務:
確定帳戶 A-219 的發票 INV-8842 未能同步的原因,並為客戶經理起草一份簡短說明。
相關事實:
- 發票 INV-8842 於 6 月 18 日創建。
- 付款成功,但帳戶同步在 UTC 時間 14:07 失敗。
- 在 14:12 UTC 重試回傳:「缺少 external_account_mapping」。
- 帳戶所有者:陳瑪雅。
- 機票中沒有退款要求。
- 目前可能的原因:客戶帳戶缺少會計系統對應。
約束:
請勿聲稱客戶的收費不正確。付款成功;付款後同步失敗。
下一個輸出:
起草一份簡明的內部說明,其中包含原因、證據和建議的下一步。
`
該版本比原始證據小,但保留了影響答案的操作細節。它保留標識符、時間軸、錯誤訊息和約束。它也清楚地說明了下一個輸出。
這就是上下文壓縮作為一個可靠性層,而不僅僅是一個節省令牌的技巧。
它在桌面和無程式碼自動化中也很重要。 EasyClaw 等人工智慧代理平台允許使用者透過自然語言和圖形控制在自己的電腦上自動化工作,可以觀察螢幕、工具輸出、聊天指令和應用程式狀態。系統需要足夠的上下文才能正確執行操作,但重複的 UI 觀察和陳舊的操作歷史記錄可能會擠出當前任務。將該狀態壓縮到最新的螢幕、主動目標、關鍵約束和最近的故障點中可以幫助代理保持專注。
實際工作流程中上下文壓縮的根本原因
當情境壓縮失敗時,明顯的症狀通常是成本或延遲。根本原因通常更具體。
| 根本原因 | 會發生什麼 | 為什麼會痛 |
|---|---|---|
| Unbounded conversation history | Every prior turn 已轉發 | Old details compete with current instructions |
| Raw tool output | 完整日誌、JSON、HTML 或 API 結果輸入提示 | 此模型必須從雜訊資料推斷出相關性 |
| Poor state management | 系統不知道發生了什麼變化 | Stale facts persist after they stop being true |
| Unsafe summarization | Exact facts become vague paraphrases | Critical details are lost or distorted |
| Duplicate retrieval | Same fact appears from several sources | Context grows without adding meaning |
| Weak task framing | 下一步行動尚不清楚 | Compression cannot decide what matters |
| No quality check | Shorter context 無需比較即可接受 | Errors reach users quietly |
最危險的失效模式是不明顯的遺漏。就是漂移的意思。
例如,銷售單據可能會這樣寫:
> 如果 SOC 2 報告在 7 月 31 日之前獲得安全部門批准,客戶可以簽訂年度合約。
有損壓縮步驟可能會將其變成:
> 客戶可以簽訂年度合約。
這就消除了條件、依賴性和最後期限。壓縮版本對於模型來說更容易使用,但不太真實。基於該摘要的預測、後續電子郵件或續約建議可能是錯誤的。
另一個常見的失敗是權威陳舊。假設客服人員首先看到一張舊的支援票證,其中顯示客戶參與了成長計劃,然後檢索了顯示 Enterprise 的目前帳戶記錄。如果壓縮保留較早的事實,因為它出現較早,則模型可能會產生錯誤的升級路徑。
良好的上下文壓縮需要權威和新近度規則。目前的真實來源記錄應覆蓋舊的聊天語句。明確的使用者指令應該覆蓋推斷的目標。確切的系統錯誤應該涵蓋「整合問題」的廣泛概括。
如何在不破壞輸出品質的情況下改進上下文壓縮
改进上下文压缩的最安全方法是将其视为受控工作流程。不要從總結一切開始。首先決定模型下一步必須做什麼。
1. Define the next action
壓縮取決於當前任務。
“分析這個客戶”太廣泛了。 「起草一份 120 字的內部註釋,解釋發票 INV-8842 同步失敗的原因」給系統一個明確的目標。
明確的下一步行動告訴壓縮層哪些事實是相關的。
2. Classify context by role
將可用上下文分為實用類別:
| 類別 | 範例 | 處理 |
|---|---|---|
| Objective | User request, current task | Keep concise and explicit |
| Evidence | Logs, records, source text, screenshots | Preserve exact high-value details |
| Constraints | Policies, permissions, user limits | Keep exact; avoid paraphrase when risk 為高 |
| Background | Prior discussion, general account history | Summarize if relevant |
| Dead state | Failed paths, obsolete assumptions | Remove or mark obsolete |
3. Preserve exact details where precision matters
一些細節很少應該被解釋:
- 帳戶 ID
- 發票 ID
- 文件路徑
- 錯誤訊息
- 日期和時間
- 價格和合約條款
- 法律或合規條件
- 使用者說明
- 安全範圍和權限限制
- 引用來源作為證據
這些細節通常消耗很少的代幣,但具有很高的決策價值。
4. Compress around evidence, not over it
一個強有力的模式是保留精確的證據片段並壓縮周圍的解釋。
虛弱的:
`文本
由於映射問題,同步失敗。
`
更強:
`文本
同步於 14:12 UTC 失敗,原因是「缺少 external_account_mapping」。下一步可能是:建立或修復帳戶 A-219 的會計系統對應。
`
更強的版本只是稍微長一點,但更有用。
5. Use structured state summaries
自由形式的摘要很容易編寫,但很難驗證。對於代理和生產副駕駛來說,結構化摘要更容易檢查。
`文本
目前目標:
已知事實:
證據來源:
Constraints:
已經做出的決定:
開放式問題:
下一步行動:
`
這種格式減少了重要上下文被淹沒在散文中的機會。
6. 針對全上下文輸出進行測試
使用來自真實工作流程的小型評估集。對於每種情況,使用完整上下文和壓縮上下文來運行模型。比較:
- 是否得出同樣正確的結論?
- 它保留了所需的事實嗎?
- 它遵守使用者和系統的約束嗎?
- 它是否避免了不受支持的主張?
- 證據不足時是否要求澄清?
- 它產生了所需的輸出格式嗎?
如果壓縮上下文節省了令牌,但增加了更正、升級或使用者不信任,那麼這並不是一種改進。
7. Track compression failures as product events
上下文壓縮應該具有可觀察性。
追蹤使用者何時修正缺失的事實、代理何時重複舊步驟、輸出何時引用過時的數據,或模型何時要求壓縮前可用的資訊。這些訊號表明壓縮層正在丟棄或扭曲有用的上下文。
常見問題:上下文壓縮
什麼是上下文壓縮?
上下文壓縮是縮小發送到人工智慧模型的上下文,同時保留完成任務所需資訊的過程。它可能涉及總結、提取欄位、刪除重複資訊、保留準確證據或維護結構化狀態物件。
目標不僅僅是減少代幣。目標是更小的上下文仍然支援正確的輸出。
上下文壓縮如何運作?
上下文壓縮的工作原理是選擇、重寫或建構傳遞到模型中的信息。系統可以刪除不相關的歷史記錄、刪除重複的事實、總結長時間的討論、從記錄中提取關鍵字段或僅檢索最相關的來源塊。
在生產工作流程中,最好的方法通常是結合技術。例如,代理可以保持結構化任務狀態,保留準確的錯誤訊息,總結舊的對話輪次,並僅在需要時檢索來源文件。
上下文壓縮的主要風險是什麼?
主要風險是事實遺失、意義扭曲、記憶陳舊、約束缺失和源頭接地薄弱。
壓縮的摘要聽起來很準確,但忽略了關鍵條件。這在涉及計費、法律條款、安全決策、醫療資訊、財務資料、代碼執行或客戶承諾的工作流程中尤其危險。
如何透過上下文壓縮改進結果?
透過先定義下一步行動、保留準確的高風險細節、使用結構化摘要以及根據來源證據驗證壓縮上下文來改進結果。
衡量品質以及節省的代幣。有用的指標包括任務成功率、糾正率、延遲、每個成功任務的成本、升級率和缺少事實錯誤的頻率。
上下文壓縮與提示壓縮相同嗎?
不。提示壓縮通常意味著縮短指令或提示文字。上下文壓縮範圍更廣。它可以包括聊天歷史記錄、檢索到的文件、工具輸出、日誌、記憶體、瀏覽器狀態、螢幕截圖和工作流程狀態。
即時壓縮是更大的情境管理問題的一部分。
上下文壓縮與檢索相同嗎?
不會。檢索決定將哪些外部資訊帶入模型的脈絡中。上下文壓縮決定了一旦選擇或累積所有相關資訊如何表示。
他們經常一起工作。檢索可以找到正確的來源材料,而壓縮可以刪除重複項、保留關鍵事實並建立最終輸入。
更大的上下文視窗是否不需要上下文壓縮?
不會。較大的上下文視窗可以減輕壓力,但並不能消除相關性控制的需要。
更多上下文仍然會增加成本、延遲和混亂。它也可能使陳舊或不相關的資訊更有可能影響模型。強大的上下文壓縮有助於模型專注於當前重要的事實、約束和當前狀態。
上下文壓縮什麼時候該保守?
当精确的措辞或来源证据很重要时,请使用保守的压缩。這包括法律審查、財務運營、安全分析、醫療工作流程、合規任務、合約談判、生產代碼變更和客戶導向的承諾。
在這些情況下,壓縮周圍的噪音,但保留來源文字、識別碼和約束以供驗證。
團隊測試情境壓縮的最佳第一步是什麼?
從一個真實的工作流程開始,其中令牌使用率很高且輸出品質是可衡量的。捕獲完整上下文範例,建立壓縮版本,並並排比較結果。
最好的早期候選者是具有重複結構的工作流程:支援票證分類、CRM 摘要、日誌分析、程式碼審查、發票調查或文件問答。這些可以更輕鬆地定義必須保留的內容和可以安全刪除的內容。