▼最近直播超级多,预约保你有收获
今晚直播:《多模态大模型落地实践》
—1—
Mem0 AI 是什么?

Mem0 在 GitHub 上开源后,仅用一天时间便获得了超万个星标,超越了 RAG,为大型语言模型(LLMs)和智能体(Agents)提供了持久的记忆功能。
用户、会话和AI Agent 记忆:在用户会话、交互和 AI Agent 之间保留信息,确保连续性和上下文。
自适应个性化:根据用户交互和反馈不断改进个性化。
开发者友好的API:提供一个简单的API,以便无缝集成到各种应用程序中。
平台一致性:确保在不同平台和设备上行为和数据的一致性。
托管服务:提供一个托管解决方案,便于部署和维护。
—2—
Mem0 AI 有哪些使用场景?如何使用?
借助 Mem0,可以构建基于大型语言模型(LLMs)的有状态应用程序,Mem0 通过提供一个响应式的记忆层来提升应用性能,使得大模型应用程序:
更加个性化;
更具可靠性;
通过减少与 LLM 的交互次数来降低成本;
更具吸引力;
实现长期记忆功能。



—3—
Mem0 AI 和 RAG 有哪些不同?
实体关系:Mem0 能够理解和关联不同交互中的实体,而 RAG 则是从静态文档中检索信息。这使得对上下文和关系的理解更加深入。
最近性、相关性和衰减:Mem0 优先考虑最近的交互,并逐渐忘记过时的信息,确保记忆保持相关性和最新性,以提供更准确的响应。
上下文连续性:Mem0 在会话之间保留信息,保持对话和交互的连续性,这对于虚拟伴侣或个性化学习助手等长期参与型应用至关重要。
适应性学习:Mem0 根据用户交互和反馈改进个性化,随着时间的推移使记忆更加准确,更加符合个人用户的需求。
动态更新:Mem0 可以动态地用新信息和交互更新其记忆,而 RAG 依赖于静态数据。这允许实时调整和改进,增强用户体验。
这些先进的记忆功能使 Mem0 成为开发者创建个性化和具有上下文感知能力的AI 大模型应用的一个强大工具。
—4—
Mem0 AI 打造客户支持 AI Agent 案例实战
pip install openai mem0ai第二步:客户支持 AI Agent 完整代码
以下是使用 Mem0 创建并与客户支持 AI Agent 进行交互的简化代码:
from openai import OpenAIfrom mem0 import Memory# Set the OpenAI API keyos.environ['OPENAI_API_KEY'] = 'sk-xxx'class CustomerSupportAIAgent:def __init__(self):"""Initialize the CustomerSupportAIAgent with memory configuration and OpenAI client."""config = {"vector_store": {"provider": "qdrant","config": {"host": "localhost","port": 6333,}},}self.memory = Memory.from_config(config)self.client = OpenAI()self.app_id = "customer-support"def handle_query(self, query, user_id=None):"""Handle a customer query and store the relevant information in memory.:param query: The customer query to handle.:param user_id: Optional user ID to associate with the memory."""# Start a streaming chat completion request to the AIstream = self.client.chat.completions.create(model="gpt-4",stream=True,messages=[{"role": "system", "content": "You are a customer support AI agent."},{"role": "user", "content": query}])# Store the query in memoryself.memory.add(query, user_id=user_id, metadata={"app_id": self.app_id})# Print the response from the AI in real-timefor chunk in stream:if chunk.choices[0].delta.content is not None:print(chunk.choices[0].delta.content, end="")def get_memories(self, user_id=None):"""Retrieve all memories associated with the given customer ID.:param user_id: Optional user ID to filter memories.:return: List of memories."""return self.memory.get_all(user_id=user_id)# Instantiate the CustomerSupportAIAgentsupport_agent = CustomerSupportAIAgent()# Define a customer IDcustomer_id = "jane_doe"# Handle a customer querysupport_agent.handle_query("I need help with my recent order. It hasn't arrived yet.", user_id=customer_id)
您可以在任何时间点使用以下代码获取所有记忆:
memories = support_agent.get_memories(user_id=customer_id)for m in memories:print(m['text'])
第四步:关键点
初始化:CustomerSupportAIAgent 类使用必要的记忆配置和 OpenAI 客户端设置进行初始化。
处理查询:handle_query 方法将查询发送给 AI,并将相关信息存储在记忆中。
检索记忆:get_memories 方法获取与客户关联的所有存储记忆。
第五步:总结
随着对话的进行,Mem0 的记忆会根据交互自动更新,提供不断改进的个性化支持体验。
—5—
AI 大模型应用落地直播课
—6—
加我微信
有很多企业级落地实战案例,不方便公开发公众号,我会直接分享在朋友圈,欢迎你扫码加我个人微信来看?

⬇戳”阅读原文“,立即预约!
END