论文 · MemGPT: Towards LLMs as Operating Systems

基础信息

  • 会议/期刊:arXiv preprint, 2023
  • 论文主题:用操作系统式分层记忆与 virtual context management 扩展固定上下文 LLM

核心贡献:本文提出 MemGPT,将 LLM 类比为操作系统中的处理器,通过 main context、external context、archival storage、recall storage 和 function calling 实现 virtual context management,使固定上下文模型能处理长对话和长文档任务。

Q1. 研究动机

LLM 的固定上下文窗口限制了长对话和长文档分析能力。直接扩展 Transformer 上下文会带来二次计算和显存成本,而且长上下文模型也可能无法有效利用中间信息。作者因此借鉴操作系统虚拟内存思想,让 LLM 主动管理上下文和外部存储。

Q2. 核心问题

论文试图解决的问题是:如何在不改变底层固定上下文 LLM 的情况下,让系统表现得像拥有无限上下文一样,能够跨多轮会话记忆用户信息,并在超长文档集合中检索和整合信息。

Q3. 现有不足 & 本文改进

现有方法主要有两类:一是直接训练或使用更长上下文模型,但计算成本高且长距离利用能力不稳定;二是简单摘要或截断历史,但会丢失细节。本文的改进是提出 virtual context management:LLM 可以通过函数调用主动读写 external context,把相关信息 page in 到 main context,也能在 memory pressure 时把信息 page out 到长期存储,从而让固定上下文模型拥有类似虚拟内存的能力。

Q4. 方法流程

输入是用户消息、系统事件、文档上传、定时事件或 memory warning。MemGPT 将可见 prompt tokens 作为 main context,其中包含 system instructions、working context 和 FIFO queue;把外部数据放在 archival storage 与 recall storage 中。LLM 输出不是普通文本时可被解释为 function call,用于搜索 archival storage、检索历史消息、修改 working context 或触发后续 heartbeat。系统通过 queue manager 管理 overflow,并把必要信息重新插入上下文。输出可以是给用户的回答,也可以是一连串自我管理记忆的函数调用。

Q5. 实验设计与结论

实验 目的 结论
Deep Memory Retrieval (DMR) 检验多会话聊天中是否能从过去 5 个 session 取回具体信息 Table 2 显示 MemGPT 显著优于固定上下文 baseline:GPT-3.5 Turbo 从 38.7% accuracy / 0.394 ROUGE-L 提升到 MemGPT 66.9% / 0.629;GPT-4 从 32.1% / 0.296 提升到 92.5% / 0.814;GPT-4 Turbo 从 35.3% / 0.359 提升到 93.4% / 0.827。
Conversation opener 检验 MemGPT 是否能利用长期记忆生成更个性化的开场白 Table 3 显示 MemGPT 生成内容在 persona similarity 上可接近或超过 human opener:Human SIM-1/3/H 为 0.800/0.800/1.000;GPT-4 为 0.868/0.843/0.773;GPT-4 Turbo 为 0.857/0.828/0.767。
Multi-document question answering 检验 MemGPT 能否处理超过上下文窗口的 Wikipedia 文档集合 Figure 5 显示 MemGPT 的表现不随检索文档数量增加而明显退化,而 truncation 扩展固定上下文会因压缩文档导致性能下降;作者指出 MemGPT with GPT-4 和 GPT-4 Turbo 在该任务上结果相当。
Nested key-value retrieval 检验系统是否能跨多步搜索整合信息 Figure 7 显示 MemGPT 是唯一能在超过 2 层 nesting 后稳定完成 nested KV task 的方法;caption 同时指出 GPT-4 Turbo baseline 更强,但 MemGPT with GPT-4 Turbo 反而弱于 MemGPT with GPT-4。

Q6. 局限性

作者明确提到或实验中体现:

  • Document QA 任务受 embedding-based similarity search 限制;gold document 经常不在前十几个检索结果中,固定上下文 baseline 会直接受 retriever performance 限制。
  • MemGPT with GPT-3.5 在 document QA 中显著退化,作者归因为 GPT-3.5 function calling 能力有限。
  • Figure 7 caption 指出 MemGPT with GPT-4 Turbo 在 nested KV 上弱于 MemGPT with GPT-4,说明更大上下文或更新模型不必然带来更强工具调用表现。
  • 系统依赖函数调用、外部存储、queue manager 和 prompt instructions,工程复杂度高于简单 RAG 或摘要方法。

(以下为分析归纳,非原文明确说明)

MemGPT 更像一种 memory operating system,而不是自动学习的记忆价值评估机制。它解决“如何搬运和检索记忆”,但没有直接解决“哪些记忆应该保留、压低或遗忘”。

Q7. 学术价值

  • 理论价值:提出将 LLM 视为受限上下文 processor、将外部存储视为 virtual memory 的系统类比。
  • 方法价值:提供 main context/external context 分层、function chaining、recall storage、archival storage、queue eviction 等可复用设计。
  • 应用价值:适合长期聊天助手、个性化助理、长文档分析、多文档问答和需要跨会话记忆的 agent。

Q8. 延伸研究方向

  1. 学习式 memory policy:让系统学习何时 page in/page out,而不是主要依赖 prompt 指令和函数调用策略。
  2. 记忆价值估计:结合 outcome feedback 判断哪些长期记忆值得保留或降低优先级。
  3. 更稳健的工具调用:研究为什么 GPT-4 Turbo 在 nested KV 的 MemGPT 设置中弱于 GPT-4。
  4. 更强检索器:改进 archival storage 的 embedding retrieval,降低 gold document 排名靠后带来的性能瓶颈。
  5. 安全与隐私:长期 recall storage 保存用户历史,需要更细粒度的数据删除、访问控制和隐私治理。

Q9. 反直觉发现与方法失效分析

  • 发现一(Table 2):固定上下文 baseline 中 GPT-4 accuracy 只有 32.1%,低于 GPT-3.5 Turbo 的 38.7%;GPT-4 Turbo 为 35.3%。作者未专门解释该异常,可能与任务要求精确回忆旧 session、baseline 只能看到摘要而非完整可检索历史有关。
  • 发现二(Table 2):MemGPT 对 GPT-4 和 GPT-4 Turbo 的提升极大,GPT-4 从 32.1% 到 92.5%,GPT-4 Turbo 从 35.3% 到 93.4%。这说明瓶颈主要在 memory access,而不是底层模型能力。
  • 发现三(Table 3):MemGPT 的 SIM-1 和 SIM-3 可以超过 Human,例如 GPT-4 为 0.868/0.843,高于 Human 的 0.800/0.800;但 SIM-H 只有 0.773,低于 Human 的 1.000。作者解释 MemGPT 往往更 verbose、覆盖更多 persona 信息;这可能提高 persona similarity,却不一定更像人类原始开场白。
  • 发现四(Figure 7):caption 明确指出 GPT-4 Turbo baseline 更好,但 MemGPT with GPT-4 Turbo 比 MemGPT with GPT-4 更差。作者没有充分展开解释;合理推测是 nested KV 更依赖函数调用策略稳定性,而不是上下文长度本身。
  • 整体评价:MemGPT 在需要跨上下文检索的任务上优势很强,但效果依赖底层模型的函数调用能力、检索质量和系统提示设计;它不是简单“上下文越长越好”的证明,而是“可控记忆管理比盲目扩上下文更有效”的证据。
Ting WeChat PayWeChat Pay
0%