MemGPT:迈向操作系统式 LLM

原文:MemGPT: Towards LLMs as Operating Systems
作者:Charles Packer 等
发表:arXiv 2023(2310.08560)
翻译整理:2026-06-16


核心问题

LLM 的上下文窗口是固定且有限的。当任务所需的信息量超过上下文窗口时,现有方案要么截断信息(丢失内容),要么无法处理(直接失败)。

MemGPT 的核心问题:能否像操作系统管理内存一样,让 LLM 突破固定上下文窗口的限制?


核心类比:LLM 即操作系统

MemGPT 的设计灵感来自操作系统的虚拟内存管理

OS 概念MemGPT 对应
主内存(RAM)LLM 的活跃上下文窗口
磁盘存储外部记忆数据库
内存分页(Paging)上下文在快慢存储间的迁移
中断(Interrupt)控制 LLM 与系统交互的机制
进程调度管理哪些信息进出上下文

操作系统通过「将不常用的内存页换出到磁盘,需要时再换入」解决了物理内存有限的问题。MemGPT 用同样的思路解决上下文窗口有限的问题。


架构:三层记忆结构

┌─────────────────────────────────────┐
│         主上下文(Main Context)       │  ← LLM 的活跃上下文窗口
│   当前对话 + 当前任务 + 活跃信息        │    固定大小,推理在此发生
└───────────────┬─────────────────────┘
                │ 中断驱动的迁移
┌───────────────▼─────────────────────┐
│       召回存储(Recall Storage)       │  ← 对话历史数据库
│   近期对话记录,可按需检索              │    可扩展,较快
└───────────────┬─────────────────────┘
                │ 检索
┌───────────────▼─────────────────────┐
│       归档存储(Archival Storage)     │  ← 长期记忆数据库
│   所有历史信息,向量搜索检索            │    无限扩展,较慢
└─────────────────────────────────────┘

数据流向

  • 新信息进入主上下文
  • 当主上下文接近容量上限时,旧信息被「换出」到召回存储或归档存储
  • 当 LLM 需要某段历史信息时,通过「中断」触发检索,将信息「换入」主上下文

中断机制(Interrupt-Based Control Flow)

MemGPT 引入了中断来管理 LLM 与记忆系统之间的交互。

LLM 可以触发两类中断:

内部中断(自主触发)

  • archival_memory_search("关键词") — 在归档存储中搜索相关信息
  • archival_memory_insert("内容") — 将信息存入归档存储
  • conversation_search("关键词") — 在对话历史中搜索

外部中断(系统触发)

  • 用户发送新消息
  • 上下文接近容量上限的警告
  • 定时触发(如每隔 N 轮对话进行记忆整理)

两个验证场景

场景 1:超长文档分析

问题:文档长度超过上下文窗口,无法一次性处理。

MemGPT 解法

  1. 将文档分块存入归档存储
  2. 根据问题,按需检索相关块到主上下文
  3. LLM 基于检索到的内容回答问题

效果:可以处理任意长度的文档,不受上下文窗口限制。

场景 2:多会话持续对话

问题:普通 LLM 每次新会话都从零开始,无法记住历史交互中的用户信息。

MemGPT 解法

  1. 每次对话后,将重要信息(用户偏好、历史问题、已知事实)存入归档存储
  2. 下次对话开始时,检索与当前上下文相关的历史信息注入主上下文
  3. LLM 表现得「记得」之前的对话

效果:Agent 可以跨会话持续积累对用户的了解,做到「越用越懂你」。


与标准 RAG 的区别

MemGPT 常被与 RAG(检索增强生成)混淆,但有本质区别:

维度标准 RAGMemGPT
检索时机仅在回答前检索一次随时可触发多次检索
控制权外部系统控制检索LLM 自主决定何时检索
记忆写入通常只读LLM 可主动写入记忆
上下文管理固定策略动态、中断驱动
类比图书馆查阅OS 内存管理

MemGPT 的 LLM 是记忆系统的主动管理者,而非被动的信息接收者。


已公开资源

论文代码和实验数据已开源,是研究 Agent 长期记忆的重要参考实现。


局限性与注意事项

  1. 换出决策难度:哪些信息该换出、哪些该保留,本身是个困难问题。错误的换出决策会导致关键信息丢失且没有错误信号(静默失败)
  2. 检索延迟:每次从外部存储检索都引入额外延迟,对实时性要求高的场景有影响
  3. 自我强化的检索偏差:LLM 倾向于搜索自己「认为相关」的内容,可能错过真正相关但描述方式不同的信息

核心价值

MemGPT 提供了一个重要的思维框架:将 LLM 视为需要内存管理的处理器,而非无限容量的记忆体

这一框架为设计长期记忆 Agent 提供了清晰的架构蓝图,尽管具体实现复杂,但核心思想已被后续大量工作(如 Claude 的 Projects 功能、各类 Agent 框架的记忆模块)所采纳。