三种AI人机交互系统的记忆模块对比:小智、OPEN-LLM-VTUBER和MaiBot
MaiBot 的记忆和情感系统
https://github.com/MaiM-with-u/MaiBot
记忆系统
MaiBot 拥有最复杂和完整的记忆系统:
海马体记忆系统 (Hippocampus):
- 基于图结构的记忆存储,使用 实现
- 支持记忆构建、遗忘、整合三个核心功能
- 记忆检索支持多层深度搜索(1-3层),可获取直接和间接相关记忆
- 记忆压缩和采样机制,控制记忆质量和数量
工作记忆系统:
- 短期工作记忆处理器,用于专注聊天场景
- 支持记忆激活度管理和动态调度
记忆配置参数:
- 记忆构建间隔、遗忘时间、压缩率等可配置
- 支持记忆禁用词列表,过滤不需要记忆的内容
情感系统
MaiBot 具有先进的情感模型:
二维情感模型:
- 基于愉悦度(valence)和唤醒度(arousal)的二维情感空间
- 支持19种具体情感状态映射(如开心、愤怒、悲伤等)
- 情感状态会影响打字速度和回复行为
情感动态管理:
- 情感衰减机制,情感会随时间自然衰减
- 情感历史追踪,支持情感变化趋势分析
- 情感与人格系统集成,影响关系管理
Open-LLM-VTuber 的记忆和情感系统
https://github.com/Open-LLM-VTuber/Open-LLM-VTuber
记忆系统
Open-LLM-VTuber 的记忆系统相对简单:
基础记忆代理 (BasicMemoryAgent):
- 使用简单的列表结构存储对话历史
- 支持从聊天历史加载记忆
- 群聊中为每个成员维护独立的记忆索引
- 长期记忆功能暂时下线,但保留聊天记录持久化
情感系统
Open-LLM-VTuber 的情感系统主要用于Live2D表情控制:
Live2D情感映射:
- 通过 实现情感表达
- 支持从文本中提取情感关键词
- 将情感映射到Live2D模型的表情动作
- 可配置的情感映射表,支持自定义表情控制
xiaozhi-esp32-server 的记忆和情感系统
https://github.com/xinnan-tech/xiaozhi-esp32-server
记忆系统
xiaozhi-esp32-server 提供了模块化的记忆解决方案:
多种记忆提供者:
mem0ai:基于外部API的记忆服务mem_local_short:本地短期记忆实现nomem:无记忆模式
本地记忆特性:
- "时空记忆编织者"概念,支持情感强度评估
- 记忆保存到本地文件,支持持久化
- 可为记忆总结配置独立的LLM模型
情感系统
xiaozhi-esp32-server 的情感系统注重实用性:
情感分析功能:
analyze_emotion函数支持中英文情感关键词识别- 返回对应的emoji表情名称
- 支持情感优先级排序
TTS情感集成:
- TTS服务支持情感参数设置
- 对话回复考虑角色情感和态度
- 与语音合成系统深度集成
总结对比
| 项目 | 记忆系统复杂度 | 情感系统特点 | 主要应用场景 |
|---|---|---|---|
| MaiBot | 最复杂 | 二维情感模型,动态管理 | QQ群聊智能体 |
| Open-LLM-VTuber | 简单 | Live2D表情映射 | 虚拟主播互动 |
| xiaozhi-esp32-server | 中等 | 实用型情感分析 | 智能硬件后端 |
MaiBot 的系统最为完整和先进,适合需要长期交互的场景;Open-LLM-VTuber 专注于视觉表现;xiaozhi-esp32-server 则提供了灵活的模块化选择,适合不同硬件环境的需求。
三种AI人机交互系统的记忆模块对比:小智、OPEN-LLM-VTUBER和MaiBot的更多相关文章
- Linux三种关机/重启系统的命令
Linux提供了三种关机/重启系统的命令:shutdown.halt和reboot.这三个命令在一般情况下只有 系统的超级用户(一般是指root)才可以执行.输入没有参数的shutdown命令,两分钟 ...
- EOS -- 一种灵巧的系统运行跟踪模块
EOS到底是什么词的缩写,我猜应该是Error of System.最早接触它,是在UT那会.不过那会它是被设计成一个很大的数组,也没有被包含调用函数和行号,又或是时间,只是些计数.编码时,加减一个E ...
- Centos6.4三种更改hostname的方法之间的对比
首先,利用hostname命令查看一下当前主机的主机名,在终端输入hostname,会发现显示的是完整的主机名称(主机名.域名),其中主机名与进入终端后:登录名@主机名,显示的一致,如下图所示: 其次 ...
- JS基础语法---创建对象---三种方式创建对象:调用系统的构造函数;自定义构造函数;字面量的方式
创建对象三种方式: 调用系统的构造函数创建对象 自定义构造函数创建对象(结合第一种和需求通过工厂模式创建对象) 字面量的方式创建对象 第一种:调用系统的构造函数创建对象 //小苏举例子: //实例化对 ...
- Linux中设置服务自启动的三种方式
有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s 在/etc/rc.d/rc*.d目录中建立/e ...
- [转]Linux中设置服务自启动的三种方式
from:http://www.cnblogs.com/nerxious/archive/2013/01/18/2866548.html 有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统 ...
- python实现单例模式的三种方式及相关知识解释
python实现单例模式的三种方式及相关知识解释 模块模式 装饰器模式 父类重写new继承 单例模式作为最常用的设计模式,在面试中很可能遇到要求手写.从最近的学习python的经验而言,singlet ...
- (转)Linux中设置服务自启动的三种方式
有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s 在/etc/rc.d/rc*.d目录中建立/e ...
- SQLite三种JDBC驱动的区别
在DBeaver中看到SQLite有三种JDBC驱动,查了它们官方网站的相关解释,发现它们还是挺不一样的. SQLite Wrapper by Christian http://www.ch-we ...
- 【转发】Linux中设置服务自启动的三种方式
有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s 在/etc/rc.d/rc*.d目录中建立/e ...
随机推荐
- Netty基础—7.Netty实现消息推送服务
大纲 1.Netty实现HTTP服务器 2.Netty实现WebSocket 3.Netty实现的消息推送系统 (1)基于WebSocket的消息推送系统说明 (2)消息推送系统的PushServer ...
- 面试题-Java虚拟机
前言 Java虚拟机部分的题目,是我根据Java Guide的面试突击版本V3.0再整理出来的,其中,我选择了一些比较重要的问题,并重新做出相应回答,并添加了一些比较重要的问题,希望对大家起到一定的帮 ...
- 面试题:Linux 系统基础 (二)
Linux系统中的定时任务有哪些类型,它们是如何配置的? Linux系统中的定时任务主要有两种类型:Cron作业和at作业. 1.Cron作业: 使用crontab命令配置和管理. 配置周期性执行的任 ...
- mybatis的输入参数类型
一.传递简单数据类型 二.传入一个bean对象 三.传入一个包装对象(对象中存放对象)
- 什么是 Write-Ahead Logging (WAL) 技术?它的优点是什么?MySQL 中是否用到了 WAL?
什么是 Write-Ahead Logging (WAL) 技术? Write-Ahead Logging (WAL) 是一种用于数据库系统的日志记录技术,它要求在对数据库进行任何修改之前,所有的修改 ...
- Python3爬虫入门(一)
Python3爬虫入门 网络爬虫,也叫网络蜘蛛(Web?Spider).它根据网页地址(URL)爬取网页内容,而网页地址(URL)就是我们在浏览器中输入的网站链接. 在浏览器的地址栏输入URL地址, ...
- Jeesite5:Star24k,Spring Boot 3.3+Vue3实战开源项目,架构深度拆解!让企业级项目开发效率提升300%的秘密武器
企业级应用开发的需求日益增长.今天,我们要介绍的是一个在GitHub上广受好评的开源项目--Jeesite5.这不仅是一个技术框架,更是企业级应用开发的加速器.接下来,我们将深入探讨Jeesite5的 ...
- Web前端入门第 51 问:移动端适配的视口元标签(meta)常见使用场景
经常查看网页源码的同学应该都有注意到,基本上面向移动端的所有网站都有个 <meta name="viewport" xxx> 这样的HTML元素. 为什么需要 meta ...
- Flutter集成微信小程序技术教程
.markdown-body { color: rgba(89, 89, 89, 1); font-size: 15px; font-family: -apple-system, system-ui, ...
- Seata源码—2.seata-samples项目介绍
大纲 1.seata-samples的配置文件和启动类 2.seata-samples业务服务启动时的核心工作 3.seata-samples库存服务的连接池配置 4.Seata对数据库连接池代理配置 ...