Commit Graph

23 Commits

Author SHA1 Message Date
minecraft1024a
cd84373828 style: 统一代码风格并进行现代化改进
对整个代码库进行了一次全面的风格统一和现代化改进。主要变更包括:

- 将 `hasattr` 等内置函数中的字符串参数从单引号 `'` 统一为双引号 `"`。
- 采用现代类型注解,例如将 `Optional[T]` 替换为 `T | None`,`List[T]` 替换为 `list[T]` 等。
- 移除不再需要的 Python 2 兼容性声明 `# -*- coding: utf-8 -*-`。
- 清理了多余的空行、注释和未使用的导入。
- 统一了文件末尾的换行符。
- 优化了部分日志输出和字符串格式化 (`f"{e!s}"`)。

这些改动旨在提升代码的可读性、一致性和可维护性,使其更符合现代 Python 编码规范。
2025-11-19 23:18:16 +08:00
Windpicker-owo
481252d660 refactor(chat): 异步化聊天系统并重构兴趣值计算机制
将同步调用改为异步调用以提升性能,重构兴趣值计算流程以支持更灵活的组件化架构。主要改进包括:

- 异步化ChatManager相关方法,避免阻塞主线程
- 重构兴趣值计算系统,从插件内部计算改为通过兴趣管理器统一处理
- 新增should_act字段支持更细粒度的动作决策
- 优化初始化逻辑,避免构造函数中的异步操作
- 扩展插件系统支持兴趣计算器组件注册
- 更新数据库模型以支持新的兴趣值相关字段

这些改进提升了系统的响应性能和可扩展性,同时保持了API的向后兼容性。
2025-11-19 23:15:31 +08:00
John Richard
a79253c714 re-style: 格式化代码 2025-11-19 23:13:20 +08:00
John Richard
00ba07e0e1 style: 格式化代码 2025-11-19 23:12:18 +08:00
Windpicker-owo
0b4a85de1e fix(chat): 将同步调用改为异步调用以匹配接口变更
修改了多处 person_info_manager.get_value() 方法的调用方式,从同步调用改为异步调用(添加 await 关键字),使其与异步接口保持一致。这确保了在获取用户信息时的正确异步操作,避免了潜在的阻塞问题。

涉及文件:
- src/chat/replyer/default_generator.py (3处修改)
- src/chat/utils/prompt.py (1处修改)
- src/person_info/relationship_builder.py (1处修改)
2025-11-19 23:09:56 +08:00
minecraft1024a
79baac2797 refactor(person_info): 引入同步方法 get_value 并替换旧的 get_value_sync(因为根本就没有这个方法)
为了解决在不同异步上下文中同步调用数据库可能引发的运行时错误,实现了一个新的、更健壮的同步方法 `PersonInfoManager.get_value`。

- 新方法能够正确处理已在运行的 asyncio 事件循环,提高了在混合代码环境中调用的稳定性。
- 全面替换了原有的 `get_value_sync` 方法调用,统一了同步获取用户信息的接口。
2025-11-19 23:05:20 +08:00
雅诺狐
679195d792 refactor(db): 修正SQLAlchemy异步操作调用方式
移除session.add()方法的不必要await调用,修正异步数据库操作模式。主要变更包括:

- 将 `await session.add()` 统一改为 `session.add()`
- 修正部分函数调用为异步版本(如消息查询函数)
- 重构SQLAlchemyTransaction为完全异步实现
- 重写napcat_adapter_plugin数据库层以符合异步规范
- 添加aiomysql和aiosqlite依赖支持
2025-11-19 23:05:17 +08:00
雅诺狐
93542cadef perf(methods): 通过移除不必要的 self 参数优化方法签名
在包括 chat、plugin_system、schedule 和 mais4u 在内的多个模块中,消除冗余的实例引用。此次改动将无需访问实例状态的实用函数转换为静态方法,从而提升了内存效率,并使方法依赖关系更加清晰。
2025-11-19 23:05:00 +08:00
Windpicker-owo
fe472dff60 修复代码格式和文件名大小写问题 2025-11-19 22:55:55 +08:00
SengokuCola
918429605a fix:不认识的用户构建关系 2025-08-12 16:57:08 +08:00
SengokuCola
ae254de494 better:重构personinfo,使用Person类和类属性 2025-08-12 14:33:13 +08:00
SengokuCola
5251905744 fix:修复reply导致的异常空跳 2025-07-25 13:45:16 +08:00
UnCLAS-Prommer
1aa2734d62 typing fix 2025-07-17 00:10:41 +08:00
SengokuCola
1b866c89b2 feat:不再需要reply_to,action现拥有 user_id和group_id等信息 2025-07-16 00:06:15 +08:00
SengokuCola
5ec0d42cde feat:添加新的message类为s4u服务,添加s4u config,添加sc和gift的解析,修复关系构建的一些问题 2025-07-15 17:04:30 +08:00
UnCLAS-Prommer
7ef0bfb7c8 完成所有类型注解的修复 2025-07-13 00:19:54 +08:00
SengokuCola
50f0ddf2ce feat;新的情绪系统 2025-07-09 01:50:26 +08:00
SengokuCola
4c18426b23 feat:每个消息段有10%概率丢弃 2025-07-08 17:30:03 +08:00
SengokuCola
6782925a1f better:简化配置,让关系构建间隔可配置 2025-07-08 17:26:50 +08:00
github-actions[bot]
e64db2fbe5 🤖 自动格式化代码 [skip ci] 2025-07-07 12:01:49 +00:00
SengokuCola
26e14bd6b7 better:优化log显示,不显示杂乱信息 2025-07-07 20:01:03 +08:00
github-actions[bot]
7efe17a9c8 🤖 自动格式化代码 [skip ci] 2025-07-01 06:47:24 +00:00
SengokuCola
cae015fcfa 移除关系处理器,转为在replyer中提取 2025-07-01 14:46:09 +08:00