MemU: 前沿智能记忆系统
在当今人工智能和大语言模型(LLMs)快速发展的背景下,MemU应运而生。它是一个功能强大的智能记忆框架,旨在为LLM和AI智能体提供后端支持,能够处理多模态输入(包括对话、文档、图像等),并将这些数据提取到结构化的记忆中,从而构建一个支持嵌入基础(RAG)和非嵌入(LLM)检索的层次化文件系统。
核心功能
MemU具有以下四大核心功能:
| 功能 | 描述 |
|---|---|
| 🗂️层次化文件系统 | 三层架构:资源 → 项目 → 类别,支持全生命周期追溯 |
| 🔍双重检索方法 | RAG(基于嵌入)提供速度,LLM(非嵌入)深入语义理解 |
| 🎨多模态支持 | 处理对话、文档、图像、音频和视频 |
| 🔄自我演化记忆 | 根据使用模式逐步优化和改进记忆结构 |
层次化文件系统
MemU采用三层架构对记忆进行组织,受到层次存储系统的启发。具体结构如下:
| 层级 | 描述 | 示例 |
|---|---|---|
| 资源 | 原始多模态数据仓库 | JSON对话、文本文档、图像、视频 |
| 项目 | 提取的离散记忆单元 | 个人偏好、技能、观点、习惯 |
| 类别 | 聚合的文本记忆及摘要 | preferences.md,work_life.md,relationships.md |
主要好处:
- 全生命周期追溯:可以从原始数据追踪到项目和类别,并反向查找
- 渐进总结:每一层都提供更抽象的视图
- 灵活组织:根据内容模式逐步演化的类别
多模态支持
MemU能够处理各种内容类型并将其整合为统一的记忆结构:
| 模态 | 输入 | 处理 |
|---|---|---|
对话 | JSON聊天记录 | 提取偏好、观点、习惯、关系 |
文档 | 文本文件(.txt,.md) | 提取知识、技能、事实 |
图像 | PNG、JPG等 | 视觉模型提取视觉概念和描述 |
视频 | 视频文件 | 帧提取 + 视觉分析 |
音频 | 音频文件 | 转录 + 文本处理 |
所有模态都统一到同一三层体系结构中,从而支持跨模态检索。
快速开始
选项 1:云版本
无需任何设置,即可立即尝试MemU:
👉memu.so- 完整API访问的托管云服务
企业部署和定制解决方案,请联系info@nevamind.ai
云API (v3)
| 基础URL | https://api.memu.so |
|---|---|
| 认证 | Authorization: Bearer YOUR_API_KEY |
| 方法 | 接口 | 描述 |
|---|---|---|
POST | /api/v3/memory/memorize | 注册记忆任务 |
GET | /api/v3/memory/memorize/status/{task_id} | 获取任务状态 |
POST | /api/v3/memory/categories | 列出记忆类别 |
POST | /api/v3/memory/retrieve | 检索记忆(语义搜索) |
📚完整API文档
选项 2:自行托管
安装
pipinstall-e.基本示例
需求:Python 3.13+ 和 OpenAI API 密钥
测试内存存储(无需数据库):
exportOPENAI_API_KEY=your_api_keycdtests python test_inmemory.py测试PostgreSQL存储(需要pgvector):
# 启动使用pgvector的PostgreSQLdockerrun -d\--name memu-postgres\-ePOSTGRES_USER=postgres\-ePOSTGRES_PASSWORD=postgres\-ePOSTGRES_DB=memu\-p5432:5432\pgvector/pgvector:pg16# 运行测试exportOPENAI_API_KEY=your_api_keycdtests python test_postgres.py这两个示例演示了完整的工作流程:
- 记忆:处理对话文件并提取结构化记忆
- 检索(RAG):快速的基于嵌入的搜索
- 检索(LLM):深层语义理解的搜索
核心API
memorize()- 提取并存储记忆
处理输入资源并提取结构化记忆:
result=awaitservice.memorize(resource_url="path/to/file.json",# 文件路径或URLmodality="conversation",# conversation | document | image | video | audiouser={"user_id":"123"}# 可选:限制特定用户)retrieve()- 查询记忆
根据查询检索相关记忆。MemU支持两种检索策略:
基于RAG的检索(method="rag")
快速的嵌入向量搜索,使用余弦相似度:
- ✅快速:纯向量计算
- ✅可扩展:适用于大型记忆存储
- ✅返回分数:每个结果包含相似度分数
基于LLM的检索(method="llm")
通过直接LLM推理进行深层语义理解:
- ✅深入理解:LLM理解上下文和细微差别
- ✅查询重写:自动在每个层级重新构建查询
- ✅适应性强:在找到足够信息时提前停止
对比
| 方面 | RAG | LLM |
|---|---|---|
| 速度 | ⚡ 快速 | 🐢 较慢 |
| 成本 | 💰 低 | 💰💰 较高 |
| 语义深度 | 中等 | 深入 |
| 第二层范围 | 所有项目 | 仅相关类别中的项目 |
| 输出 | 含相似度分数 | 根据LLM推理排名 |
使用案例
示例 1:对话记忆
从多轮对话中提取和组织记忆:
exportOPENAI_API_KEY=your_api_key python examples/example_1_conversation_memory.py效果:
- 处理多个对话JSON文件
- 提取记忆项目(偏好、习惯、观点、关系)
- 生成类别markdown文件(
preferences.md、work_life.md等)
适用场景:个人AI助手、客户支持机器人、社交聊天机器人
示例 2:从日志中提取技能
从代理执行日志中提取技能和经验教训:
exportOPENAI_API_KEY=your_api_key python examples/example_2_skill_extraction.py效果:
- 顺序处理代理日志
- 提取行动、结果和经验教训
- 演示增量学习- 记忆随每个文件演化
- 生成演变的技能指导(
log_1.md→log_2.md→skill.md)
适用场景:DevOps团队、代理自我提升、知识管理
示例 3:多模态记忆
处理多种内容类型并统一记忆:
exportOPENAI_API_KEY=your_api_key python examples/example_3_multimodal_memory.py效果:
- 同时处理文档和图像
- 从不同内容类型中提取记忆
- 统一为跨模态类别(
technical_documentation、visual_diagrams等)
适用场景:文档系统、学习平台、研究工具
绩效
MemU在Locomo基准测试中实现了92.09%的平均准确率,覆盖各种推理任务。
生态系统
| 存储库 | 描述 | 用例 |
|---|---|---|
| memU | 核心算法引擎 | 将AI记忆嵌入到产品中 |
| memU-server | 提供CRUD、用户系统、RBAC的后端服务 | 自托管的记忆后端 |
| memU-ui | 视觉仪表板 | 即用的记忆控制台 |
类似项目
在MemU的背后,有许多其他竞争力强的开源项目也在解决记忆和信息检索的问题。例如:
- Milvus:一个开源的向量数据库,可实现高效的相似性搜索和检索服务,适用于各种AI应用。
- Chroma:提供文档和数据检索的解决方案,支持多种数据类型和高效索引。
- Haystack:一个用于构建与搜索相关的应用的框架,可以帮助开发人员轻松集成LLM和信息检索。
使用这些项目可以进行定制化的解决方案,以满足特定场景下的信息检索需求,然而,MemU凭借其多模态输入和自我演化记忆的能力,展现出了独特的优势。