MemOS 是一个开源系统,专注于为大语言模型(LLM)提供记忆增强功能。它通过创新的记忆管理和调度机制,帮助模型更好地存储、检索和利用上下文信息。MemOS 在多跳推理、开放域问答和时序推理等任务中表现优异,相比传统模型提升了显著性能,例如时序推理准确率提升 159%。它支持 Linux 平台,易于开发者集成和扩展,适合用于构建更智能的 AI 应用。项目在 GitHub 上活跃,社区支持丰富,开发者可通过 GitHub Issues、Discussions 或 Discord 参与贡献。
功能列表
- 记忆增强生成(MAG):提供统一的 API 接口,支持模型结合上下文记忆进行聊天和推理。
- 模块化记忆架构(MemCube):灵活管理多种记忆类型,方便开发者定制和扩展。
- 文本记忆管理:支持存储和检索结构化或非结构化文本知识,适合快速知识更新。
- 记忆调度机制:动态分配记忆资源,优化模型在长上下文任务中的性能。
- 版本控制与治理:提供记忆的访问控制、追溯和解释功能,确保安全合规。
- 支持多种 LLM 集成:兼容主流大语言模型,增强其记忆能力。
- 社区协作工具:通过 GitHub Issues、Pull Requests 和 Discord 支持开发者贡献和交流。
使用帮助
安装流程
MemOS 目前主要支持 Linux 平台,Windows 和 macOS 可能存在兼容性问题。以下是详细的安装步骤:
- 克隆仓库
使用 Git 克隆 MemOS 仓库到本地:git clone https://github.com/MemTensor/MemOS.git cd MemOS
- 安装依赖
执行以下命令安装 MemOS(推荐使用可编辑模式):make install
确保系统已安装 Python 和相关依赖。如果需要使用基于
transformers
库的功能,需安装 PyTorch,推荐使用支持 CUDA 的版本以获得 GPU 加速:pip install torch
- 安装 Ollama(可选)
如果需要与 Ollama 集成,需先安装 Ollama CLI:curl -fsSL https://ollama.com/install.sh | sh
- 验证安装
安装完成后,可通过运行示例代码或查看文档验证是否成功。文档路径为:
docs/api/info
或访问在线文档:https://memos.openmem.net/docs/api/info。
使用方法
MemOS 的核心功能是通过 API 调用实现记忆增强生成和记忆管理。以下是主要功能的详细操作流程:
1. 记忆增强生成(MAG)
MemOS 提供统一的 API 接口,开发者可通过以下步骤实现记忆增强的聊天或推理:
- 初始化 MemOS
在 Python 环境中导入 MemOS 库并初始化:from memos import MemoryAugmentedGeneration mag = MemoryAugmentedGeneration(model="gpt-4o-mini") # 示例模型
- 添加记忆
将用户输入或上下文信息存储为记忆:mag.add_memory(user_id="user1", content="用户喜欢科技新闻")
- 生成回复
调用 API 生成结合记忆的回复:response = mag.generate(query="推荐一些科技新闻", user_id="user1") print(response)
MemOS 会根据存储的记忆(如“用户喜欢科技新闻”)生成更个性化的回答。
2. 文本记忆管理
MemOS 支持存储和检索文本知识,适合快速更新知识库:
- 存储文本记忆
使用 API 存储结构化或非结构化文本:mag.store_text_memory(content="2025年AI趋势:记忆增强技术", tags=["AI", "趋势"])
- 检索记忆
根据查询检索相关记忆:results = mag.search_memory(query="AI趋势", limit=3) for result in results: print(result["content"])
3. 记忆调度与优化
MemOS 的 MemScheduler 动态管理记忆资源,开发者无需手动配置。默认设置下,系统会根据任务类型(如多跳推理或时序推理)自动分配记忆资源。若需自定义调度,可通过配置文件调整:
config/scheduler.yaml
4. 社区协作
MemOS 鼓励开发者参与社区贡献:
- 提交问题或功能请求:在 GitHub Issues 页面报告 bug 或提出新功能建议。
- 贡献代码:通过 GitHub Pull Requests 提交代码改进。
- 加入讨论:在 GitHub Discussions 或 Discord 服务器与开发者交流。
特色功能操作
MemOS 在时序推理和多跳推理任务中表现突出。例如,在时序推理中,开发者可通过以下方式测试:
mag.add_memory(user_id="test", content="2024年10月,AI会议召开")
mag.add_memory(user_id="test", content="2025年1月,新模型发布")
response = mag.generate(query="AI会议后发生了什么?", user_id="test")
print(response) # 输出:新模型发布
此功能通过 MemCube 架构实现,确保记忆按时间顺序准确检索。
应用场景
- 个性化 AI 助手
MemOS 可为 AI 助手添加长期记忆功能,记住用户偏好(如喜欢的新闻类型或购物习惯),提供更精准的推荐和回答。
例如,开发者可为电商平台构建一个记住用户购买历史的聊天机器人,提升用户体验。 - 知识管理系统
MemOS 的文本记忆管理功能适合企业构建内部知识库,快速存储和检索文档、报告或技术资料。
例如,技术团队可使用 MemOS 管理项目文档,方便跨部门协作。 - 教育与研究
MemOS 可帮助研究人员存储和分析实验数据或文献记录,支持多跳推理以回答复杂问题。
例如,学生可使用 MemOS 整理课程笔记,快速检索相关知识点。
QA
- MemOS 支持哪些平台?
目前主要支持 Linux,Windows 和 macOS 可能存在兼容性问题。推荐在 Linux 环境下使用。 - 是否需要特定的 LLM?
MemOS 支持多种大语言模型,默认使用 OpenAI 的gpt-4o-mini
,但可根据文档配置其他模型。 - 如何参与 MemOS 开发?
可通过 GitHub Issues 报告问题、提交 Pull Requests 贡献代码,或加入 Discord 社区讨论。 - MemOS 的性能优势是什么?
相比传统模型,MemOS 在时序推理提升 159%,整体准确率提升 38.98%,并减少 60.95% 的 token 消耗。