来提交你的插件吧!
有疑问?来看看呗!

插件详情

astrbot_plugin_mnemosyne

一个长期记忆插件,基于milvus数据库实现,详情请见README.md

版本v2.0.11
作者lxfight
Star158
更新2026/01/02

插件说明

Mnemosyne

AstrBot 长期记忆插件

为 AI 赋予持久记忆能力,构建个性化对话体验


License
Version
QQ Group


概述

Mnemosyne 是一个为 AstrBot 设计的长期记忆管理插件,基于 RAG (检索增强生成) 技术和 Milvus 向量数据库实现。该插件能够自动总结对话内容,将其转换为向量存储,并在后续对话中智能检索相关记忆,使 AI 具备真正的长期记忆能力。

核心特性

  • 自动记忆总结
    根据对话轮数自动触发记忆总结与存储
  • 智能记忆检索
    基于语义相似度检索最相关的历史记忆
  • 会话隔离
    为不同会话维护独立的记忆上下文
  • 向量化存储
    使用 Milvus 进行高效的向量存储与检索

管理功能

  • Web 管理面板
    可视化管理记忆数据,支持查询、统计
  • 命令行工具
    提供丰富的命令行指令管理记忆
  • 灵活配置
    支持多种记忆注入方式与检索策略
  • 数据安全
    支持 API 密钥认证保护管理端点

技术架构

组件 说明
向量数据库 基于 Milvus / Milvus Lite 进行向量存储与检索,支持多种索引类型
Embedding 服务 集成 AstrBot 的 Embedding Provider,自动获取文本向量表示
LLM 总结 使用配置的 LLM Provider 进行对话内容总结,生成结构化记忆
上下文管理 维护对话历史与记忆注入,支持多种注入策略(用户提示/系统提示)
Web 管理面板 基于 FastAPI 的管理界面,提供记忆查询、统计、监控功能

主要功能

记忆管理

  • 自动总结机制:根据配置的对话轮数阈值自动触发总结
  • 时间触发总结:支持基于时间阈值的定期总结(可选)
  • 人格过滤:支持按人格配置过滤记忆检索结果
  • 会话过滤:支持按会话隔离记忆,或禁用以实现全局记忆共享
  • 多集合支持:可为不同场景创建独立的记忆集合

命令系统

/memory init [--force]                    初始化/迁移记忆系统(管理员,首次安装必须)
/memory list                              查看所有记忆集合
/memory list_records [collection] [limit] 列出指定集合的记忆记录
/memory get_session_id                    获取当前会话 ID
/memory reset [confirm]                   清除当前会话记忆
/memory delete_session_memory [id] [confirm]  删除指定会话记忆(管理员)
/memory drop_collection [name] [confirm] 删除整个集合(管理员)

重要命令说明:

  • /memory init - 首次安装后必须执行,用于创建正确维度的集合
  • /memory init --force - 强制重新初始化,用于维度迁移(会保留数据)

配置选项

配置项 说明 默认值
num_pairs 触发总结的对话轮数阈值 5
top_k 检索返回的记忆数量 3
collection_name Milvus 集合名称 default
memory_injection_method 记忆注入方式 user_prompt
use_personality_filtering 是否启用人格过滤 true
use_session_filtering 是否启用会话过滤。如果禁用,所有会话将共享记忆 true

会话过滤功能

插件支持灵活的会话记忆管理,通过 use_session_filtering 配置项控制:

会话隔离模式(默认)

  • 配置:use_session_filtering: true
  • 行为:每个会话拥有独立的记忆空间
  • 适用场景:
    • 多用户环境,确保用户隐私
    • 不同对话主题需要独立上下文
    • 避免不同会话间的记忆干扰

全局记忆模式

  • 配置:use_session_filtering: false
  • 行为:所有会话共享同一个记忆池
  • 适用场景:
    • 单用户环境,希望AI记住所有对话历史
    • 需要跨会话的知识积累
    • 构建全局知识库

注意:无论使用哪种模式,记忆在存储时都会保留原始的 session_id,确保可以随时切换模式而不丢失数据。


快速开始

先决条件

  • AstrBot v4.0.0+
  • Python 3.8+
  • Milvus 数据库(可选择 Milvus Lite 或 Standalone)
  • ⚠️ 必须先配置 Embedding Provider

安装步骤

1

安装依赖

cd data/plugins/astrbot_plugin_mnemosyne
uv pip install -r requirements.txt
2

配置 Milvus

选择以下方式之一:

  • Milvus Lite(轻量级,无需额外服务,不支持windows系统)

    {
      "milvus_lite_path": "./data/milvus.db"
    }
    
  • Milvus Standalone(完整功能)

    {
      "address": "127.0.0.1:19530"
    }
    
3

⚠️ 配置 Embedding Provider(必须)

在 AstrBot WebUI 中必须先配置 Embedding Provider,插件需要使用其向量维度来创建集合。

支持的 Embedding Provider:

  • OpenAI Embedding
  • Gemini Embedding
  • 其他兼容的 Embedding 服务
4

配置插件

在 AstrBot WebUI 中进行插件配置,设置:

  • LLM Provider(用于记忆总结)
  • 记忆管理参数(如 num_pairs、top_k 等)
5

初始化记忆系统

启动 AstrBot 后,执行以下命令初始化记忆系统:

/memory init

这将:

  • 检测 Embedding Provider 的向量维度
  • 创建匹配维度的 Milvus 集合
  • 建立必要的索引

首次安装必须执行此命令!

🔄 维度迁移(老用户)

如果您更换了 Embedding Provider 或模型,导致向量维度变化,系统会自动检测并提示您迁移数据:

  1. 执行 /memory init 检查维度
  2. 如果维度不匹配,系统会提示需要迁移
  3. 执行 /memory init --force 确认迁移

迁移过程:

  • ✅ 自动备份文本内容
  • ✅ 使用新维度重新生成向量
  • ✅ 保留所有历史记忆数据
  • ⚠️ 迁移过程可能需要一些时间,取决于记忆数量

详细的部署指南请参阅:快速启动指南 (QUICKSTART.md)

或访问 Wiki:如何正确且快速地食用本插件


Web 管理面板

插件内置了基于 FastAPI 的管理面板,提供以下功能:

  • 记忆数据查询与浏览
  • 会话统计与分析
  • 实时监控与日志查看
  • 记忆数据导出

访问地址:http://127.0.0.1:8000(默认端口)

安全配置:

  • 支持 API 密钥认证
  • 可在配置文件中设置固定密钥
  • 未配置时自动生成临时密钥(每次重启变化)

技术细节

记忆存储流程

对话消息 → 达到轮数阈值 → LLM 总结 → Embedding 向量化 → Milvus 存储

记忆检索流程

用户输入 → Embedding 向量化 → Milvus 相似度检索 → 过滤筛选 → 注入上下文

数据模型

每条记忆记录包含以下字段:

  • id:唯一标识符
  • text:总结后的文本内容
  • embedding:文本的向量表示
  • session_id:关联的会话 ID
  • persona_id:关联的人格 ID
  • timestamp:创建时间戳
  • metadata:扩展元数据

许可证

本项目采用自定义许可证,详见 LICENSE 文件。


支持与反馈

问题报告

如遇到 Bug 或功能问题,请在 GitHub Issues 中提交问题报告。

提交 Issue →

社区讨论

加入 QQ 群与开发者和用户交流:

群号:953245617

点击加入 →

贡献代码

欢迎提交 Pull Request 贡献代码或改进文档。


项目地址:github.com/lxfight/astrbot_plugin_mnemosyne

作者:lxfight | 版本:v2.0.0


让 AI 拥有真正的记忆

AstrBot LogoAstrBot 插件市场社区

AstrBot 插件市场 是一个开放的插件分享平台,欢迎开发者们贡献优质插件。本站致力于为 AstrBot 用户提供高质量扩展,帮助您快速找到喜欢的插件,并鼓励社区伙伴分享使用心得、提出改进建议。

相关链接

官方项目主站 官方插件市场 官方项目仓库 侧边展示主站

开发相关

插件开发文档 快速提交插件 官方项目文档

© 2026 AstrBot 插件市场 Made with by Community