AI 智能體記憶系統(tǒng)的10大關(guān)鍵技術(shù) 原創(chuàng)
關(guān)于 AI 智能體的記憶系統(tǒng)架構(gòu)設(shè)計(jì)和落地實(shí)現(xiàn)可以參考這兩篇文章:《??AI 智能體長期記憶系統(tǒng)架構(gòu)設(shè)計(jì)????》和《???AI 智能體的長期記憶系統(tǒng)架構(gòu)設(shè)計(jì)與落地實(shí)現(xiàn)???》,今天我們詳細(xì)剖析下 AI 智能體記憶系統(tǒng)的10大關(guān)鍵技術(shù)。

一、AI 智能體記憶系統(tǒng)10大關(guān)鍵技術(shù)
1、關(guān)鍵技術(shù)一:為什么長期記憶很重要?
我們構(gòu)建的 AI 智能體存在以下三個(gè)關(guān)鍵問題:

第一、丟失上下文:AI 智能體忘記了過去互動(dòng)中的重要信息;
第二、通用回應(yīng):沒有適當(dāng)?shù)挠洃?,AI 智能體的回復(fù)變得不個(gè)性化且不準(zhǔn)確;
第三、信任侵蝕:當(dāng) AI 智能體無法記住基本偏好時(shí),用戶失去信心。
這肯定不是通往通用人工智能的道路,或者更實(shí)際地說,不是留住客戶的方法。
2、關(guān)鍵技術(shù)二:為什么 RAG 不適合作為長期記憶系統(tǒng)?

讓我用一個(gè)具體的例子來說明為什么 RAG 作為記憶系統(tǒng)是不合適的?

考慮一個(gè)電商場景:
- 用戶表達(dá)對阿迪達(dá)斯運(yùn)動(dòng)鞋的喜愛;
 - 他們的鞋子兩個(gè)月后壞了,導(dǎo)致沮喪;
 - 用戶將偏好轉(zhuǎn)向彪馬;
 - 用戶問:“我應(yīng)該買什么運(yùn)動(dòng)鞋?”
 
在一個(gè)基于 RAG 的系統(tǒng)中,“我應(yīng)該買什么運(yùn)動(dòng)鞋?”這個(gè)查詢在語義上最接近最初的阿迪達(dá)斯偏好。向量數(shù)據(jù)庫返回了這個(gè)過時(shí)的事實(shí),AI 智能體錯(cuò)誤地推薦了阿迪達(dá)斯:完全忽略了偏好變化。
核心問題是:
- 時(shí)間順序:哪個(gè)事實(shí)先出現(xiàn)?
 - 因果關(guān)系:鞋子壞了→失望→偏好變化;
 - 事實(shí)失效:“喜歡阿迪達(dá)斯”應(yīng)該被后來的事件覆蓋。
 
3、關(guān)鍵技術(shù)三:向量嵌入 VS 知識(shí)圖譜
這是以上問題的向量嵌入可視化表示:

在向量空間中,這些事實(shí)作為孤立的點(diǎn)存在,沒有明確的關(guān)系。查詢找到了最相似的向量嵌入,但完全錯(cuò)過了因果鏈和時(shí)間上下文。
然而,知識(shí)圖譜可以明確地用時(shí)間有效期來建模這些關(guān)系。如下圖中顯示:

Graphiti動(dòng)態(tài)知識(shí)圖譜
- “喜歡”關(guān)系在特定日期失效;
 - “壞了”關(guān)系創(chuàng)建了一個(gè)因果鏈接;
 - 新的“喜歡”彪馬的關(guān)系目前是有效的。
 
4、關(guān)鍵技術(shù)四:知識(shí)圖譜開源實(shí)現(xiàn) Graphiti
Graphiti 是Zep 的開源框架,用于構(gòu)建實(shí)時(shí)、動(dòng)態(tài)的知識(shí)圖譜。它專門設(shè)計(jì)來解決以上探討的記憶問題。

Graphiti 關(guān)鍵特點(diǎn):
- 時(shí)間感知:跟蹤事件發(fā)生的時(shí)間以及它們被學(xué)習(xí)的時(shí)間;
 - 關(guān)系性:實(shí)體+關(guān)系+社區(qū);
 - 實(shí)時(shí)性:動(dòng)態(tài)更新無需昂貴的重新計(jì)算
 - 秘密武器:雙時(shí)間記憶
 
5、關(guān)鍵技術(shù)五:秘密武器:雙時(shí)間記憶
這就是 Graphiti 的時(shí)間模型的工作方式。每個(gè)事實(shí)跟蹤四個(gè)時(shí)間戳:

- created_at:Graphiti 學(xué)習(xí)這個(gè)事實(shí)的時(shí)間;
 - valid_at:事件實(shí)際發(fā)生的時(shí)間;
 - invalid_at:事實(shí)變得不真實(shí)的時(shí)間;
 - expired_at:Graphiti 學(xué)習(xí)到它不再有效的時(shí)間。
 
這使得強(qiáng)大的時(shí)間推理成為可能:“用戶在二月份的偏好是什么?”變得可以回答。
6、關(guān)鍵技術(shù)六:智能沖突解決
當(dāng) Graphiti 遇到?jīng)_突信息時(shí),它不會(huì)簡單地添加另一個(gè)嵌入。相反:
- 新事實(shí):“阿迪達(dá)斯鞋壞了,[用戶不高興]”;
 - 檢測到?jīng)_突:這使得“喜歡阿迪達(dá)斯”的關(guān)系失效;
 - 時(shí)間解決:設(shè)置 invalid_at 日期并創(chuàng)建因果邊;
 - 結(jié)果:為每個(gè)偏好設(shè)置清晰的時(shí)間邊界。
 

如上結(jié)果圖保留了歷史,同時(shí)清楚地表明了當(dāng)前的有效性。這是“更接近人類處理和回憶隨時(shí)間變化的狀態(tài)的方式”。
7、關(guān)鍵技術(shù)七:混合檢索
Graphiti 并沒有拋棄向量嵌入,它使它們變得更智能。Graphiti 系統(tǒng)采用混合方法,使得檢索結(jié)果:快速、準(zhǔn)確、上下文相關(guān)的檢索,操作時(shí)間以毫秒為單位,而不是秒。

- 語義搜索:通過嵌入向量找到相關(guān)內(nèi)容;
 - 關(guān)鍵詞搜索:BM25 全文搜索特定術(shù)語;
 - 子圖遍歷:從初始結(jié)果導(dǎo)航關(guān)系;
 - 結(jié)果融合:結(jié)合所有方法以獲得全面的上下文。
 
8、關(guān)鍵技術(shù)八:特定領(lǐng)域的記憶
Graphiti 的一個(gè)強(qiáng)大功能是領(lǐng)域建模。心理健康應(yīng)用程序需要存儲(chǔ)與電商 AI 智能體非常不同的記憶類型。
Graphiti 允許你使用熟悉的工具(比如:pydantic)定義自定義實(shí)體和邊,為你提供:

- 任何數(shù)據(jù)源:動(dòng)態(tài)整合對話和業(yè)務(wù)數(shù)據(jù);
 - 相關(guān)檢索:只檢索與你的應(yīng)用程序相關(guān)的實(shí)體和事實(shí);
 - 熟悉的工具:使用 pydantic 定義你的實(shí)體和邊本體。
 
9、關(guān)鍵技術(shù)九:適合工作的工具
我并不是主張到處替換 RAG。每種方法都有其優(yōu)勢,如下表所示:

AI 智能體應(yīng)用程序可以使用 RAG 方法用于靜態(tài)知識(shí),使用 Graphiti 用于動(dòng)態(tài)記憶。
10、關(guān)鍵技術(shù)十:記憶 ≠ 知識(shí)檢索

總之,AI 智能體記憶不是知識(shí)檢索,而是需要一個(gè)能夠處理時(shí)間序列、因果關(guān)系和動(dòng)態(tài)更新的系統(tǒng)。Graphiti 正是這樣一個(gè)系統(tǒng),它能夠提供更準(zhǔn)確、更個(gè)性化的服務(wù)。
基于Graphiti的Agent智能體架構(gòu)圖
本文轉(zhuǎn)載自???玄姐聊AGI?? 作者:玄姐


















