tt-P607
|
cd7f80ce20
|
Merge branch 'dev'
|
2025-09-11 19:36:17 +08:00 |
|
tt-P607
|
de90d452cc
|
feat(emoji): 优化表情选择逻辑并引入上下文数量限制
重构了内置插件中的表情发送逻辑,以提高选择的准确性和效率。
旧的机制依赖于预设的情感标签,这可能不准确或缺失。新的实现改为让 LLM 直接从一部分随机抽样的表情包描述中进行选择,这使得决策更贴近上下文。
主要变更:
- 将基于情感标签的选择改为基于表情包描述的选择,使表情推荐更精准。
- 新增 `max_context_emojis` 配置项,用于控制每次传递给 LLM 的表情包候选项数量,从而减少 token 消耗并提高响应速度。
|
2025-09-11 17:29:42 +08:00 |
|
tt-P607
|
0cb2fa3373
|
feat(chat): 为回复分割器添加 llm 与 punctuation 模式
本次更新重构了回复分割功能,引入了 `split_mode` 配置项,允许用户在两种分割模式之间进行选择,提供了更大的灵活性。
- **`llm` 模式**: 延续了由大语言模型通过 `[SPLIT]` 标记决定断句的功能。此模式下的提示词(Prompt)已进一步优化,以引导模型做出更自然的分割。
- **`punctuation` 模式**: 恢复了传统的基于标点符号的分割逻辑。这已设为新的默认模式,确保用户更新后行为与旧版本保持一致。
此外,`at_user` 插件也进行了适配,以正确处理由 `llm` 模式可能产生的多段消息。
|
2025-09-11 17:12:01 +08:00 |
|
tt-P607
|
62c548ad2b
|
feat(chat): 实现由 LLM 控制的自然回复分割
之前基于标点符号的自动分割逻辑较为僵硬,有时会破坏回复的连贯性,导致对话体验不佳。
本次更新引入了一种由 LLM 主导的回复分割机制:
1. 在 Prompt 中增加了明确的分割指令,引导 LLM 在需要模拟人类对话停顿或转折时,使用 `[SPLIT]` 标记。
2. 后端回复处理逻辑相应更新,优先根据 `[SPLIT]` 标记分割消息。
3. 若 LLM 未提供 `[SPLIT]` 标记,则将整段回复作为单条消息发送,避免了不必要的拆分。
此项改动旨在让消息的发送节奏更贴近真实人类的聊天习惯,从而提升交互的自然感和流畅度。
|
2025-09-11 16:09:48 +08:00 |
|
BuildTools
|
bb1563afab
|
fix(chat): 防止机器人回复自身消息
添加配置选项 `allow_reply_self` 控制是否允许机器人回复自己发送的消息
当此选项为 false 时,在回复动作执行前检查目标用户 ID,如果是机器人自身则跳过回复
同时删除无用的测试文件 `test_planner_personality.py
|
2025-09-11 13:24:53 +08:00 |
|
tt-P607
|
8f65953b9d
|
feat(chat): 引入专注模式安静群组功能
新增 `focus_mode_quiet_groups` 配置项,允许用户指定在专注模式下需要保持安静的群组列表。
在此列表中的群组,机器人只有在被明确提及(艾特)时才会做出回应。这有助于在某些活跃度高但不需要机器人持续参与的群组中减少打扰。
该功能兼容了不同QQ适配器(如 `qq` 和 `napcat`)的平台名称。
|
2025-09-11 08:50:05 +08:00 |
|
tt-P607
|
cf5b7e9083
|
fix(chat): 避免在message_data为空时产生`AttributeError
|
2025-09-10 23:06:41 +08:00 |
|
tt-P607
|
2e6c628cb9
|
feat(reminder): 增强提醒功能,可将“我”识别为目标用户
通过向LLM提示词中传递消息发送者昵称,系统现在能够正确解析包含第一人称代词(如“我”)的提醒任务。这解决了之前无法为用户设置“提醒我”这类个人提醒的问题,使其交互更加自然。
此外,还优化了`@user`插件中生成提醒内容的提示词,明确指示LLM不要在回复中包含`@`或用户名,以避免系统自动@后出现重复的用户名,提升了提醒消息的质量。
|
2025-09-10 17:10:24 +08:00 |
|
tt-P607
|
8e2aa53252
|
fix(chat): 将 proactive_reply 动作添加到豁免列表
主动回复(proactive_reply)动作不针对特定消息,也不属于需要验证的可用工具。
此更改将其添加到 planner 的逻辑检查豁免中,以防止因缺少 `target_message_id` 或不在可用动作列表中而被错误地判定为无效。
|
2025-09-10 15:17:03 +08:00 |
|
tt-P607
|
9f094bfb32
|
feat(emoji): 引入表情发送历史以避免重复发送
为了提升表情发送的自然性和多样性,本次更新引入了发送历史记录机制,并优化了选择逻辑。
- 新增一个长度为4的双端队列,用于存储最近发送过的表情哈希,以避免在短期内重复。
- 修改LLM提示,要求其返回一个包含3个最匹配情感的有序列表,以提供更多候选表情。
- 重构选择逻辑:在LLM推荐或随机选择时,会优先选取未在最近历史中出现过的表情。
- 仅当所有候选表情都已在近期发送过时,才会退回至在完整表情库中进行选择。
|
2025-09-10 10:11:25 +08:00 |
|
tt-P607
|
386857e9cf
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-10 09:45:55 +08:00 |
|
tt-P607
|
d95f73d52f
|
fix(chat): 修复空消息引用并调整动作处理逻辑
- 在 `DefaultReplyer` 中增加了对 `reply_message` 的空值检查,以避免在无回复上下文时引发错误。
- 在 `ActionPlanner` 中将 'do_nothing' 添加到非目标动作列表中,以正确处理此新增的无操作指令。
- 将 `EmojiAction` 使用的 LLM 模型从 'utils_small' 更新为 'planner',以适应模型配置的变更。
|
2025-09-10 09:43:51 +08:00 |
|
Furina-1013-create
|
f0da19c6f9
|
更新依赖
|
2025-09-09 22:59:15 +08:00 |
|
tt-P607
|
e1ebf41f8d
|
feat(reminder): 增强定时提醒系统,实现智能用户识别与上下文感知回复
对定时提醒功能进行了重大重构和增强,使其更加智能和人性化。
主要更新包括:
- **智能用户识别**: 引入LLM从提醒内容中提取需要@的目标用户,取代了原有的简单正则表达式匹配,能够更准确地理解自然语言指令,如“提醒阿范喝水”。
- **专用提醒回复**: 当提醒任务不包含特定目标用户时(如“提醒我喝水”),系统不再简单回退,而是会调用一个专用的LLM流程,生成一条符合Bot性格的、温暖贴心的提醒消息。
- **上下文传递**: 创建提醒时会保存完整的原始消息,并在触发提醒时将其传递给处理流程。这使得LLM在执行@操作或生成回复时能拥有完整上下文,避免了记忆割裂感。
- **@用户匹配优化**: 增强了`at_user`动作的底层用户匹配逻辑,采用“精确匹配 -> 包含匹配 -> 模糊匹配”的多层策略,显著提高了在群聊中查找目标用户的准确率和鲁棒性。
- **提示词优化**: 全面优化了提醒流程中涉及的LLM提示词,无论是用户提取还是最终的@消息生成,都更具情景感,使Bot的回复更加自然流畅。
|
2025-09-09 22:14:27 +08:00 |
|
tt-P607
|
df984717f7
|
feat(planner): 重构动作规划器以支持组合动作和概率性表情
重写了 Planner 的主 Prompt,引导 LLM 将回复(reply)视为主动作,将表情(emoji)等视为辅助动作,从而更好地生成组合动作,使响应更生动。
- 移除了旧的“100%概率动作强制添加”逻辑,并替换为新的“概率性表情”机制。现在,当生成回复时,会根据配置的概率(emoji_chance)自动附加一个 emoji 动作。
- 改进了 emoji 动作的情感匹配逻辑,从精确匹配改为模糊匹配,提高了根据 LLM 输出找到合适表情的成功率。
- 修复了随机类型动作在激活概率计算时的一个边界条件问题。
|
2025-09-09 18:50:37 +08:00 |
|
tt-P607
|
7457fe76d1
|
Merge branch 'dev'
|
2025-09-09 15:42:34 +08:00 |
|
tt-P607
|
e5369ffc72
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-09 15:38:12 +08:00 |
|
tt-P607
|
98a6cba33e
|
feat(actions): 支持同时进行回复与其他动作
重构了动作执行流程,以支持更丰富的多动作组合,例如在发送文本回复的同时发送一个表情。
主要变更:
- **执行流程**: 在 `CycleProcessor` 中,将动作分为“回复”和“其他”两类。系统会先串行执行回复动作,再并行执行所有其他动作,确保了核心回复的优先性。
- **规划逻辑**: 在 `Planner` 中优化了提示词,并增加后处理步骤,以鼓励并确保在回复时触发补充性动作(如100%概率的emoji)。
- **emoji动作**: 重构了表情选择逻辑,现在会评估所有可用的表情,而不仅仅是随机抽样,提高了选择的准确性。
- **修复**: 修复了 `ActionModifier` 中随机激活概率为100%的动作可能不触发的bug。
|
2025-09-09 15:37:49 +08:00 |
|
Windpicker-owo
|
e2455700ae
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-09 14:55:04 +08:00 |
|
Windpicker-owo
|
460a1319ce
|
1
|
2025-09-09 14:54:30 +08:00 |
|
tt-P607
|
ab43ef369d
|
Merge branch 'dev'
|
2025-09-09 14:08:55 +08:00 |
|
tt-P607
|
f6f6735691
|
总之就是成了!😋😋😋主动思考终于成了
|
2025-09-09 13:53:17 +08:00 |
|
tt-P607
|
1c7053b2f0
|
Merge branch 'dev'
|
2025-09-09 09:46:36 +08:00 |
|
tt-P607
|
2a82dfb703
|
refactor(planner): 采用统一的多动作决策模型取代大脑/小脑架构
本次更新彻底重构了动作规划器(Planner)的核心架构,废弃了原有的“大脑/小脑”并行决策模型,转而采用一个更简洁、高效的统一决策模型。
主要变更:
- **统一决策**: 单个LLM调用现在可以一次性决策出所有需要执行的动作,并以JSON列表的形式返回。
- **架构简化**: 完全移除了 `sub_plan`(小脑)逻辑、`planner_small` 模型以及相关的并行处理和结果合并代码,大幅降低了复杂性。
- **配置精简**: 从配置文件中删除了与小脑相关的 `planner_size` 和 `include_personality` 选项,简化了用户配置。
- **提示词更新**: 更新了规划器的Prompt,明确指示LLM返回一个动作列表,即使只有一个动作或没有动作。
带来的好处:
- **性能提升**: 减少了LLM API的调用次数,显著降低了单次规划的延迟和成本。
- **可维护性**: 代码逻辑更清晰、线性,易于理解和后续维护。
- **稳定性**: 减少了多路并发带来的不确定性和潜在的竞态问题。
BREAKING CHANGE: 移除了大脑/小脑规划器架构。
用户需要从 `model_config.toml` 中移除 `[model_task_config.planner_small]` 配置节,并从 `bot_config.toml` 中移除 `planner_size` 和 `include_personality` 配置项。
|
2025-09-09 09:25:25 +08:00 |
|
tt-P607
|
76646e5d85
|
主动思考定时任务优化,目前有个问题at动作会认为当建环境环是群聊,我多次尝试解决不了……唉
|
2025-09-08 22:32:19 +08:00 |
|
tt-P607
|
7180223622
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-08 18:50:26 +08:00 |
|
tt-P607
|
a6334ff83e
|
主动思考大优化
|
2025-09-08 18:49:42 +08:00 |
|
Furina-1013-create
|
cb41a98fc2
|
为小脑决策加上角色人设提示词以避免决策时出现的人设ooc的情况
可以在配置文件里面关闭
|
2025-09-08 13:19:40 +08:00 |
|
Windpicker-owo
|
c223ce1f3b
|
ada现在支持接收贴表情消息
|
2025-09-08 01:58:43 +08:00 |
|
Windpicker-owo
|
1beb0b7ebc
|
修正at插件from_plugin=False
|
2025-09-07 19:07:44 +08:00 |
|
Windpicker-owo
|
a9a8e9a1b0
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-07 19:03:47 +08:00 |
|
Windpicker-owo
|
02a636a8ce
|
plugin_name改为permission_group
|
2025-09-07 19:03:42 +08:00 |
|
Furina-1013-create
|
12b64955f6
|
是谁改模板配置文件不改版本号我不说()
|
2025-09-07 16:35:47 +08:00 |
|
Windpicker-owo
|
028e4d1d21
|
Merge pull request #2 from MoFox-Studio/dev
merge Dev
|
2025-09-07 16:15:55 +08:00 |
|
Windpicker-owo
|
ab180db1dd
|
at现在可以触发post_llm
|
2025-09-07 15:02:51 +08:00 |
|
minecraft1024a
|
c5ab307c36
|
加入一个还没有完成的测试性功能,我要先跑路了
|
2025-09-07 14:02:28 +08:00 |
|
tt-P607
|
14fe86d938
|
refactor(plugin_system): 移除未使用的 ChatType 导入
|
2025-09-07 13:14:48 +08:00 |
|
minecraft1024a
|
6d891f2d54
|
1
|
2025-09-07 13:03:51 +08:00 |
|
minecraft1024a
|
dc67eb68fc
|
feat(planner): 优化主动对话决策并记录动作历史
在主动对话规划器中引入最近的动作历史作为决策依据,以避免重复或不合时宜的主动行为。同时,在主动回复后,将该行为作为动作信息存储到数据库中,以便于未来的决策和分析。
- 在 `ActionPlanner` 中,获取并向prompt中添加最近5条动作历史记录
- 在 `ProactiveThinker` 中,当主动回复成功后,调用 `store_action_info` 记录动作
- 移除了 `@user` 插件中已废弃的 `planner_type` 属性
|
2025-09-07 13:02:10 +08:00 |
|
minecraft1024a
|
e14bd950c3
|
refactor(planner): 移除大小脑规划器类型以简化决策流程
本次重构删除了`PlannerType`(大小脑规划器)的枚举及其在动作规划和组件定义中的相关逻辑。通过移除大小脑的概念,简化了`ActionPlanner`的决策过程,使其不再需要根据规划器类型来筛选可用动作。
这一变更统一了动作的处理方式,降低了系统的复杂性,使得未来的功能扩展和维护更加直接和清晰。
|
2025-09-07 12:53:06 +08:00 |
|
minecraft1024a
|
22e9960707
|
refactor(web_search): 统一搜索引擎的API密钥配置路径
将Exa和Tavily搜索引擎的API密钥配置路径从独立的顶级配置(如`exa.api_keys`)更改为`web_search`下的统一路径(`web_search.exa_api_keys`和`web_search.tavily_api_keys`)。
这使得配置结构更加清晰和一致,便于管理所有与网络搜索相关的凭据。
|
2025-09-07 12:44:49 +08:00 |
|
minecraft1024a
|
ece6699a2a
|
feat(prompt): 丰富主动对话中的人设prompt
将`personality_side`、`identity`和`reply_style`添加到主动对话的`identity_block`中,以生成更具个性化的对话内容。
|
2025-09-07 12:43:34 +08:00 |
|
minecraft1024a
|
905afec9d5
|
refactor(proactive): 优化主动对话的prompt并处理响应文本
- 更新并细化了主动对话生成器的prompt,使其更具指导性,以生成更自然、更简洁的回复。
- 移除了冗余的注释和空行,使prompt结构更清晰。
- 对生成器返回的`response_text`调用`process_human_text`方法进行处理,以应用全局的文本分割和错别字修正配置,确保输出格式统一。
|
2025-09-07 12:41:12 +08:00 |
|
minecraft1024a
|
aa9c5ea46a
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-07 12:28:19 +08:00 |
|
minecraft1024a
|
1e2eb977bb
|
refactor(sleep): 解耦SleepManager与ScheduleManager的依赖关系
将日程表获取的逻辑从`SleepManager`转移到`TimeChecker`中,并使其直接从全局的`schedule_manager`实例获取日程,消除了`SleepManager`对日程表的直接管理责任。
这一重构简化了`SleepManager`的职责,使其更专注于睡眠状态的管理,同时提高了模块间的独立性。
- `SleepManager`不再持有`today_schedule`状态。
- `TimeChecker`现在直接从`schedule_manager`获取日程,不再依赖于`SleepManager`传递。
- 移除了`ScheduleManager`中对`sleep_manager`的引用和更新操作。
|
2025-09-07 12:28:15 +08:00 |
|
雅诺狐
|
415b972c48
|
遥测
|
2025-09-07 12:20:49 +08:00 |
|
雅诺狐
|
6a703fcbe1
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-07 12:16:37 +08:00 |
|
雅诺狐
|
c1cb7aafea
|
更新遥测
|
2025-09-07 12:16:11 +08:00 |
|
tt-P607
|
d2e48e5b17
|
Merge branch 'dev' of https://github.com/MoFox-Studio/MoFox_Bot into dev
|
2025-09-07 12:13:56 +08:00 |
|
tt-P607
|
da4504c0ec
|
feat(at_user_plugin): 使用回复器生成智能艾特消息
艾特用户动作现在通过回复器生成智能回复内容,而不是直接发送固定消息。
这样可以使艾特消息更具上下文感知能力和智能化,提升用户体验。
增加了错误处理机制,确保在回复生成失败或聊天流不存在时能正确处理。
|
2025-09-07 12:13:00 +08:00 |
|