Model-Memory-Protocol (MMP) 旨在解决大型语言模型(LLM)长期记忆管理的核心挑战。随着AI系统变得越来越强大,它们需要能够有效地存储、检索和更新知识。MMP提供了一种结构化的方式来组织和操作这些"记忆",使AI能够:
- 构建持久化知识树:克服LLM上下文窗口限制,实现长期记忆存储
- 标准化记忆交互:提供统一接口,让不同的AI系统能够共享和交换记忆
- 结构化知识管理:以树状结构组织记忆,便于分层和关联管理
- 增强模型能力:让AI可以逐步积累知识,形成更稳定的能力表现
MMP的核心理念是将记忆视为一种结构化的资源,而非简单的文本片段。通过这种方式,AI可以像人类一样,构建有组织的知识体系,实现真正的"学习"和"成长"。
记忆节点是MMP的基本单位,每个节点包含以下属性:
- Name:节点名称,简明扼要地描述节点内容
- Description:详细描述,提供关于节点内容的更多上下文
- Path:节点在记忆树中的位置,形如层级路径
- Attention:特别说明,标记节点的重要性或使用注意事项
- NeedInit:标记节点是否需要初始化
- Format:该节点下所有子节点需要遵循的格式要求,可提供示例
- Type:内容类型(json/markdown/xml/plaintext等),第一版仅实现plaintext
- Content:实际存储的内容,可以是文本、二进制等形式
记忆树是节点的组织结构,具有:
- Prefix:所有节点共享的路径前缀
- Format:整个树的格式规范,如XML
每个记忆单元的唯一标识符,格式为mm-{uuid}。
包含基本记忆节点设置的模板,用于快速创建标准化的记忆结构。
MMP定义了四种基本操作:
- 初始化记忆:创建记忆结构的框架
- 添加记忆:向记忆树中添加新节点
- 获取记忆:检索特定记忆节点的内容
- 更新记忆:修改现有记忆节点的内容
MMP通过JSON-RPC实现,可以与现有的模型控制协议(MCP)集成,使LLM能够:
- 获取所有待初始化节点
- 获取记忆列表(Path-name-description)
- 获取记忆内容(支持XML等格式输出)
- 更新特定记忆
- 插入新记忆
- 应用记忆模板
- 查看OpenRPC规范文档了解详细API设计
欢迎提交Issue和Pull Request来完善MMP协议。我们特别欢迎以下方面的贡献:
- 新记忆类型的实现
- 性能优化
- 安全性增强
- 文档改进
MIT License