John Richard
a79253c714
re-style: 格式化代码
2025-11-19 23:13:20 +08:00
Windpicker-owo
c31fd02daf
refactor(chat): 迁移数据库操作为异步模式并修复相关调用
...
将同步数据库操作全面迁移为异步模式,主要涉及:
- 将 `with get_db_session()` 改为 `async with get_db_session()`
- 修复相关异步调用链,确保 await 正确传递
- 优化消息管理器、上下文管理器等核心组件的异步处理
- 移除同步的 person_id 获取方法,避免协程对象传递问题
修复 deepcopy 在 StreamContext 中的序列化问题,跳过不可序列化的 asyncio.Task 对象
删除无用的测试文件和废弃的插件清单文件
2025-11-19 23:09:34 +08:00
Windpicker-owo
ca8a47f246
refactor(chat): 重构消息兴趣度计算与动作记录机制
...
重构聊天系统以使用集中式消息管理API,移除ChatMessageContext类,将兴趣度计算和动作记录功能整合到StreamContext中。
主要变更:
- 移除ChatMessageContext类,使用StreamContext统一管理消息上下文
- 在DatabaseMessages模型中添加interest_degree、actions、should_reply字段
- 实现消息管理器API用于更新消息信息和刷新focus_energy
- 重构ChatStream的focus_energy计算逻辑,基于StreamContext历史消息
- 在动作管理器中添加动作记录功能,确保动作执行后更新消息状态
BREAKING CHANGE: ChatMessageContext类已被移除,相关功能需使用StreamContext API替代
2025-11-19 23:09:19 +08:00
tt-P607
6ea3b2af26
feat(affinity_flow_chatter): 优化戳一戳动作以更精准地回应原始消息
...
当LLM在执行 poke_user 动作时未指定 target_message_id,系统现在会主动在消息历史中寻找触发该动作的“戳一戳”通知,以实现更具上下文的回应。如果未找到对应的通知消息,则会回退到使用最新的消息作为目标。
此外,本次更新包含以下修复:
- 修复了在计划过滤器中错误地引用 `self.available_actions` 的问题,现已更正为 `plan.available_actions`。
- 修复了 `ActionModifier` 中动作列表在多阶段过滤时未及时更新的问题,确保了动作筛选的准确性。
2025-11-19 23:08:47 +08:00
Windpicker-owo
c9b20aa61a
refactor(chat): 移除亲和力流模块并将其重构为插件架构
...
BREAKING CHANGE: 原有的亲和力流相关模块(src/chat/affinity_flow/)已被完全移除,相关功能已重构为插件形式。需要更新配置文件和相关依赖。
- 删除 src/chat/affinity_flow/ 目录下的所有文件
- 将 AFC 管理器功能移至 chatter 插件中实现
- 更新相关导入路径和引用
- 重构关系追踪器和兴趣评分系统的初始化逻辑
- 调整聊天管理器和消息管理器以适应新的插件架构
2025-11-19 23:08:27 +08:00
minecraft1024a
69c6829aed
refactor(chat): 将 get_chat_type_and_target_info 重构为异步函数
...
将 `get_chat_type_and_target_info` 函数从同步改为异步,以支持其内部对异步方法 `person_info_manager.get_values` 的调用。
此更改可防止在获取聊天对象信息时阻塞事件循环。所有调用此函数的代码(包括 `SubHeartflow`, `ActionModifier`, `PlanGenerator`, `DefaultReplyer`)都已相应更新为使用 `await`。
在 `DefaultReplyer` 中引入了延迟异步初始化模式 (`_async_init`),以适应其类生命周期。
2025-11-19 23:05:46 +08:00
雅诺狐
93542cadef
perf(methods): 通过移除不必要的 self 参数优化方法签名
...
在包括 chat、plugin_system、schedule 和 mais4u 在内的多个模块中,消除冗余的实例引用。此次改动将无需访问实例状态的实用函数转换为静态方法,从而提升了内存效率,并使方法依赖关系更加清晰。
2025-11-19 23:05:00 +08:00
tt-P607
aba4f1a947
三次修改
2025-11-19 23:02:01 +08:00
tt-P607
65087b8c98
回退“feat: 实现KEYWORD_OR_LLM_JUDGE激活类型”
2025-11-19 23:01:17 +08:00
tt-P607
4890771a87
feat(planner): 引入双模动作激活机制与混合触发类型
...
为了更精细地控制动作在不同聊天模式下的行为,并提升决策效率,本次更新引入了全新的动作激活机制。
- **双模激活**: 为 Action 新增 `normal_activation_type` 和 `focus_activation_type` 属性,允许插件在 `NORMAL` 和 `FOCUS` 模式下拥有不同的激活策略,使行为更符合上下文。
- **混合触发**: 新增 `KEYWORD_OR_LLM_JUDGE` 激活类型。该类型会先进行快速的关键词匹配,若未匹配成功,则回退至 LLM 进行判断,兼顾了响应速度和智能化。
- **流程优化**: 重构了 `PlanGenerator` 的动作筛选逻辑,使其在生成计划前,就根据当前聊天模式和简单的激活规则进行预筛选,为后续的 LLM 决策提供更精准、更高效的候选动作列表。
2025-11-19 23:01:16 +08:00
tt-P607
47ee2ba693
feat(planner): 重构动作规划器以支持组合动作和概率性表情
...
重写了 Planner 的主 Prompt,引导 LLM 将回复(reply)视为主动作,将表情(emoji)等视为辅助动作,从而更好地生成组合动作,使响应更生动。
- 移除了旧的“100%概率动作强制添加”逻辑,并替换为新的“概率性表情”机制。现在,当生成回复时,会根据配置的概率(emoji_chance)自动附加一个 emoji 动作。
- 改进了 emoji 动作的情感匹配逻辑,从精确匹配改为模糊匹配,提高了根据 LLM 输出找到合适表情的成功率。
- 修复了随机类型动作在激活概率计算时的一个边界条件问题。
2025-11-19 22:59:38 +08:00
tt-P607
227ef1af52
feat(actions): 支持同时进行回复与其他动作
...
重构了动作执行流程,以支持更丰富的多动作组合,例如在发送文本回复的同时发送一个表情。
主要变更:
- **执行流程**: 在 `CycleProcessor` 中,将动作分为“回复”和“其他”两类。系统会先串行执行回复动作,再并行执行所有其他动作,确保了核心回复的优先性。
- **规划逻辑**: 在 `Planner` 中优化了提示词,并增加后处理步骤,以鼓励并确保在回复时触发补充性动作(如100%概率的emoji)。
- **emoji动作**: 重构了表情选择逻辑,现在会评估所有可用的表情,而不仅仅是随机抽样,提高了选择的准确性。
- **修复**: 修复了 `ActionModifier` 中随机激活概率为100%的动作可能不触发的bug。
2025-11-19 22:59:33 +08:00
minecraft1024a
d66e04baff
chore: format code and remove redundant blank lines
...
This commit applies automated code formatting across the project. The changes primarily involve removing unnecessary blank lines and ensuring consistent code style, improving readability and maintainability without altering functionality.
2025-11-19 22:57:44 +08:00
Windpicker-owo
d86cfa90ad
迁移:3804124,9e9e796
...
(feat:将no_reply内置、fix:优化reply,填补缺失值)
2025-11-19 22:56:51 +08:00
Windpicker-owo
fe472dff60
修复代码格式和文件名大小写问题
2025-11-19 22:55:55 +08:00
minecraft1024a
38fed9b4cc
添加聊天类型限制功能,支持根据聊天类型过滤命令和动作,新增私聊和群聊专用命令及动作,优化相关日志记录。
2025-11-19 22:40:01 +08:00
SengokuCola
3804124df8
fix:优化reply,填补缺失值,youhualog
2025-08-11 00:19:31 +08:00
UnCLAS-Prommer
6c0edd0ad7
调整对应的调用
2025-07-30 17:07:55 +08:00
UnCLAS-Prommer
b3e8fa7058
让activation概率可以为0
2025-07-26 19:23:21 +08:00
SengokuCola
5251905744
fix:修复reply导致的异常空跳
2025-07-25 13:45:16 +08:00
UnCLAS-Prommer
10bf424540
增加了组件的局部禁用方法
2025-07-23 00:41:31 +08:00
UnCLAS-Prommer
76025032a9
增加了卸载和重载插件功能
2025-07-22 18:52:11 +08:00
UnCLASPrommer
fb54b052f9
fix #1109 and a similiar problem
2025-07-15 17:03:22 +08:00
UnCLASPrommer
eae399fb95
typing change, use enum instead of string, fix typo
2025-07-14 23:40:09 +08:00
SengokuCola
11bef44901
feat:添加激活和改写的最大上下文限制,修剪planner长度
2025-07-13 20:45:21 +08:00
SengokuCola
7d193fe37b
fix:修复action_info未正确获取
2025-07-13 18:42:47 +08:00
SengokuCola
dfc73255a7
better:优化了人格和其他配置文件,更加精简易懂
2025-07-13 18:32:49 +08:00
UnCLASPrommer
6545a12b07
完善可乐的更改
2025-07-13 14:20:25 +08:00
SengokuCola
aafa4c688b
fix:修正merge带来的问题
2025-07-13 13:46:12 +08:00
UnCLAS-Prommer
f890722c3d
Merge branch 'dev' into plugin
2025-07-13 01:28:48 +08:00
github-actions[bot]
2d39cefce0
🤖 自动格式化代码 [skip ci]
2025-07-12 16:21:28 +00:00
SengokuCola
58ef00865d
fix rudff
2025-07-12 23:35:05 +08:00
SengokuCola
b74376387a
feat;现在只需要activation_type字段
2025-07-12 23:34:52 +08:00
SengokuCola
6f1add930b
feat:统一化模式动作,移除模式配置
2025-07-12 23:24:02 +08:00
SengokuCola
8fae6272bc
feat:normal可以一种简洁的方式切换到focus
2025-07-12 16:12:30 +08:00
UnCLAS-Prommer
485aaac783
Merge branch 'dev' into plugin
2025-07-12 10:02:05 +08:00
SengokuCola
8d303d96a2
Merge branch 'dev' of https://github.com/MaiM-with-u/MaiBot into dev
2025-07-12 01:26:30 +08:00
SengokuCola
4255e64d35
feat:整合normal和focus聊天
2025-07-12 01:24:13 +08:00
UnCLAS-Prommer
b303a95f61
部分类型注解修复,优化import顺序,删除无用API文件
2025-07-12 00:34:49 +08:00
github-actions[bot]
1bff478fcc
🤖 自动格式化代码 [skip ci]
2025-07-11 05:19:35 +00:00
UnCLAS-Prommer
968eb92107
不再进行action_info转换了,保持一致性
2025-07-11 00:59:49 +08:00
UnCLAS-Prommer
ab61b1bb22
插件系统info修复,见changes.md
2025-07-10 16:46:37 +08:00
UnCLAS-Prommer
d5cd0e8538
修改import顺序,把魔法字变为枚举型
2025-07-09 21:54:43 +08:00
github-actions[bot]
18778d2dc7
🤖 自动格式化代码 [skip ci]
2025-07-06 12:17:38 +00:00
SengokuCola
1365099fd4
remove:冗余的sbhf代码和focus代码
2025-07-06 20:14:09 +08:00
SengokuCola
dc24a76413
ruff
2025-07-06 18:47:18 +08:00
SengokuCola
1de15bcc31
ref:调整文件位置和命名,结构更清晰
2025-07-06 18:47:08 +08:00
SengokuCola
498d72384f
feat:统一normal和focus的动作调整,emoji统一可选随机激活或llm激活
2025-07-06 18:36:14 +08:00