探索未来智能记忆系统 - MemU
在当今人工智能和大语言模型(LLMs)快速发展的背景下,MemU应运而生。它是一个功能强大的智能记忆框架,旨在为LLM和AI智能体提供后端支持,能够处理多模态输入(包括对话、文档、图像等),并将这些数据提取到结构化的记忆中,从而构建一个支持嵌入基础(RAG)和非嵌入(LLM)检索的层次化文件系统。
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:自行托管
安装
pip install -e .
基本示例
需求:Python 3.13+ 和 OpenAI API 密钥
测试内存存储(无需数据库):
export OPENAI_API_KEY=your_api_key
cd tests
python test_inmemory.py
测试PostgreSQL存储(需要pgvector):
# 启动使用pgvector的PostgreSQL
docker run -d \
--name memu-postgres \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=memu \
-p 5432:5432 \
pgvector/pgvector:pg16
# 运行测试
export OPENAI_API_KEY=your_api_key
cd tests
python test_postgres.py
这两个示例演示了完整的工作流程:
- 记忆:处理对话文件并提取结构化记忆
- 检索(RAG):快速的基于嵌入的搜索
- 检索(LLM):深层语义理解的搜索
核心API
memorize() - 提取并存储记忆
处理输入资源并提取结构化记忆:
result = await service.memorize(
resource_url="path/to/file.json", # 文件路径或URL
modality="conversation", # conversation | document | image | video | audio
user={"user_id": "123"} # 可选:限制特定用户
)
retrieve() - 查询记忆
根据查询检索相关记忆。MemU支持两种检索策略:
基于RAG的检索(method="rag")
快速的嵌入向量搜索,使用余弦相似度:
- ✅ 快速:纯向量计算
- ✅ 可扩展:适用于大型记忆存储
- ✅ 返回分数:每个结果包含相似度分数
基于LLM的检索(method="llm")
通过直接LLM推理进行深层语义理解:
- ✅ 深入理解:LLM理解上下文和细微差别
- ✅ 查询重写:自动在每个层级重新构建查询
- ✅ 适应性强:在找到足够信息时提前停止
对比
| 方面 | RAG | LLM |
|---|---|---|
| 速度 | ⚡ 快速 | 🐢 较慢 |
| 成本 | 💰 低 | 💰💰 较高 |
| 语义深度 | 中等 | 深入 |
| 第二层范围 | 所有项目 | 仅相关类别中的项目 |
| 输出 | 含相似度分数 | 根据LLM推理排名 |
使用案例
示例 1:对话记忆
从多轮对话中提取和组织记忆:
export OPENAI_API_KEY=your_api_key
python examples/example_1_conversation_memory.py
效果:
- 处理多个对话JSON文件
- 提取记忆项目(偏好、习惯、观点、关系)
- 生成类别markdown文件(
preferences.md、work_life.md等)
适用场景:个人AI助手、客户支持机器人、社交聊天机器人
示例 2:从日志中提取技能
从代理执行日志中提取技能和经验教训:
export OPENAI_API_KEY=your_api_key
python examples/example_2_skill_extraction.py
效果:
- 顺序处理代理日志
- 提取行动、结果和经验教训
- 演示增量学习 - 记忆随每个文件演化
- 生成演变的技能指导(
log_1.md→log_2.md→skill.md)
适用场景:DevOps团队、代理自我提升、知识管理
示例 3:多模态记忆
处理多种内容类型并统一记忆:
export OPENAI_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凭借其多模态输入和自我演化记忆的能力,展现出了独特的优势。
更多推荐


所有评论(0)