youpaishidifu 781a578412 fix(msgbot): 修复OCR空列表IndexError并增强stop内存释放至最低占用
Task #1622: 行合并循环在 merged_lines 为空时无条件访问 merged_lines[-1]
抛 IndexError,被最外层 except 记为 [qq] OCR失败: list index out of range。
增加 `if merged_lines else False` 守卫,首行非@结尾/不含问号/非bot回复时
不再越界。

Task #1623: 原 _release_memory 仅 SetProcessWorkingSetSize(-1,-1) 不逼出常驻
页,且未释放 winrt Windows OCR 引擎、未清 GPU 缓存,导致 bot 运行后暂停
内存仍高达~600MB。增强为 EmptyWorkingSet 强制归还物理内存 +
torch.cuda.empty_cache/synchronize + 释放 self._ocr_engine 引用,与 GUI 侧
_force_system_memory_cleanup 范式一致,使运行后暂停与刚启动待机内存一致。
2026-08-29 21:55:59 +08:00

消息问答助手 (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 — 现代化桌面 GUI
  • uiautomation — Windows UI 自动化(消息读取)
  • jieba — 中文分词
  • scikit-learn — TF-IDF 向量化 + 余弦相似度
S
Description
No description provided
Readme
75 MiB
Languages
Python 99%
Batchfile 0.6%
PowerShell 0.4%