🧠 AI 自主学习
插件名称: astrbot_plugin_self_learning
版本说明: 仓库metadata.yaml标注为 3.4.4;GitHub 最新 Release 显示为 3.5.2。
让 bot 从群聊和真实对话中学习表达方式、群组黑话、社交关系、好感度、长期信息和人格增量。
该插件主要在后台自动运行。普通用户不需要记忆固定命令,但启用后,群聊消息可能被采集、筛选、分析和保存。
🚀 普通用户需要知道什么?
| 项目 | 说明 |
|---|---|
| 是否需要手动触发 | 不需要,插件按管理员配置自动学习 |
| 会学习什么 | 对话风格、常用表达、群组黑话、社交关系和上下文 |
| 会不会立即改变人格 | 学习结果可先进入审查队列,是否自动应用由管理员决定 |
| 是否保存消息 | 插件可保存原始消息、筛选消息、对话对和学习结果 |
| 能否保证学得正确 | 不能,AI 可能误解语境、黑话和人物关系 |
| 能否回滚 | 管理员可在 WebUI 中审查、拒绝、删除和回滚部分结果 |
✨ 它会带来什么变化?
启用一段时间后,bot 可能逐渐:
- 学会群内常用的说话方式;
- 理解群友经常使用的缩写和黑话;
- 对不同用户形成不同的互动倾向;
- 记录好感度和社交关系;
- 在后续回复前注入已批准的表达示例;
- 根据情绪和心理状态改变回复表现;
- 建立记忆图、知识图谱和社交关系图谱。
插件不会直接替换 AstrBot 的回复系统,而是在消息进入、bot 回复发送后和下一次 LLM 请求前增强上下文。
🔄 学习流程
- 插件接收并保存符合条件的用户消息。
- 对消息进行长度、目标用户、黑名单等筛选。
- 提取表达模式、群组黑话和对话样例。
- 达到条件后启动实时或批量学习。
- 学习结果进入人格或风格审查队列。
- 管理员批准或自动策略通过后,结果可用于后续对话。
- 下一次请求大模型前,插件注入已批准的风格、黑话、记忆和社交信息。
👑 管理员命令
仓库 README 明确说明:以下命令全部需要 AstrBot 管理员权限。
| 命令 | 说明 |
|---|---|
@bot learning_status | 查看学习状态和统计 |
@bot start_learning | 手动启动学习 |
@bot stop_learning | 停止学习 |
@bot force_learning | 强制执行一次学习 |
@bot remember 上下文 => 表达示例 | 手动保存对话上下文,并关联表达方式和对话示例 |
@bot affection_status | 查看好感度状态 |
@bot set_mood 情绪类型 | 设置 bot 当前情绪 |
手动记忆示例
@bot remember 用户夸 bot 很可爱 => 嘿嘿,那当然啦~
实际语法和可接受内容以 bot 返回结果为准。
🖥️ 管理面板
默认地址:
http://127.0.0.1:7833
WebUI 可用于:
| 页面 | 作用 |
|---|---|
| 总览 | 查看消息数、学习状态、待审内容、图谱和性能指标 |
| 全量设置 | 修改公开配置项 |
| 待审人格 | 批准、拒绝、删除和回滚人格学习结果 |
| 风格审查 | 审核表达模式与 few-shot 对话 |
| 黑话 | 查看候选词、含义、计数和作用范围 |
| 学习内容 | 查看原始消息、筛选消息、表达模式和学习批次 |
| 图谱 | 查看记忆图、知识图谱和社交关系图谱 |
| 模型调用 | 监控筛选、提炼和强化模型调用 |
| 日志等级 | 动态调整日志详细程度 |
仓库 README 说明当前 WebUI 默认免密访问。
不应直接暴露到公网;需要远程访问时,应由管理员添加反向代理鉴权、防火墙或其他访问控制。
🔐 隐私与数据提醒
插件可能处理或保存:
- 用户发送的群聊消息;
- bot 发送的回复;
- 用户与 bot 的对话配对;
- 用户之间的互动关系;
- 好感度、情绪和心理状态推断;
- 群组黑话和含义;
- 学习后生成的人格与表达风格;
- 记忆图和知识图谱数据。
管理员在启用前应取得必要授权,并向群成员说明消息可能被分析和保存。普通用户也不应在群聊中发送密码、令牌、证件号码等敏感信息。
⚠️ 管理员必读
- 启用前必须手动备份 AstrBot 原生人格。
- 插件内的审查和回滚不能替代外部备份。
- 学习结果可能错误理解玩笑、反讽、角色扮演和群内冲突。
- 自动应用人格前,建议先使用人工审查。
- 默认数据库后端为 PostgreSQL;也支持显式切换 SQLite 或 MySQL。
- 安装阶段不会自动安装全部依赖,需要在 WebUI 中手动确认安装。
- 修改数据库类型、数据目录或 WebUI 地址后,需要重启插件。
- Provider 未配置时插件仍可能加载,但 LLM 学习能力会降级。
- 与其他记忆或群聊增强插件同时使用时,应避免重复学习和重复注入。
❓ 常见问题
Q:为什么 bot 没有立刻学会我说的话?
学习通常需要消息数量达到阈值,并经过筛选和审查,不是看到一句话就立即写入人格。
Q:为什么 bot 学错了我的意思?
AI 可能误解玩笑、反话或群内黑话。管理员应在 WebUI 的人格和风格审查页面拒绝或删除错误结果。
Q:普通用户能查看好感度吗?
README 只把 affection_status 列为管理员命令,因此普通用户默认不能使用。
Q:为什么管理员命令没有反应?
请确认账号拥有 AstrBot 管理员权限,并使用本站统一格式 @bot + 命令。
Q:这个插件会不会读取所有群消息?
是否采集取决于目标列表、黑名单、消息捕获开关和筛选阈值。启用范围由管理员配置。
📎 项目信息
- 显示名称:self-learning
- 仓库 metadata 版本:3.4.4
- GitHub 最新 Release:3.5.2
- 作者:NickMo、EterUltimate
- AstrBot 最低版本:4.11.4
- 支持平台:OneBot、QQ、QQ 官方机器人、Telegram
- 开源协议:AGPL-3.0
- 项目地址:https://github.com/NickCharlie/astrbot_plugin_self_learning