Commit Graph

168 Commits

Author SHA1 Message Date
雅诺狐
34252ea4a0 refactor: 清理代码质量和移除未使用文件
- 移除未使用的导入语句和变量
- 修复代码风格问题(空格、格式化等)
- 删除备份文件和测试文件
- 改进异常处理链式调用
- 添加权限系统数据库模型和配置
- 更新版本号至6.4.4
- 优化SQL查询使用正确的布尔表达式
2025-11-19 22:46:18 +08:00
雅诺狐
e39c34f366 fix: 修复视频分析并发处理和数据库存储问题
🔧 修复视频分析模块的关键并发和存储问题

**主要修复:**
1. **并发竞争条件修复**
   - 解决相同视频hash同时处理导致重复分析的问题
   - 重构并发控制机制,使用per-video独立锁和事件
   - 消除30秒超时后多个请求同时执行的竞争条件

2. **数据库存储优化**
   - 移除Videos表path字段的复杂唯一性检查逻辑
   - 简化为基于hash的纯唯一标识存储
   - 修复path字段重复导致的IntegrityError

3. **代码简化和清理**
   - 删除重编码视频检测功能(复杂且用处有限)
   - 移除不必要的特征匹配和计数更新逻辑
   - 简化存储路径生成,统一使用hash前缀

Fixes: 视频并发处理竞争条件、数据库存储冲突、聊天循环变量错误
2025-11-19 22:46:11 +08:00
雅诺狐
3360b22dca Refactor anti-injection system and remove command skip list
Removed the command skip list feature and related code from the anti-injection system, including configuration options, plugin command collection, and management commands. Refactored anti-injector logic to operate directly on message dictionaries and simplified whitelist and message content extraction. Updated response handling to perform anti-injection checks before reply generation, and removed skip list refresh logic from the plugin manager.
2025-11-19 22:46:06 +08:00
雅诺狐
1b9c86abef Refactor web search plugin and clean up code
Refactored the web search plugin by removing the old Bing search implementation and reorganizing the plugin structure. Introduced modular search engine classes under 'web_search_tool/engines' and utility tools under 'web_search_tool/tools' and 'web_search_tool/utils'. Updated references and initialization logic to support multiple search engines and improved maintainability. Also performed minor code cleanups and replaced 'except ...: pass' with 'except ...: ...' for brevity.
2025-11-19 22:45:42 +08:00
雅诺狐
31e028ab25 Refactor anti-injection system into modular subpackages
Split the anti-prompt-injector module into core, processors, management, and decision submodules for better maintainability and separation of concerns. Moved and refactored detection, shielding, statistics, user ban, message processing, and counter-attack logic into dedicated files. Updated imports and initialization in __init__.py and anti_injector.py to use the new structure. No functional changes to detection logic, but code organization is significantly improved.
2025-11-19 22:45:01 +08:00
雅诺狐
383f704b53 Remove unused imports across multiple modules
Cleaned up various files by removing unused or redundant import statements to improve code readability and reduce potential confusion. No functional changes were made.
2025-11-19 22:44:32 +08:00
minecraft1024a
d355153a19 feat(video): 视频识别功能开关与日志优化
根据全局配置 `global_config.video_analysis.enable` 控制视频识别功能的启用与禁用。

- 当视频识别功能禁用时,收到视频消息将直接返回 `[视频]` 或空字符串,不再进行分析,以节约资源。
2025-11-19 22:44:04 +08:00
minecraft1024a
d20daaf3e2 新增反击模式支持,允许在检测到提示词注入攻击时生成反击响应并发送。更新相关配置和处理逻辑,增强系统的防护能力。 2025-11-19 22:44:03 +08:00
雅诺狐
2d91a7d55c Refactor anti-injector process result handling
Introduced a ProcessResult enum to standardize anti-injector message processing outcomes. Updated anti_injector.py to return ProcessResult values instead of booleans, and refactored bot.py to handle these results with improved logging and clearer control flow. This change improves code clarity and maintainability for anti-prompt injection logic.
2025-11-19 22:43:58 +08:00
雅诺狐
16da725272 Add LLM anti-prompt injection system
Introduces a comprehensive anti-prompt injection system for LLMs, including rule-based and LLM-based detection, user ban/whitelist management, message shielding, and statistics tracking. Adds new modules under src/chat/antipromptinjector, integrates anti-injection checks into the message receive flow, updates configuration and database models, and provides test scripts. Also updates templates and logger aliases to support the new system.
2025-11-19 22:43:57 +08:00
雅诺狐
875e02d42f 数据库重构 2025-11-19 22:40:23 +08:00
minecraft1024a
38fed9b4cc 添加聊天类型限制功能,支持根据聊天类型过滤命令和动作,新增私聊和群聊专用命令及动作,优化相关日志记录。 2025-11-19 22:40:01 +08:00
Furina-1013-create
2d22b3d561 我靠我我视频识别怎么又给我炸了
--已重新修复......
2025-11-19 22:38:52 +08:00
雅诺狐
2dfd986ba4 Update storage.py 2025-11-19 22:37:40 +08:00
minecraft1024a
e6499e2fa7 修复interest_value为None的情况,确保在计算兴趣值时不会出现错误。将interest_value的默认值设置为0.0,以提高代码的健壮性。 2025-11-19 22:36:10 +08:00
雅诺狐
2e6ae2419b 优化项目结构,格式化代码 2025-11-19 22:35:40 +08:00
Furina-1013-create
2d1e131899 增加视频识别板块
采用抽帧的方式识别视频,可以自己配置详细参数 -详细请看bot_config最底下
更改了template模板
多bb一句:我真的是被这个炸服了,改完这里那里就又炸了,但是总之现在没问题了
2025-11-19 22:35:36 +08:00
雅诺狐
b966a2f09c 小修复 2025-11-19 22:35:34 +08:00
雅诺狐
4a1a1510c5 更新插件示例,及信息类型问题 2025-11-19 22:35:31 +08:00
雅诺狐
a588a2a695 添加了一个发送api 2025-11-19 22:35:26 +08:00
minecraft1024a
be13559563 fix(storage): 修复消息ID更新逻辑
将消息ID的更新逻辑从处理 "text" 和 "reply" 类型,调整为专门处理 "notify" 类型。
这确保了只有在收到通知类型的消息时才尝试获取和更新消息ID,避免了在其他消息类型上出现错误。
2025-11-19 22:35:19 +08:00
雅诺狐
23ee3767ef 初始化 2025-11-19 22:34:56 +08:00
UnCLAS-Prommer
1461338c0c typing fix 2025-08-13 22:51:34 +08:00
SengokuCola
41a09b39b9 fix:将s4u启用放到配置文件防止git更新 2025-08-13 19:15:17 +08:00
SengokuCola
4ffcc61f4b feat:记录使用的表达方式 2025-08-12 21:44:35 +08:00
SengokuCola
f0fff5a039 fix:person创建和调用区分 2025-08-12 15:15:50 +08:00
SengokuCola
69a855df8d feat:保存关键词到message数据库 2025-08-10 21:12:49 +08:00
SengokuCola
b57671b639 fix:修复表情包描述进入prompt问题 2025-08-09 21:16:57 +08:00
SengokuCola
d1f15a932a fix:缺少stream的报错 2025-08-08 21:20:28 +08:00
SengokuCola
a2c86f3605 feat:部分处理notify,自动同步数据库null约束变更
notify存储至message库
2025-08-08 12:34:21 +08:00
UnCLAS-Prommer
6c0edd0ad7 调整对应的调用 2025-07-30 17:07:55 +08:00
UnCLAS-Prommer
d643a85a0a send_api_doc与reply_to修改 2025-07-28 11:47:32 +08:00
UnCLAS-Prommer
bbb112d803 动态控制命令后续处理 2025-07-25 11:01:14 +08:00
UnCLAS-Prommer
d6284b6b4c 插件管理API测试与修改通过 2025-07-24 00:31:53 +08:00
UnCLAS-Prommer
10bf424540 增加了组件的局部禁用方法 2025-07-23 00:41:31 +08:00
UnCLAS-Prommer
35ec390dfd 增加了组件的全局启用和禁用功能 2025-07-22 22:38:40 +08:00
SengokuCola
95d6ee1213 修复合并错误 2025-07-22 21:15:02 +08:00
SengokuCola
2a8d29332e Merge branch 'dev' of https://github.com/MaiM-with-u/MaiBot into dev 2025-07-22 20:42:36 +08:00
SengokuCola
75022b5d10 s4u的一些修改,包括动作适配 2025-07-22 20:36:53 +08:00
UnCLAS-Prommer
b7117726e2 Merge branch 'dev' of https://github.com/MaiM-with-u/MaiBot into dev 2025-07-21 01:25:39 +08:00
UnCLAS-Prommer
484fc20983 typing and plugins 2025-07-21 01:23:23 +08:00
SengokuCola
e227a0158d Merge branch 'dev' of https://github.com/MaiM-with-u/MaiBot into dev 2025-07-21 00:45:04 +08:00
SengokuCola
639048deed feat:麦麦会产生thinking,并发送内容到直播流 2025-07-21 00:44:58 +08:00
UnCLAS-Prommer
f2c901bc98 typing 2025-07-20 18:14:53 +08:00
SengokuCola
20142d1cdb Merge branch 'dev' of https://github.com/MaiM-with-u/MaiBot into dev 2025-07-20 14:24:49 +08:00
SengokuCola
faeb76bdd2 fix:s4u由platform触发 2025-07-20 14:24:44 +08:00
UnCLAS-Prommer
32cb4dc726 some typing 2025-07-19 19:14:52 +08:00
Windpicker-owo
830acaf35f 优化了代码规范 2025-07-17 15:35:13 +08:00
Windpicker-owo
367be4e7d7 优化了部分代码 2025-07-17 15:12:20 +08:00
Windpicker-owo
587aca4d18 增加对voice类型消息的支持 2025-07-17 14:50:19 +08:00