你是否也曾苦恼,精心调教的 AI 助手,转头就把你们的对话忘得一干二净?每开启一次新的会话,都得把前情提要再说一遍,仿佛在和一个只有七秒记忆的鱼对话。
这背后的原因其实很简单:大多数大型语言模型(LLM)天生是无状态的,它们不会主动保留过去的交互信息。为了解决这个问题,开发者们通常会引入向量数据库来存储对话历史和上下文。但这也带来了新的挑战:技术栈更复杂了,成本也上去了,还可能被特定的服务商“套牢”。
今天,我们要介绍一个名为 Memori 的开源项目,它为 AI 的“失忆症”提供了一剂优雅且经济的良方。
Memori 是一个为 LLM、AI Agent 和多智能体系统设计的开源记忆引擎。它的核心理念是:用一行代码,为你熟悉的标准 SQL 数据库(如 SQLite, PostgreSQL, MySQL)赋予 AI 记忆能力。
没错,你没看错,只需要一行代码:memori.enable()。
为什么选择 Memori?
体验 Memori 的魔力有多简单?我们来看一段代码。
首先,安装 SDK:
pipinstallmemorisdk
然后,在你的代码中加入 Memori:
frommemoriimportMemori
fromopenaiimportOpenAI
#初始化并启用Memori
memori=Memori(conscious_ingest=True)
memori.enable()
client=OpenAI()
#第一次对话
response=client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role":"user","content":"我正在开发一个FastAPI项目"}]
)
#过了一段时间,开启新的对话
response=client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role":"user","content":"帮我为这个项目添加用户认证功能"}]
)
#此时,LLM已经知道你在谈论的是之前的FastAPI项目就是这么简单!在第二次对话中,你无需重复提及项目背景,Memori 已经悄悄地将上下文信息注入,让 LLM “记起”了你们之前的谈话内容。
Memori 的实现方式非常巧妙,它通过“拦截” LLM 的调用请求来工作。
整个流程可以分为两部分:
此外,Memori 还有一个后台的“意识代理”(Conscious Agent),它会定期分析长期记忆,将重要的信息提升到短期工作记忆中,进一步优化检索效率。
Memori 的设计初衷就是为了让开发者能够轻松地将其集成到现有工作流中。
数据库支持
你可以使用任何你熟悉的 SQL 数据库,只需提供一个连接字符串即可。
| ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;background: rgba(0, 0, 0, 0.05);">数据库 | ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;background: rgba(0, 0, 0, 0.05);">连接字符串示例 |
|---|---|
| ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;">SQLite | ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;"> |
| ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;">PostgreSQL | ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;"> |
| ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;">MySQL | ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;"> |
| ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;border-width: 1px;border-style: solid;border-color: rgb(223, 223, 223);padding: 0.25em 0.5em;color: rgb(63, 63, 63);word-break: keep-all;">Neon | postgresql://user:pass@ep-*.neon.tech/memori |
| Supabase | postgresql://postgres:pass@db.*.supabase.co/postgres |
LLM 框架支持
得益于 LiteLLM 的回调系统,Memori 可以支持几乎所有的 LLM 框架。
| 框架 | 状态 |
|---|---|
| OpenAI | ✓ 原生支持 |
| Anthropic | ✓ 原生支持 |
| LiteLLM | ✓ 原生支持 |
| LangChain | ✓ 支持 |
| Azure OpenAI | ✓ 支持 |
| 100+ 模型 | ✓ 支持 |
对于正在构建 AI 应用的开发者来说,记忆管理是一个无法回避的核心问题。Memori 项目提供了一种全新的解决思路,它通过拥抱开发者最熟悉的 SQL 技术,极大地降低了实现持久化记忆的门槛和成本。
它不仅让 AI “记住”了过去,更让开发者能够完全掌控自己的数据,避免了被特定技术或服务锁定。如果你也想让你的 AI 应用变得更聪明、更善解人意,那么 Memori 绝对是一个值得尝试的开源利器。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |