### 关联与状态 路线图 #2,抓取节点。状态:**进行中,@JunieXD**。#102 比较后定了换:图片和扫描的 PDF 不再用本地的 RapidOCR,改由抽取用的 DeepSeek(`deepseek-flash`)切块读,比较和设计见 #104(总体设计 §5.2、§7.4、§8.6、§16)。 ### 目标 图片附件和扫描的 PDF 里的日期、网址认得更准:9 张样本的关键信息从 94/113 到 111/113,没有乱码和漏行。抓取节点也不用在本地跑文字识别:镜像去掉 ONNX Runtime 和模型,识别一张图不再占约 750 MiB 内存。 ### 范围 - 图片,和 PDF 里取不出文字的页上的图片,按 §5.2 切块:尽量在没有字的行把长图切开,每块不超过约 1300×1300 像素,按顺序放在一次请求里;提示词要求一字不差地照抄。 - 读过的文件存在抓取节点的磁盘上(SQLite),按附件网址找,一个字节都不差就用上次的文字,不再读;30 天没用到的删掉(§7.4)。容器挂一个卷存它(§16)。 - DeepSeek 没读成的(接口出错、超时),这条通知这一轮算没抓成,下一轮再抓;文件本身坏了的照旧记日志、文字留空(§7.4)。 - 读图的用量和这条通知的抽取一起交(`Extraction.usage`),没走到抽取的写进日志(§8.6)。 - 删掉 RapidOCR、ONNX Runtime 和本地识别的代码,Pillow 改成直接依赖;开发约定里模块的说明跟着改。 - 不做:不改网站和接口;失败的模型调用也算进用量是路线图里的另一项。 ### 建议的第一步 先写切块,用程序画出来的长图测切口不落在字上;再接上 DeepSeek 和存储,用固定的模型响应测。 ### 验收标准 - [ ] 图片和扫描的 PDF 页由 DeepSeek 切块读,RapidOCR 和 ONNX Runtime 从依赖和镜像里删掉 - [ ] 同一个网址下载到一字节不差的文件,不再调用模型;存的东西在容器重建后还在 - [ ] 读图的用量随抽取交给网站 - [ ] `./check.sh` 通过;拿一两张真实的通知图片在本地走通一遍,PR 里贴出用量
Activity
图片改由 DeepSeek 切块读 (#106)