OpenClaw Skills #13|Memory Systems:讓 AI Agent 真正「記住」你的架構設計指南
發布時間:2026-03-13 | 分類:OpenClaw Skills 深度研究
---
一、開場破題
你有沒有遇過這種情況:跟 AI Agent 聊了半小時,切換視窗回來,它卻完全不記得你剛才說的任何事?
這不是 bug,這是「無記憶架構」的本質限制。
Memory Systems(記憶系統) 是讓 AI Agent 從「一次性工具」進化為「長期夥伴」的關鍵基礎設施。2026 年,隨著 AI Agent 在企業生產環境中大規模落地,記憶系統的設計品質直接決定了 Agent 是否具備真正的「持續學習」與「個人化服務」能力——這已成為區分玩具級與生產級 Agent 的核心指標之一。
從 OpenAI 的 ChatGPT Memory、到 LangChain 的 Memory 模組、再到各大企業自建的 Long-term Memory 服務,記憶系統正在成為 AI 應用層最熱門的基礎設施賽道。本文將帶你深入理解記憶系統的架構設計,從四種記憶類型到實作細節,一次掌握。
---
二、概念精講
記憶系統的四種類型
參考人類認知心理學,AI Agent 的記憶系統可分為四個層次:
1. Sensory Memory(感知記憶)
最短暫的記憶,對應 LLM 的即時輸入——當前 prompt 與上下文視窗內的資訊。生命週期僅限於單次推理。
2. Short-term / Working Memory(短期/工作記憶)
Agent 在單次對話或任務執行過程中維護的狀態,對應 Context Window 內的對話歷程。LLM 原生支援,但受 Token 限制,超出後自動截斷。
3. Episodic Memory(情節記憶)
對具體事件與互動歷程的記憶,例如「上週使用者問過的問題」、「某次任務的執行結果」。需要外部儲存系統支援,通常以向量資料庫或結構化 DB 實作。
4. Semantic Memory(語義記憶)
對事實、知識、使用者偏好的長期記憶,例如「使用者偏好繁體中文回答」、「公司產品規格」。通常以 Key-Value Store 或向量索引儲存,支援語義檢索。
核心架構圖
使用者輸入
|
v
+------------------+
| Memory Manager | <- 記憶系統核心控制器
+------------------+
| |
v v
[Short-term] [Long-term Memory]
[Context] |
+---> [Episodic DB] <- 事件/對話歷史
| (Vector Store)
|
+---> [Semantic DB] <- 知識/偏好/事實
(Key-Value / Vector)
|
v
Memory Retrieval
(相關記憶注入 Context)
|
v
LLM 推理
|
v
Memory Write-back
(新記憶存回對應儲存層)
|
v
回應使用者
記憶的寫入與讀取策略
寫入(Memory Formation):
- 即時寫入:每次對話結束後自動摘要並存入長期記憶
- 選擇性寫入:由 LLM 判斷哪些資訊值得記憶(避免雜訊污染)
- 結構化抽取:從非結構化對話中抽取結構化事實存入 Semantic Memory
讀取(Memory Retrieval):
- 向量相似度搜尋:將當前輸入 Embed 後,從向量 DB 取回最相關的過去記憶
- 關鍵字過濾:搭配 metadata 過濾(時間、使用者 ID、主題標籤)
- 混合檢索(Hybrid Search):結合向量搜尋與 BM25 關鍵字搜尋,提升召回率
---
三、實戰場景
場景一:個人化 AI 助理
企業內部的 AI 助理需要記住每位員工的工作偏好、常用格式、過去的請求模式。Memory System 在每次對話結束後,自動將「使用者偏好」(如「喜歡條列式回答」、「回答用繁體中文」)存入 Semantic Memory,下次對話開始時自動檢索注入 prompt,實現真正的個人化體驗。
場景二:客服 Agent 的跨工單記憶
電商平台的客服 Agent 需要跨工單追蹤同一客戶的歷史問題。透過 Episodic Memory,Agent 可以查詢「這位客戶過去 30 天內回報過哪些問題」,避免重複詢問已知資訊,大幅提升服務品質與解決效率。
場景三:程式碼開發 Agent 的專案記憶
Coding Agent 需要記住專案的架構決策、已解決的 bug、程式碼規範。透過 Semantic Memory 儲存「這個專案使用 TypeScript strict mode」、「資料庫採用 PostgreSQL」等事實,Agent 在每次回答時自動參照,避免給出與專案架構衝突的建議。
---
四、關鍵步驟
Step 1:設計記憶分層架構
明確定義哪些資訊屬於哪個記憶層:
- Short-term:當前對話的完整歷程(Context Window 管理)
- Episodic:對話摘要、任務執行記錄(存入向量 DB)
- Semantic:使用者偏好、領域知識、實體關係(存入結構化 DB 或向量 DB)
Step 2:實作 Memory Manager
建立一個 Memory Manager 類別,負責:
add_memory(content, memory_type, metadata)— 新增記憶search_memory(query, memory_type, top_k)— 語義搜尋相關記憶format_memory_context(memories)— 將記憶格式化為可注入 prompt 的文字
Step 3:記憶注入策略
在每次呼叫 LLM 前,執行記憶檢索並注入 System Prompt:
[System Prompt]
你是使用者的個人助理。以下是關於使用者的已知資訊:
[從 Semantic Memory 檢索]
- 偏好:使用繁體中文回答,條列式格式
- 職業:後端工程師,主要使用 Python
[從 Episodic Memory 檢索:最相關的 3 筆過去互動]
- 2026-03-10:使用者詢問過 FastAPI 部署問題
- 2026-03-08:使用者回報資料庫連線超時問題
Step 4:記憶更新與過期管理
- 設定 TTL(Time-To-Live):情節記憶可設定 90 天過期,語義記憶可永久保留
- 衝突解決:當新資訊與舊記憶矛盾時,以最新版本覆蓋,並記錄更新時間戳
- 記憶壓縮:定期將舊的 Episodic Memory 摘要壓縮,節省儲存空間
---
五、常見誤區
誤區一:把所有對話內容都塞進 Context Window
這是最常見的錯誤。Context Window 有 Token 上限,強行塞入大量歷史對話不僅浪費 Token,還會稀釋當前對話的重要性。正確做法是用向量檢索取回最相關的記憶片段,而非完整歷史。
誤區二:記憶沒有使用者隔離
多使用者場景中,記憶必須嚴格按
user_id 隔離。若記憶系統沒有正確的存取控制,可能導致 A 使用者的私人資訊洩露給 B 使用者——這在生產環境中是嚴重的隱私問題。誤區三:無限累積記憶導致檢索品質下降
記憶庫越大,檢索噪音越多。必須設計記憶淘汰機制(LRU、TTL、重要性評分),確保向量 DB 中保留的都是高品質、高相關性的記憶。
誤區四:忽略記憶的可解釋性
當 Agent 給出奇怪的回答時,開發者需要能夠追溯「Agent 當時參照了哪些記憶」。記憶系統應保留完整的 retrieval log,方便 debug 與審計。
---
六、延伸學習
- MemGPT:將 Memory Management 視為 OS 分頁管理的創新架構,值得深入研究
- LangChain Memory:提供多種開箱即用的記憶模組(ConversationBufferMemory、VectorStoreRetrieverMemory 等)
- Zep:專為 AI Agent 設計的長期記憶服務,支援自動摘要與結構化記憶抽取
- 記憶與 RAG 的融合:記憶系統與 RAG 架構的邊界正在模糊,了解兩者的設計差異與整合模式
- Cognitive Architecture for Language Agents(CoALA):學術界對 Agent 記憶架構的系統性梳理,推薦閱讀原始論文
---
References
- MemGPT: Towards LLMs as Operating Systems (Packer et al., 2023):https://arxiv.org/abs/2310.08560
- Cognitive Architectures for Language Agents (Sumers et al., 2023):https://arxiv.org/abs/2309.02427
- LangChain Memory 官方文件:https://python.langchain.com/docs/how_to/#memory
- LangChain 文件總覽:https://docs.langchain.com
- OpenAI Platform Docs:https://platform.openai.com/docs
- HuggingFace Docs:https://huggingface.co/docs
- Zep Long-term Memory for AI Assistants:https://github.com/getzep/zep
- OpenClaw GitHub:https://github.com/openclaw/openclaw
- A Survey on the Memory Mechanism of Large Language Model based Agents (Zhang et al., 2024):https://arxiv.org/abs/2404.13501
---
本文為 OpenClaw Skills 深度研究系列第 13 篇,每日 20:00 更新。
技術討論與案例分享請至 BotBoard (https://www.jojoradar.com/botboard) 留言。