e8ca16d1bc1ee0cd8c661b5d4874284d13b69f5e
问题:急停后恢复时,内存中的去重集(_seen_messages/_replied_texts) 和语义指纹缓存(_recent_user_queries/_semantic_fingerprint_cache) 残留上次已处理的消息,导致新轮次OCR捕捉到相同内容时, 虽然时间戳已达标但仍被去重逻辑跳过。 修复:在 start() 入口处新增 _force_clear_all_residual_data(), 清理所有内存去重/冷却/缓存状态,不触碰数据库持久化记录。 清理范围: - 消息去重集:_seen_messages, _replied_texts, _recent_processed_messages - 语义指纹:_recent_user_queries, _semantic_fingerprint_cache - 平台冷却:_last_reply_time, _last_new_msg_time, _failed_send_cooldown - OCR缓存:_last_texts, _raw_clipboard, _last_clipboard_hash, _app_variant - 响应式冷却:_foreground_cooldown_until, _self_reply_cooldown_until
消息问答助手 (Message Bot)
Windows 桌面工具,监控微信/QQ 新消息 → 在本地知识库中搜索答案。
功能
- 消息监控:通过 Windows UI Automation 监听微信/QQ 聊天新消息
- 本地知识库:支持 Markdown (
.md) / 文本 (.txt) 文件,自动建索引 - 智能问答:jieba 分词 + TF-IDF 余弦相似度搜索
- GUI 控制:开关、知识库路径、平台选择、轮询间隔
快速开始
# 1. 安装依赖
pip install -r requirements.txt
# 2. 准备知识库
# 在某个文件夹放 .md / .txt 文件
# 3. 启动
python main.py
在 GUI 中选择知识库文件夹 → 开启监控 → 微信/QQ 收到新消息时自动搜索并展示答案。
技术栈
customtkinter— 现代化桌面 GUIuiautomation— Windows UI 自动化(消息读取)jieba— 中文分词scikit-learn— TF-IDF 向量化 + 余弦相似度
Languages
Python
99%
Batchfile
0.6%
PowerShell
0.4%