渐进式加载
概述
通过分层按需加载模型解决"知识库越大、Token 消耗越多"的矛盾,使知识可无限增长而每次对话成本几乎固定。存在三级(Skills)和四级(MemPalace)两种实现。
关键内容
- 三级加载模型(Skills 系统):Level 0 返回目录(名称+描述,约 3,000 tokens 固定消耗)→ Level 1 加载特定技能的完整 SKILL.md → Level 2 加载技能目录中的特定参考文件
- 为什么固定 3,000 tokens:Level 0 只包含名称和一行描述,每个技能仅贡献约 30 tokens 的目录条目,无论有 10 个还是 100 个技能,目录大小基本固定
- 实际工作流:用户请求 → Agent 查看 Level 0 目录 → 发现相关技能 → 调用 skill_view 加载完整内容 → 按技能文档执行任务
- 设计目标:可以积累上百个技能,而不用担心 Token 成本爆炸,实现记忆库无限增长与每次对话成本可控的平衡
- API 接口:
skills_list()返回 Level 0 目录,skill_view(name)加载 Level 1,skill_view(name, path)加载 Level 2 - 四级渐进式加载(MemPalace):从全局地图到精确原文,按需按量加载,解决"如何在有限的 Token 预算内精准注入最相关记忆"的核心工程问题
- Level 1 — Palace Overview(宫殿鸟瞰):~50-100 tokens,列出所有 Wing 名称和 Tunnel 连接。每次 Agent 启动时通过
mempalace_status工具自动注入,让 AI 知道自己"拥有"哪些记忆 - Level 2 — Wing Summary(翼摘要):~100-200 tokens/翼,展开某 Wing 内所有 Room 列表、最近活动时间、内容方向。当用户问题涉及特定项目时触发
- Level 3 — Room + Closet(房间 + AAAK 导航):~120-300 tokens/房间,加载 Hall 分类信息(facts/events/discoveries/preferences/advice)和 Closet 中的 AAAK 压缩摘要。这是"按图索骥"的关键层,AI 已知有什么决策/事件/建议,可判断是否需要进入 Level 4
- Level 4 — Drawer Content(抽屉原文):~300-800 tokens/抽屉,加载特定 Drawer 的完整原始内容,一字不改。保障"不丢失推理链",可见完整对话、决策背景、备选方案
- Token 预算对比:典型 Agent 对话合计约 980 tokens(L1~80 + L2~150 + L3~250 + L4~500),对比全量注入 99 drawers × 400 tokens ≈ 39,600 tokens,节省约 97.5% Token 消耗
- Know Before Speaking 协议:
mempalace_status每次响应注入软约束指令 "BEFORE RESPONDING... call mempalace_kg_query or mempalace_search FIRST",确保 AI 不凭训练数据回答,而是先查询记忆 - 时序知识图谱层(Temporal KG):处理"会随时间变化的事实",维护 entity 的 timeline 数组记录不同时间点的状态和来源 drawer。AI 问"现在用什么部署策略"时自动返回最新状态,传统 RAG 无法区分时序关系
来源
- NousResearch/hermes-agent — 2026 年 4 月版本,Hermes Agent 深度解析第四篇
- mempalace_02_palace_architecture.md — MemPalace 深度解析第二篇
- mempalace_04_progressive_loading.md — MemPalace 深度解析第四篇:4 级渐进式加载系统
相关
- Hermes Agent — implements
- SKILL.md 格式规范 — extends
- 程序性记忆 — part_of
- 条件激活机制 — compares_to
- MemPalace — implements
- MemPalace 宫殿架构 — part_of
- AAAK 方言 — uses
- 时序知识图谱 — extends
- Know Before Speaking 协议 — part_of
- Token 经济学 — part_of
- 上下文窗口 — compares_to