OpenHuman MemoryTree 记忆系统
概述
Memory Tree 是 OpenHuman 最核心的设计之一。它解决了 AI 助手的长期记忆问题——大多数 AI 助手每次开启新对话都需要重新介绍上下文,而 Memory Tree 让 AI 具备了跨周跨月的连贯记忆能力。
它不是简单的向量数据库套壳。Memory Tree 会主动遍历你所有已连接的数据源,每 20 分钟自动扫描一次,将新数据压缩、归档、关联,构建起有结构的长期记忆。
类比理解
Memory Tree 就像你的私人图书馆管理员。他不是把每本书直接堆在你桌上(像普通 AI 那样把所有历史塞进对话上下文),而是把书分门别类放上书架、贴好标签、定期更新目录。当你要找某个信息时,他能迅速告诉你"在第几排第几列"。
三层摘要树架构
Memory Tree 将数据组织为 3 棵不同粒度的摘要树:
1. Source Tree(来源树)
每个数据源独立生成一棵摘要树:
- Gmail 的每个标签(Label)一棵
- Slack 的每个频道一棵
- GitHub 的每个仓库一棵
- 互不污染,来源清晰
数据进入时,自动切成 ≤ 3k Token 的 Markdown 块,按来源分层折叠。
2. Topic Tree(主题树)
按"热度"懒加载,系统自动识别:
- 某个人最近频繁出现?→ 单独建树
- 某个项目讨论密度高?→ 单独建树
- 热度下降后自动归档
这是"AI 能提前一步"的关键——不是等用户问才搜,而是主动识别出当前最重要的主题。
3. Global Tree(全局树)
每天 UTC 0 点自动生成一份当日全摘要,概括所有数据源中的重要信息变化。
本地存储结构
所有记忆数据落地为 SQLite + Obsidian 兼容的 Markdown vault,路径为 ~/.openhuman/wiki/。
这意味着你可以直接用 Obsidian 打开 AI 的"大脑",查看:
- AI 如何理解你
- 如何归纳每个人和每件事
- 信息之间的关联关系
text
~/.openhuman/wiki/
├── sources/ # Source Tree 数据
│ ├── gmail/
│ │ ├── work.md
│ │ └── personal.md
│ ├── slack/
│ │ ├── general.md
│ │ └── project-alpha.md
│ └── github/
│ └── openhuman.md
├── topics/ # Topic Tree 数据
│ ├── q3-budget.md
│ ├── mark-collaboration.md
│ └── archived/
├── daily/ # Global Tree 数据
│ ├── 2026-05-20.md
│ ├── 2026-05-21.md
│ └── 2026-05-22.md
└── index.md与传统方案对比
| 特性 | 传统 AI 助手 | OpenHuman Memory Tree |
|---|---|---|
| 记忆方式 | 对话历史 | 结构化本地知识库 |
| 持久性 | 关掉对话就忘 | 跨周跨月连贯记忆 |
| 数据结构 | 线性文本 | 三层摘要树 |
| 可读性 | 不可查看 | Obsidian 直接浏览 |
| 自动更新 | 无 | 每 20 分钟自动同步 |
| 来源分离 | 混合不分 | 按来源独立建树 |
数据同步流程
隐私保护
- 所有记忆数据存储在本地
~/.openhuman/wiki/ - 路径下的 Markdown 文件可读可改
- 可在设置中开启 Local AI 模式(走 Ollama),将 embedding 和摘要树构建移到本地
- 开启本地模式后,核心知识库的生成完全离线
最后更新:2026-05-22
