Agent 記憶層導入坑:先別急著把聊天紀錄全丟進向量庫

很多團隊做 AI agent,第一個版本能跑之後,很快就會想加「記憶」。聽起來很合理:使用者講過的偏好、專案背景、歷史決策,如果每次都要重講,agent 就不像真正的助手。但最常見的踩坑,是把記憶理解成「把聊天紀錄切 chunk 丟進向量庫」。這不是記憶層,這只是把雜訊永久化。

記憶層真正要解的問題,是讓 agent 在下一次任務中拿到「仍然有效、可被授權、能被修正」的脈絡。這裡有三個關鍵字:有效、授權、修正。有效代表不是所有歷史都值得保存;使用者昨天隨口抱怨一句,不一定該成為未來決策依據。授權代表不同使用者、專案、客戶、群組的記憶不能混在一起。修正代表記憶要能被看見、更新、刪掉,而不是沉進一個沒人敢碰的 embedding index。

適合導入記憶層的產品,通常已經有高頻重複任務。比如內部 coding agent 需要記住 repo 慣例、部署流程、常見測試命令;客服助理需要記住某客戶的合約狀態與處理偏好;個人助理需要記住使用者固定的口吻、行程習慣、禁忌事項。這些記憶有明確用途,而且能被拆成比較穩定的結構:偏好、事實、規則、狀態、摘要、決策紀錄。

不適合的情況也很明確。如果你還不知道 agent 下次要用這段資訊做什麼,先不要存。只為了讓 demo 看起來「有長期記憶」而保存所有對話,後面會變成三種成本:檢索成本、隱私成本、錯誤成本。檢索成本是每次都撈出一堆似是而非的舊內容;隱私成本是資料保留與刪除變複雜;錯誤成本是 agent 可能拿過期資訊當真,還講得很有自信。

比較務實的採用方式,是先把記憶分層。短期工作記憶留在 thread 或任務狀態裡,任務結束後只萃取少量值得保存的結論。長期記憶不要只靠相似度檢索,至少要有類型、來源、建立時間、信心、適用範圍與刪除機制。若是企業場景,還要把權限邊界放在第一天,而不是等事故發生後才補。

我的判斷是:agent 記憶層值得做,但不能從向量資料庫開始設計。先問三件事:這段記憶會改善哪個重複任務?誰有權讓 agent 使用它?錯了或過期時誰能修?如果答不出來,先做任務摘要和明確設定檔就好。真正的記憶不是越多越聰明,而是少量、可治理、能在正確時機派上用場。

換個腦袋讀

想再讀深一點?

深入解讀
ChatGPT Google AI

相關文章