Skip to content

qa296/astrbot_plugin_memora_connect

Repository files navigation

AstrBot Memora Connect

AstrBot Memora Connect Version

模仿人类记忆方式的智能记忆插件

功能特性使用指南配置说明


📖 项目简介

AstrBot Memora Connect 是一个为 AstrBot 设计的高级记忆插件,通过模仿人类海马体的记忆机制,为 AI 助手提供持久化、智能化的记忆能力。该插件能够自动从对话中提取关键信息,形成结构化的记忆网络,并支持多种回忆模式和智能检索。

🎯 核心特性

  • 🧠 智能记忆形成:自动从对话中提取关键信息,形成丰富的记忆内容
  • 🔍 多模式回忆:支持简单关键词、LLM 智能和嵌入向量三种回忆模式
  • 🌐 知识图谱:构建概念间的关联网络,支持联想记忆
  • 👥 群聊隔离:不同群聊的记忆可以隔离.
  • 👤 印象系统:记录和管理对人物的好感度和印象
  • ⚡ 性能优化:嵌入向量缓存、批量处理、异步优化
  • 🔄 记忆维护:自动遗忘、记忆整理和合并机制

✨ 功能特性

🧠 记忆系统

  • 自动记忆形成:每隔N轮对话自动提取一次记忆
  • 丰富记忆内容:支持参与者、地点、情感、标签等多维度信息
  • 记忆强度管理:模拟人类记忆的强度衰减和强化机制
  • 记忆整理合并:智能合并相似记忆,保持记忆库的简洁性

🔍 回忆机制

  • 简单模式:基于关键词匹配的快速回忆
  • LLM 智能模式:使用大语言模型进行智能语义回忆
  • 嵌入向量模式:基于语义相似度的向量检索
  • 联想回忆:通过知识图谱进行关联记忆检索
  • 时间关联:基于时间维度的记忆召回

🌐 知识图谱

  • 概念网络:构建概念间的有向图结构
  • 连接强度:动态调整概念间的关联强度
  • 激活扩散:模拟人脑的激活扩散回忆机制
  • 图优化:邻接表结构,高效的图遍历算法

👥 群聊隔离

  • 独立存储:每个群聊使用独立的数据库文件
  • 记忆隔离:群聊间记忆完全隔离,防止信息泄露
  • 自动管理:自动识别群聊 ID,动态切换数据库
  • 统一接口:对上层提供统一的记忆访问接口

👤 印象系统

  • 人物印象:记录对人物的好感度和印象摘要
  • 动态调整:支持好感度的动态增减调整
  • 印象历史:维护印象变更的历史记录
  • 智能注入:在对话中自动注入相关人物印象

⚡ 性能优化

  • 嵌入向量缓存:预计算并缓存记忆的嵌入向量
  • 批量处理:批量记忆提取和数据库操作
  • 异步优化:非阻塞的异步任务处理
  • 队列管理:智能的任务队列和优先级管理

🎮 使用指南

💬 基本命令

插件提供了 /记忆 命令组,包含以下子命令:

📝 记忆回忆

/记忆 回忆 [关键词]
  • 功能:根据关键词回忆相关记忆
  • 参数:关键词(可选,不提供时随机回忆)
  • 示例
    /记忆 回忆 项目
    /记忆 回忆
    

📊 记忆状态

/记忆 状态
  • 功能:显示记忆库的统计信息
  • 输出:记忆数量、概念数量、连接数量等

👤 人物印象

/记忆 印象 [人物名称]
  • 功能:查询指定人物的印象摘要和相关记忆
  • 参数:人物名称
  • 示例
    /记忆 印象 张三
    

🤖 LLM 工具

插件为 LLM 提供了以下工具函数:

📝 创建记忆 🔍 召回记忆 👤 调整印象 📝 记录印象

🔄 自动功能

插件在后台自动运行以下功能:

💭 自动记忆形成

  • 监听所有对话消息
  • 根据配置的间隔自动提取记忆
  • 支持批量记忆提取,提高效率

🧠 智能记忆注入

  • 在 LLM 请求时自动注入相关记忆
  • 基于语义相似度选择最相关的记忆
  • 支持人物印象的自动注入

🔄 记忆维护

  • 定期执行记忆整理和合并
  • 自动遗忘不活跃的记忆
  • 优化记忆图结构

⭐ 如果这个项目对您有帮助,请考虑给我们一个 Star!

Star History

QQ群

因为作者并不经常看issue,所以可以通过QQ群来提醒我! 群号:1098607348

About

一款模仿生物海马体、通过“概念节点”与“关系连接”构成记忆网络,具备记忆形成、提取、遗忘、巩固功能且采用“双峰”时间分布回顾聊天,记忆可被定期保存的插件。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Generated from Soulter/helloworld