mem0学习笔记5:Mem0 是如何思考的

在 第四部分 中,我们研究了高层架构。现在,我们要进行"手术"。我们将查看 mem0/memory/main.py 中的代码,以确切了解当你调用 memory.add() 时会发生什么。 这是系统中最复杂的部分。它是"思考"发生的地方。 4 步pipline 当你调用 memory.add(messages, user_id="alice") 时,Mem0 会运行一个精心设计的 4 步管道: 1. 事实提取 (Fact Extraction):"用户实际上在说什么?" 2. 上下文检索…

mem0学习笔记3:与 LangChain 的无缝集成

在 第二部分 中,我们手动实现了一个带记忆的 ReAct 智能体。但在真实项目中,你不会从零开始写 ReAct 循环。 你会使用像 LangChain 这样的成熟框架。那么,如何将 Mem0 集成进去呢? LangChain 的 Agent 架构 LangChain 提供了一个强大的 AgentExecutor,它已经实现了完整的 ReAct 循环。你只需要: 1. 定义工具 (Tools) 2. 提供 LLM 3. 运行 executor.run() from langchain.agents import initialize_agent, Tool from langchain.llms import OpenAI…

mem0学习笔记2:构建你的第一个带记忆的 ReAct 智能体

在 第一部分 中,我们理解了 ReAct 智能体的记忆问题。现在,让我们动手构建一个真正能"记住"的智能体。 我们将从零开始实现一个 ReAct 循环,然后逐步加入 Mem0 记忆层。 ReAct 循环的核心结构 在开始之前,让我们先理解 ReAct 循环的本质。它是一个 Thought → Action → Observation 的迭代过程。 while not task_complete and steps < max_steps: # 1. Thought: 智能体分析当前状态并制定计划 thought = llm.generate(f"当前状态: {state}\n下一步应该做什么?"…

mem0学习笔记1:ReAct 智能体的记忆困境

如果你正在构建 AI 智能体,你可能已经遇到了一个让人抓狂的问题:智能体似乎患有"阿尔茨海默症"。 它刚刚花了 3 步去搜索某个 API 文档,但 5 分钟后,当你问同样的问题时,它又重新搜索了一遍。它无法记住自己做过什么、学到了什么,更不用说记住用户的偏好了。 这不是某个框架的 bug,这是 ReAct 智能体架构的固有问题。 什么是 ReAct? 在深入记忆问题之前,让我们先理解 ReAct(Reasoning and Acting)范式。 ReAct 是由 Yao 等人在 2022 年提出的一种 Agent 架构模式。它的核心思想是:让 LLM 交替进行"思考"…