AIRI 记忆系统详解:如何用 DuckDB WASM + pgvector 为 AI 伴侣实现长期记忆
AIRI 记忆系统详解如何用 DuckDB WASM pgvector 为 AI 伴侣实现长期记忆【免费下载链接】airi 自托管、归你拥有的 Grok 风格 AI 伴侣与 waifu / 赛博生命灵魂容器目标是接近 Neuro-sama 的高度支持实时语音聊天、Minecraft 和 Factorio 游玩支持 Web / macOS / Windows。项目地址: https://gitcode.com/moeru-ai/airi想让 AI 伴侣拥有长期记忆吗开源项目 AIRI 用 DuckDB WASM 与 pgvector 两套向量存储方案为 AI 伴侣AI waifu / 数字伙伴搭起了从「向量嵌入」到「记忆遗忘曲线」的完整长期记忆系统。本文带你读懂它的设计思路、关键文件和核心文件路径无需大量代码也能快速上手。为什么 AI 伴侣需要长期记忆普通的聊天机器人「一问一答」聊完就忘。而 AIRI 的目标是让虚拟角色真正「住」进你的设备里像 [Neuro-sama] 那样记得你说过什么、你们一起经历过什么这里的链接已省略。记忆系统的难点在于持久记忆 vs 工作记忆长期记忆难以按关系和依赖遍历查询而工作记忆容量有限语义检索需要用 embedding 模型把「文本」变成「固定长度的向量」再做相似度搜索像人一样遗忘较新的记忆应比旧的更容易被想起情绪与时间都会影响召回。 AIRI 的开发者在 DevLog-2025.04.06 中明确说目标是做出「当下最先进、最强大、最健壮」的记忆系统思想深受人类记忆系统启发。核心架构DuckDB WASM 与 pgvector 双存储方案AIRI 没有押注单一向量数据库而是「浏览器端 服务端」两手准备DuckDB WASM跑在浏览器里的向量数据库浏览器里的记忆实验由proj-airi/drizzle-duckdb-wasm封装包提供已迁移至独立仓库见 packages/duckdb-wasm/README.md。在 packages/stage-ui/src/composables/use-duck-db.ts 中Web 端通过 Web Worker 加载 DuckDB 的 WASM bundle并用 Drizzle ORM 建表CREATE TABLE IF NOT EXISTS memory_test (vec FLOAT[768]);关键点纯 WASM 运行不依赖任何后端768 维向量直接存在浏览器内存/本地Mutex 单例管理用锁保证数据库实例全局唯一避免多标签页并发踩踏Drizzle ORM 加持TypeScript 类型安全查询即代码。pgvector.rs服务端的向量检索引擎服务端如 services/telegram-bot 的 Telegram 机器人选择 Rust 重写的 pgvector 兼容实现pgvector.rs原因是它支持超过 2000 维的向量为未来更大的 embedding 模型留足空间。初始化脚本 services/telegram-bot/sql/init.sql 只有两件事ALTER SYSTEM SET vectors.pgvector_compatibilityon; CREATE EXTENSION vectors;配合 services/telegram-bot/docker-compose.yaml 即可一键拉起向量数据库容器。而 packages/memory-pgvector/src/index.ts 则是一个基于proj-airi/server-sdk的记忆服务模块负责接入配置并常驻监听——这就是 AIRI 服务化记忆的入口骨架。记忆如何工作从对话到召回的 4 步① 嵌入Embedding文本 → 固定长度向量数组。注意维度是固定的切换 embedding 模型后需要重新索引所有记忆。② 存储Storage向量写入 DuckDB浏览器或 pgvector.rs服务端并附带时间戳、场景、情绪等元数据。③ 检索Retrieval按语义相关性 时间关联度打分支持重排序rerank。④ 衰减Decay借鉴人类遗忘曲线为不同记忆类型工作记忆 / 短期记忆 / 长期记忆 / 肌肉记忆设定各自的强化曲线与半衰期让「越新的记忆越容易被想起」。除了确定性的衰减AIRI 还模拟了随机闪回与情绪偏置——记忆可能突然被想起也会被情绪左右文件导航记忆相关代码都在哪模块路径作用浏览器端 DuckDB 封装packages/stage-ui/src/composables/use-duck-db.tsWeb Worker 中初始化 WASM 向量库Drizzle DuckDB WASMpackages/drizzle-duckdb-wasm/README.md封装包迁移说明服务端 pgvector 模块packages/memory-pgvector/src/index.ts记忆服务骨架向量库初始化 SQLservices/telegram-bot/sql/init.sql开启 vectors 扩展记忆系统设计文docs/content/zh-Hans/blog/DevLog-2025.04.06/index.md完整设计思路与交互 Demo项目总览docs/content/zh-Hans/docs/overview/index.mdAIRI 定位与模块地图写在最后AIRI 的记忆系统给了三个值得借鉴的工程决策双后端策略——DuckDB WASM 让「零部署」的浏览器也能做向量检索pgvector.rs 扛住服务端高维向量把遗忘建模成算法——衰减曲线、半衰期、情绪偏置让 AI 伴侣的记忆更像人用 ORM 管理向量——Drizzle 让向量表和关系表共享一套 TypeScript 类型体系。如果你想动手体验可以先从 services/telegram-bot/docker-compose.yaml 拉起向量库再阅读 DevLog-2025.04.06 里的交互 Demo 源码一步步理解「AI 伴侣的记忆」是如何被存下来、检索出来的。【免费下载链接】airi 自托管、归你拥有的 Grok 风格 AI 伴侣与 waifu / 赛博生命灵魂容器目标是接近 Neuro-sama 的高度支持实时语音聊天、Minecraft 和 Factorio 游玩支持 Web / macOS / Windows。项目地址: https://gitcode.com/moeru-ai/airi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

递归算法核心原理与经典案例解析

递归算法核心原理与经典案例解析

1. 递归思想的核心要义递归就像俄罗斯套娃,一个函数在执行过程中直接或间接调用自身,通过不断缩小问题规模最终解决原问题。这种"分而治之"的思想在计算机科学中占据着重要地位,其核心在于两个关键要素:基线条件&#x…

2026/9/25 5:59:43 阅读更多 →
Python安装全流程:版本选择、PATH配置、pip镜像源与虚拟环境

Python安装全流程:版本选择、PATH配置、pip镜像源与虚拟环境

先说个实在话。你搜“Python安装”大概率是被标题里“2026最新版”“一键安装”“永久使用”这几个词吸引进来的,但作为我这种常年给新电脑、新同事配环境的人,我必须告诉你:Python官方本来就是开源免费的,不存在“激活”“破解”…

2026/9/25 5:59:43 阅读更多 →
Atlas 300V 24G 深度解析:AI加速卡与YOLO部署实战

Atlas 300V 24G 深度解析:AI加速卡与YOLO部署实战

如果你最近在搜“atlas”,大概率不是在看希腊神话那个擎天巨神,而是盯上了华为昇腾生态里的 Atlas AI 计算平台。尤其是“atlas 300v 24g 是运算加速卡吗”这个问题,最近在不少技术群里反复出现,原因也很直接:很多人听…

2026/9/25 5:58:43 阅读更多 →

最新新闻

Atlas 300V部署YOLO实战:从环境配置到多路视频推理调优

Atlas 300V部署YOLO实战:从环境配置到多路视频推理调优

早两个月我把一张Atlas 300V插进服务器的时候,第一反应是:这卡到底算不算运算加速卡?插上去之后系统里没有nvidia-smi,没有CUDA,连安装包都换了一整套名字。查了一圈才搞明白,它确实是运算加速卡&#xff0…

2026/9/25 7:20:44 阅读更多 →
Linux软死锁soft lockup故障排查与修复指南

Linux软死锁soft lockup故障排查与修复指南

1. 项目概述:这不是Dream-RAC的锅,是内核调度与硬件协同的“卡点”实录刚接触Dream-RAC这套分布式训练框架时,我跟大多数工程师一样,习惯性地把安装流程当成“照着文档敲命令”的标准化操作。直到在节点1执行grid软件安装阶段&…

2026/9/25 7:20:44 阅读更多 →
电商数据库设计实战:7张表+事务+索引+审计

电商数据库设计实战:7张表+事务+索引+审计

简介:本资源是一套面向数据库初学者与Web开发学习者的MySQL实战项目资料,聚焦购物网站系统(MyShop商城)的数据库设计与实现,解决电商类应用中用户、商品、购物车、订单等核心模块的数据建模与业务逻辑支撑问题。压缩包…

2026/9/25 7:20:44 阅读更多 →
kv4cj API参考手册:MMKV类全接口速查(附常用示例代码)

kv4cj API参考手册:MMKV类全接口速查(附常用示例代码)

kv4cj API参考手册:MMKV类全接口速查(附常用示例代码) 【免费下载链接】kv4cj 一个轻量级的键值存储库 项目地址: https://gitcode.com/Cangjie-TPC/kv4cj kv4cj 是一个用仓颉语言(Cangjie)封装的高性能键值存储…

2026/9/25 7:20:44 阅读更多 →
PHP: The Right Way —— 用 Vagrant 为 PHP 项目构建可复现的虚拟开发环境

PHP: The Right Way —— 用 Vagrant 为 PHP 项目构建可复现的虚拟开发环境

文档教程 【免费下载链接】php-the-right-way An easy-to-read, quick reference for PHP best practices, accepted coding standards, and links to authoritative tutorials around the Web 项目地址: https://gitcode.com/gh_mirrors/ph/php-the-right-way 点击…

2026/9/25 7:20:44 阅读更多 →
VoltAgent Trace Logs 实战指南:利用结构化日志快速定位 Agent 运行错误与元数据

VoltAgent Trace Logs 实战指南:利用结构化日志快速定位 Agent 运行错误与元数据

人工智能AI AgentAgent 框架后端多智能体RAG工具调用Agent 记忆 【免费下载链接】voltagent AI Agent Engineering Platform built on an Open Source TypeScript AI Agent Framework 项目地址: https://gitcode.com/gh_mirrors/vo/voltagent 点击查看 免费下载 Tr…

2026/9/25 7:19:43 阅读更多 →

日新闻

AI元人文:从工具使用到思维重构的深度探索

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

2026/9/25 0:00:41 阅读更多 →
Python+CNN车牌识别实战:从数据预处理到模型训练与部署

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

2026/9/25 0:00:41 阅读更多 →
Vim基础操作全攻略:保存退出、模式切换与高频命令实战

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

2026/9/25 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/24 14:34:13 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/24 9:10:42 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/24 14:33:56 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/24 12:50:34 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/24 14:33:48 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/24 12:49:17 阅读更多 →