
了解更多·加入Discord
MEM0(發音為“ MEM-Zero”)用智能存儲層增強了AI助手和代理,從而實現了個性化的AI相互作用。 MEM0記住用戶的偏好,適應個人需求,並且會隨著時間的推移不斷改善,非常適合客戶支持聊天機器人,AI助手和自主系統。
新功能:引入圖形內存。查看我們的文檔。
MEM0利用混合數據庫方法來管理和檢索AI代理商和助手的長期記憶。每個內存都與唯一標識符(例如用戶ID或代理ID)相關聯,使MEM0可以組織和訪問特定於個人或上下文的記憶。
當使用add()方法添加消息時,系統將提取相關的事實和偏好,並在數據存儲中存儲它:矢量數據庫,鍵值數據庫和圖形數據庫。這種混合方法可確保以最有效的方式存儲不同類型的信息,從而快速有效地進行搜索。
當AI代理或LLM需要回憶記憶時,它使用搜索()方法。然後,MEM0在這些數據存儲中執行搜索,從每個來源檢索相關信息。然後通過一個評分層傳遞該信息,該評分層根據相關性,重要性和新近度評估其重要性。這樣可以確保只有最具個性和有用的上下文才浮出水面。
然後,可以根據需要將檢索到的記憶附加到LLM的提示中,從而增強其響應的個性化和相關性。
MEM0賦予組織和個人增強:
設置MEM0的最簡單方法是通過託管的MEM0平台。該託管解決方案提供自動更新,高級分析和專用支持。註冊以開始。
如果您喜歡自助主機,請使用開源MEM0軟件包。按照安裝說明開始。
通過PIP安裝MEM0軟件包:
pip install mem0ai另外,您可以在此處的託管平台上單擊一鍵使用MEM0。
MEM0需要LLM才能發揮作用,而gpt-4o的OpenAI為默認值。但是,它支持各種LLM;有關詳細信息,請參閱我們支持的LLMS文檔。
第一步是實例化內存:
from mem0 import Memory
m = Memory () import os
os . environ [ "OPENAI_API_KEY" ] = "sk-xxx"您可以在內存上執行以下任務:
# 1. Add: Store a memory from any unstructured text
result = m . add ( "I am working on improving my tennis skills. Suggest some online courses." , user_id = "alice" , metadata = { "category" : "hobbies" })
# Created memory --> 'Improving her tennis skills.' and 'Looking for online suggestions.' # 2. Update: update the memory
result = m . update ( memory_id = < memory_id_1 > , data = "Likes to play tennis on weekends" )
# Updated memory --> 'Likes to play tennis on weekends.' and 'Looking for online suggestions.' # 3. Search: search related memories
related_memories = m . search ( query = "What are Alice's hobbies?" , user_id = "alice" )
# Retrieved memory --> 'Likes to play tennis on weekends' # 4. Get all memories
all_memories = m . get_all ()
memory_id = all_memories [ "memories" ][ 0 ] [ "id" ] # get a memory_id
# All memory items --> 'Likes to play tennis on weekends.' and 'Looking for online suggestions.' # 5. Get memory history for a particular memory_id
history = m . history ( memory_id = < memory_id_1 > )
# Logs corresponding to memory_id_1 --> {'prev_value': 'Working on improving tennis skills and interested in online courses for tennis.', 'new_value': 'Likes to play tennis on weekends' } 提示
如果您不需要自己設置基礎架構而不需要託管版本,請查看MEM0平台以在幾分鐘內開始。
要初始化圖形存儲器,您需要使用圖表存儲提供程序來設置配置。目前,我們支持Neo4J作為圖表提供商。您可以在本地設置NEO4J或使用託管的Neo4J AuradB。此外,您還需要將版本設置為v1.1 (不支持先驗版本)。您可以做到這一點:
from mem0 import Memory
config = {
"graph_store" : {
"provider" : "neo4j" ,
"config" : {
"url" : "neo4j+s://xxx" ,
"username" : "neo4j" ,
"password" : "xxx"
}
},
"version" : "v1.1"
}
m = Memory . from_config ( config_dict = config )有關詳細的用法說明和API參考,請訪問我們的文檔docs.mem0.ai。在這裡,您可以在開源版本和託管的MEM0平台上找到更多信息。
加入我們的社區進行支持和討論。如果您有任何疑問,請隨時使用以下方法之一與我們聯繫:
加入我們的Discord社區,了解針對AI代理和LLM的內存管理,並與MEM0用戶和貢獻者建立聯繫。在我們的GitHub問題中分享您的想法,問題或反饋。
我們重視和欣賞社區的貢獻。特別感謝我們的貢獻者幫助我們改善MEM0。
我們收集匿名用法指標,以增強包裝的質量和用戶體驗。這包括功能使用頻率和系統信息之類的數據,但從未個人詳細信息。數據有助於我們確定改進的優先級並確保兼容性。如果您想選擇退出,請設置環境變量mem0_telemetry = false。我們優先考慮數據安全性,並且不會外部共享此數據。
該項目已在Apache 2.0許可下獲得許可 - 有關詳細信息,請參見許可證文件。