Mem0:面向AI应用的开放源代码记忆层

Mem0:面向AI应用的开放源代码记忆层 图片 1

嘿,HN!我们是Taranjeet和Deshraj,Mem0的创始人。Mem0 为 AI 应用添加了有状态的内存层,使其能够随时间记忆用户交互、偏好和上下文。

这使得AI应用能够提供越来越个性化和智能化的体验,随着每次互动不断演进。 有演示视频, 还有一个游乐场可以试玩。

你需要注册使用游乐场——这有助于通过将互动与个人资料关联,确保回复更适合你。当前的大型语言模型是无状态的——它们会在会话间忘记所有内容。

这种限制导致了重复的交互、缺乏个性化,以及计算成本增加,因为开发者必须在每个提示中反复包含大量上下文。当我们构建 Embedchain(一个拥有超过 200 万下载量的开源 RAG 框架)时,用户不断分享他们对大型语言模型在会话间记忆不起任何内容的挫败感。

他们必须反复输入相同的上下文,这既昂贵又低效。我们意识到,要让人工智能提供更有用、更智能的回答,它需要内存。那时我们开始构建Mem0。

Mem0采用混合数据存储架构,结合图存储、向量存储和键值存储,有效存储和管理记忆。工作原理如下:添加记忆:当你用 Mem0 配合你的 AI 应用时,它可以接收任何消息或互动,并自动检测需要记住的重要部分。

信息组织:Mem0将信息按不同类别分类:- 事实和结构化数据进入键值存储,方便快速访问。- 事物之间的连接(如人、地点或物体)保存在理解不同实体关系的图存储中。

- 对话的整体意义和语境存储在向量存储中,便于日后寻找相似记忆。记忆检索:当收到输入查询时,Mem0通过结合图遍历技术、向量相似度和键值查找,搜索并检索相关存储信息。

它优先处理最重要、相关且最新的信息,确保无论存储多少内存,AI始终拥有正确的上下文。与传统的无记忆AI应用不同,Mem0引入了持续学习的记忆层。

这减少了每个提示中反复包含长上下文块的需求,从而降低计算成本并加快响应时间。随着Mem0学习和记忆信息的积累,AI应用变得更具适应性,无需依赖每次交互中的大上下文窗口,从而提供更相关的响应。

我们已开源了驱动 Mem0 的核心技术——特别是向量数据库和图数据库中的内存管理功能,以及有状态内存层——并以 Apache 2.0 许可证发布。

这包括在你的AI应用中添加、整理和检索记忆的能力。然而,某些针对生产应用优化的功能,如低延迟推断,以及可扩展的图和矢量数据存储,用于实时内存更新,是我们付费平台的一部分。

这些高级功能不包含在开源软件包中,但为需要在生产环境中扩展内存管理的用户提供。我们已向HN用户开放开源版本和平台。你可以访问我们的GitHub仓库(年),或直接在 上探索平台。

我们很想听听你的看法!欢迎随时参与游乐场,查看代码,并与我们分享任何想法或建议。你的反馈将帮助我们决定接下来的Mem0方向!

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论