記憶的管控是一切重點:Context Management 才是 AI Agent 的核心戰場
記憶的管控才是 AI Agent 的核心戰場。從李宏毅老師解構 OpenClaw 的分享出發,探討 Context Window 的不可能鐵三角、記憶分層設計、壓縮與提取兩大核心技術,以及為什麼善用模型廠商的方案是更好的選擇。
從李宏毅老師的 OpenClaw 解構談起
前陣子我看了李宏毅老師關於「解構」OpenClaw 的分享——他深入拆解了記憶管理與整個 Agent 的設計架構。看完之後我才真正意識到,這才是重中之重。
我們現在的 LLM,就好比一顆非常聰明的大腦。但你拿什麼菜、什麼樣的素材給它作為整體的 input,也就是 System Prompt 裡要放進去的東西,這件事才是真正關鍵的。
不可能的鐵三角
這裡面存在一個不可能的鐵三角:內容要夠多、成本要夠低、精準度要夠高。三個你都想要,但現實是你必須取捨。
記憶體的分層設計
正因為有這個鐵三角的限制,才衍生出了記憶體的分層架構。
短期記憶(Short-term Memory),負責即時處理當下對話中的資訊。
長期記憶(Long-term Memory),也就是 RAG 的部分,從大型資料庫中提取對應的內容。
再加上 System Prompt 本身要承載的背景知識。從最重要到最不重要的資訊,加上資料量可能極其龐大,你要怎麼管控?
兩個核心技術決定 Agent 表現
第一個是壓縮能力。當對話越來越長的時候,你必須有辦法把長資訊壓縮成短資訊,而且壓縮後的東西要存到對的地方。怎麼壓縮、存在哪裡、什麼時候壓縮,這是第一個關鍵。
第二個是提取能力。你要能從既有的內容裡面,精準地拿出跟當前對話最相關的那些資訊。
這兩項核心技術,才是真正決定一個 Agent 表現好壞的關鍵所在。
System Prompt 吃掉一半 Context,穩定度就崩了
國外學者的研究也指出,當你一開始的 System Prompt 就佔據超過一半的 Context Window 時,整個系統的穩定度會明顯下降。
對應的做法有幾個方向:
第一,使用 Sub-agent 和 Plan Mode,在一開始就做好任務規劃,讓規劃回傳的結果不會污染或佔據你原本的 Context。
第二,在成本面上思考,怎麼透過與先前對話具備相似性的 System Prompt 設計,來大幅降低 token 消耗。
第三,研究整體架構設計,確保每次對話都有足夠的有效內容空間,同時維持低成本與高度相關性。
記憶是黑盒子,這才是最大的問題
最後一個非常重要的觀察:現在大多數的 Agent 框架,根本不讓你碰 Memory 的部分。你想看它到底存了什麼?抱歉,那是一個黑盒子。
當你想用 Open Source 的方式去管理這件事,就一定會碰到這個既複雜又重要的議題。換個角度想,如果一個 Agent 能夠在對的時間點,拿出好的文章、好的相關資訊,這本身就是一個極其關鍵的能力。
Context is Everything
設計好了大腦,給了它很多手腳去行動,接下來你要處理的就是——怎麼讓它在對的時間點,撈出對的東西。這就是 Context Management 的精髓。
比起使用 OpenClaw 這類框架,我目前更看好直接使用 Claude 或既有模型廠商提供的方案。因為他們對模型的理解深度夠,在 Context 的取捨上有非常好的表現,能拿出對應的好結果。
你可以先藉由這樣的方式去理解、去利用,再進一步做出自己的系統。先站在巨人的肩膀上,然後長出自己的東西。