角色扮演插件的核心约束是生效范围。通用群聊增强插件可以提供记忆、回复概率、图片理解和上下文处理,但专用人格插件需要把这些能力限制在指定场景内。
项目概览
结构上,main.py 负责接入 AstrBot,utils 目录拆分注意力、概率、冷却、心情、人格绑定、图片处理、上下文管理、主动对话、回复过滤、白名单和记忆命名空间等能力。
用途是构建强约束人格的游戏群聊互动接口。应用场景包括角色扮演社区、拟人化群聊陪伴、需要限定生效群和人格边界的互动机器人。
人格与范围
插件在基础群聊能力之上绑定固定人格,回复策略、提示词片段和记忆命名空间都与专用角色关联。会话白名单决定插件在哪些群聊中生效,其他会话保持沉默。
回复模式提供主动、被动和关键词触发几种策略。图片消息进入独立门控,静音名单和频率限制用于控制图片理解请求,避免图片消息过多时挤占文本对话。
记忆隔离
记忆层按角色和会话划分命名空间,避免不同角色或不同群聊互相污染。写入前会经过内容过滤和质量判断,读取时只取当前角色相关片段。
实现原理是先做消息预处理,再计算触发概率和上下文价值。进入生成前注入角色提示、短期上下文、长期记忆和图片描述;生成后经过质量过滤、重复拦截和回复密度控制,再决定是否发送。