Mem0 开源1天获万星!超越 RAG、为 LLM、Agent 添加超强个性化记忆!

 ▼最近直播超级多,预约保你有收获

今晚直播:多模态大模型落地实践

1

Mem0 AI 是什么?

Mem0 AI 为大模型(LLMs)提供了一个智能、自我提升的记忆层,使得在跨应用程序中实现个性化的人工智能体验成为可能。

0680463417ceee43a27b4f39ab6d167f.png

Mem0 在 GitHub 上开源后,仅用一天时间便获得了超万个星标,超越了 RAG,为大型语言模型(LLMs)和智能体(Agents)提供了持久的记忆功能。

Github 地址:https://github.com/mem0ai/mem0

Mem0 AI 具备以下几个关键特性

用户、会话和AI Agent 记忆:在用户会话、交互和 AI Agent 之间保留信息,确保连续性和上下文。

自适应个性化:根据用户交互和反馈不断改进个性化。

开发者友好的API:提供一个简单的API,以便无缝集成到各种应用程序中。

平台一致性:确保在不同平台和设备上行为和数据的一致性。

托管服务:提供一个托管解决方案,便于部署和维护。

 2

Mem0 AI 有哪些使用场景?如何使用?

Mem0 AI 在助手类和 Agent 类等场景都可以很好地使用。

借助 Mem0,可以构建基于大型语言模型(LLMs)的有状态应用程序,Mem0 通过提供一个响应式的记忆层来提升应用性能,使得大模型应用程序:

  • 更加个性化;

  • 更具可靠性;

  • 通过减少与 LLM 的交互次数来降低成本;

  • 更具吸引力;

  • 实现长期记忆功能。

第一、个性化学习助手

长期记忆使学习助手能够记住用户的偏好、过去的交互和进度,提供更加量身定制且有效的学习体验。

914cdf4c5aeda4507f362bbb728e5ca7.png

第二、客户支持 AI Agent

通过保留先前交互的信息,客户支持机器人能够提供更准确且具有上下文感知能力的帮助,从而提高客户满意度并减少问题解决时间。

842011d7d35905aa776c8df02688936c.png

第三、医疗助手

长期记忆使医疗助手能够跟踪患者的病史、用药计划和治疗方案,确保提供个性化和一致的护理。

第四、虚拟伴侣

虚拟伴侣可以利用长期记忆来记住个人细节、偏好和过去的对话,从而与用户建立更深层次的关系,使互动更加有意义。

80a106bfbdbb4e919a00dd2bbc275b51.png

第五、生产力工具

长期记忆帮助生产力工具记住用户习惯、常用的文档和任务历史,从而简化工作流程并提高效率。

第六、游戏 AI & NPC

在游戏中,具有长期记忆的 AI 可以记住玩家的选择、策略和进度,相应地调整游戏环境,从而创造更加沉浸式的体验。

 3

Mem0 AI 和 RAG 有哪些不同?

Mem0 针对大型语言模型(LLMs)的记忆实现与检索增强生成(RAG)相比具有几个优势

  • 实体关系:Mem0 能够理解和关联不同交互中的实体,而 RAG 则是从静态文档中检索信息。这使得对上下文和关系的理解更加深入。

  • 最近性、相关性和衰减:Mem0 优先考虑最近的交互,并逐渐忘记过时的信息,确保记忆保持相关性和最新性,以提供更准确的响应。

  • 上下文连续性:Mem0 在会话之间保留信息,保持对话和交互的连续性,这对于虚拟伴侣或个性化学习助手等长期参与型应用至关重要。

  • 适应性学习:Mem0 根据用户交互和反馈改进个性化,随着时间的推移使记忆更加准确,更加符合个人用户的需求。

  • 动态更新:Mem0 可以动态地用新信息和交互更新其记忆,而 RAG 依赖于静态数据。这允许实时调整和改进,增强用户体验。

这些先进的记忆功能使 Mem0 成为开发者创建个性化和具有上下文感知能力的AI 大模型应用的一个强大工具。

 4

Mem0 AI 打造客户支持 AI Agent 案例实战

如上述介绍,客户支持 AI Agent 利用 Mem0 在交互中保留信息,从而实现个性化和高效的支持体验。

第一步:安装 Mem0 AI

pip install openai mem0ai

第二步:客户支持 AI Agent 完整代码

以下是使用 Mem0 创建并与客户支持 AI Agent 进行交互的简化代码:

from openai import OpenAI
from mem0 import Memory


# Set the OpenAI API key
os.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 AI
        stream = 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 memory
        self.memory.add(query, user_id=user_id, metadata={"app_id": self.app_id})


        # Print the response from the AI in real-time
        for 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 CustomerSupportAIAgent
support_agent = CustomerSupportAIAgent()


# Define a customer ID
customer_id = "jane_doe"


# Handle a customer query
support_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 大模型应用落地直播课

为了帮助同学们彻底掌握 AI 大模型的应用落地实战技能,包括:记忆、RAG、Agent、微调、Prompt、知识图谱、向量数据库等,今天的直播和同学们深度剖析,请同学们点击以下预约按钮免费预约

6

加我微信

有很多企业级落地实战案例,不方便公开发公众号,我会直接分享在朋友圈欢迎你扫码加我个人微信来看👇

e0217742cb34ac9fdc863dd20fb8de80.jpeg

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

END

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值