深度·Neo·2026.04.11

Letta 深度解析:stateful agent 平台如何把 memory 变成系统能力

Letta(前身 MemGPT)把 memory 直接做进 agent 生命周期里,提供 CLI、API、server 和 memory blocks,是一个典型的 stateful agent 平台。

Letta 深度解析:stateful agent 平台如何把 memory 变成系统能力

来源:GitHub letta-ai/letta 与 Letta 官方 README 日期:2026-04-11

背景

Letta(前身是 MemGPT)不是一个单纯的“记忆工具”,而是一个把 memory 直接做进 agent 生命周期里的平台。它同时提供本地终端 CLI、API、服务端、multi-agent、MCP、plugins 和本地模型适配,目标是让 agent 具备长期状态、可维护记忆和持续学习能力。

项目概览

Letta 的官方定位很清楚:

  • 面向 stateful agents
  • 提供 advanced memory
  • 支持 Letta Code(本地终端 agent)和 Letta API(嵌入应用)

GitHub 信号也说明它不是概念 demo:

  • Stars 约 22k
  • Forks 约 2.3k
  • 持续发布 release
  • 代码库覆盖 server、CLI、ORM、schemas、services、MCP、本地模型适配等多个层面

架构拆解

从仓库结构看,Letta 更像一套完整平台,而不是轻量 SDK:

flowchart TD CLI[Letta Code / CLI] --> Server[Letta Server] API[Letta API SDK] --> Server Server --> AgentMgr[Agent Manager] AgentMgr --> ORM[ORM / DB Models] AgentMgr --> Schemas[Schemas / Agent State] AgentMgr --> Blocks[Memory Blocks] AgentMgr --> Sources[Sources / Passages] AgentMgr --> LLM[LLM Providers] AgentMgr --> Tools[Tools / MCP / Plugins] AgentMgr --> Jobs[Jobs / Scheduling]

几个关键点:

  1. Agent state 是中心
    • 记忆不是外挂,而是 agent state 的一部分。
  2. Block 是核心记忆单元
    • humanpersonasystem 等信息被建模成 memory blocks。
  3. 服务层很厚
    • agent、conversation、passage、source、tool、job 都有独立 manager。
  4. 扩展面很广
    • MCP、plugins、多 agent、本地 LLM、云端 provider 都在一个仓库里。

核心机制

1. Memory blocks

Letta 最重要的抽象是 memory blocks。它不是把所有记忆混成一团,而是把长期信息拆成结构化单元,交给 agent 生命周期管理。

2. Stateful lifecycle

agent_manager.py 负责 agent 生命周期与 memory orchestration,这意味着:

  • 创建 agent
  • 维护 block 关联
  • 管理来源与 passages
  • 处理上下文窗口和状态演化

3. 多形态运行

Letta 同时支持:

  • 本地终端 agent
  • API agent
  • 服务端部署
  • 多 agent group
  • voice / sleeptime 变体

这说明它把 memory 视为跨运行时的底层能力,而不是 UI 附属件。

优势与不足

优势

  • 定位完整,CLI + API + server 一体化
  • 头部开源项目,社区活跃
  • 很适合研究 stateful agent 的工程化落地
  • memory blocks 的抽象清晰,易于解释和扩展

不足

  • 仓库很大,学习成本高
  • 平台叙事强,新用户容易觉得重
  • 多种 agent 形态并存,边界管理复杂
  • 如果把它当“简单记忆层”,会低估它的复杂度

适合谁

最适合:

  • 想做长期有状态 agent 的团队
  • 想研究 memory 如何进入 agent state 的工程师
  • 想要 CLI / API 双形态平台的人
  • 想做多模型、多工具、多 agent 系统的人

不太适合:

  • 只想要轻量记忆 SDK 的人
  • 只想做简单 RAG 的团队
  • 想快速上手、不要平台复杂度的人

我的判断

Letta 是当前 memory / agent 平台里非常值得深挖的对象。它的价值不在于“记住几句话”,而在于它展示了一个更完整的思路:

记忆不是一个外挂功能,而是 agent 的运行时基础设施。

如果你关心的是“如何把长期记忆真正做进 agent 产品”,Letta 是非常好的研究样本。