世纪难题, 谁能帮帮我?

需求如下:

52800个PDF文件,大小为213GB, 文件名都按照数字顺序命名,内容为 扫描版和文字版 , 其中部分扫描版pdf为双层pdf(上层显示图片,隐藏层显示文字,但部分复制时为乱码)。

为了方便查询检索,我尝试的方法如下;

方法1:使用pdf文献管理软件,文件过多导致运行卡顿,且无法获取更多信息,pdf没有任何有用的元数据。

方法2:使用文件内容索引软件,比如AnyTxt,但是OCR内容一团糟,且索引文件尺寸很大

方法3:使用Python 编程, 获取pdf内容, 索引生成 HTML文件, 但是本地OCR结果也是一团糟,基本上涉及到文件文号或者规范编号的,都索引不到。

方法4: 把pdf喂给各路AI,让AI根据要求提供给我合适的文件名,结果发现 ,文件多了大了,ai要么很慢,要么就只能挨个喂,5w个喂到几时?

方法5: 使用wisFile智能更名程序,结果发现名称一团糟,而且扫描件识别失败。

方法6:使用openclaw这类智能体,结果发现,本地ocr能力很弱,联网token真的负担不起。

目前办法如下:

使用python,对pdf首页转成png文件, 把首页png喂给deepseek,每次50个,写提示词,让它生成批量改名的bat文件,我复制到cmd中执行。

目前是我能想到的最省钱,识别效果最好,理解和执行意图最高的AI,大约仅需要1000多次,就行了。

但是,干多了,DeepSeek 会提示请求频繁,24小时禁止上传图片。 :joy:

你们还有什么好办法吗?

AI时代,省钱,省事的办法?

对一堆数字名的扫描版pdf, 改名为有意义的文件名呢?

AI时代又要省token的话,就只能找个论坛发出来让网友帮你搞定了。 :doge:

试试本地用 PaddleOCR 识别

现在 PaddleOCR 可以直接将 pdf 转成 LLM 友好的数据格式(JSON/Markdown)

先把需要OCR的给挑出来 , 然后再去OCR, 就用楼上的那个

如果有显卡的话自己跑个模型试试效果

在解决你的技术问题之前,先帮我解决一个阅读理解问题,你求助的题目是什么?

我能看到的是"为了方便查询检索",那么对于"方便"的定义是什么?你又是怎么去"查询检索"的?Windows自带的Search检索52800个文件完全没问题啊。你想要怎么检索?在不清楚你的需求之前,我不觉得别人能够命中你的需求。

他想检索PDF内的内容吧

恩,我也猜测是跟检索内容有关,毕竟很多的操作都涉及到了PDF的内容,但是,"检索内容"也有很多的做法,比方说

  • 根据关键词检索
  • 或者按照分类检索
  • 或者模糊查询
  • 亦或者作为RAG的资料喂给大模型

没有清晰的需求描述,我不觉得这个问题很好解决

我感觉你需要拆分需求,
你这个问题我感觉需要拆分为

  1. 如何识别DPF是否需要OCR
  2. 如何高质量廉价批量OCR大量PDF文件
  3. 如何将OCR结果和PDF文件本体关联
  4. 如何将文本结果索引

如果你没那么大体积,或者接受分成多个组,倒是可以直接白嫖腾讯的IMA,直接往知识库里塞PDF文件就行,他会自动帮你OCR识别,并完成向量化,之后直接@知识库,做AI检索就行了(可用GLM5.1,DS3.2,HY2.0三个大模型)

储存空间默认是50GB,邀请一个人扩容10GB,最大100GB

我是做了个规范库给自己用的

因为支持加载共享知识库,所以理论上做好分组,可以用多个微信号实现无限扩容

如果你真有这么多文件, 就会发现:

  1. C盘空间占用巨大(通常索引小于被索引文件大小的 10%)
  2. 自带的搜索并不适合 扫描版pdf

如果只是少量pdf, 什么方法我都能解决.

关键在5w这个数量级.

稍微搜索了下,发现了点东西,那个双层的PDF应该是某个OCR的软件批量处理过的东西吗,但是OCR处理的不好,然后现在处于不可用的状态?

诶,还是不猜了,什么都不知道,坐等更详细的描述,否则这里只能猜,啥也干不了。

部分pdf有放复制权限, 所以可以搜索但无法复制, 表现为复制的全是乱码.

部分pdf 只是光学ocr双层, 所以可以复制, 但ocr能力弱导致文字与实际有出入

部分pdf 纯扫描版, 加水印, 导致很多ocr 都受到干扰.

五万的数量级完全不是问题啊。

我的音效库的文件有38771个音效(或者说有38771个文件,毕竟可能还有零星的图片或者版权文件啥的),我就直接用Windows的索引,一直没问题。这个文件量级根本不构成问题。

再说了,替代Windows搜索的软件辣么多,如果仅仅是文件名索引的话,随便哪个都能用。关键是你要怎么索引啊

你没仔细阅读.

文件名都是数字. 没有任何价值

只有索引内容, 但是扫描版的索引是个难题.

所以我目前想批量改名, 等全部改名之后, 用everything 搜索文件名.

问题来了, 如何对一堆数字名的扫描版pdf, 改名为有意义的文件名呢?

我看到了啊,文件名都是数字,但是数字一样可以有各种含义啊

我拍的照片,"20160315007.jpg"这不就是16年三月份拍的照片嘛?还是这个序列的第"007"张,为什么不能索引?

所以,你到底要索引什么?你索引内容是要索引什么?

所有的文件名都是:

std_001.pdf
std_99999.pdf

恐龙老兄自己会编程,不如看看老马这篇文章借鉴一下

这个数量本地部署个大模型试试?太多了得贵死

多谢.

我看了一下, 老马这个是文字校对.

其实我用wps365可以批量. 但问题是5w个文件, 需要挨个打开, 而且

有些pdf限制编辑. 所以已经封死我 ocr-写入pdf- 内容索引 的路了.

部署过类openclaw.

这个需要2个模型能力, 一个ocr,一个LLM

主要是本地OCR的能力弱一些, 我部署飞浆最新版还不兼容.

另外, 电脑a卡不是n卡, 所以速度不快, 读1个文件差不多要2-5分钟, 而且还需要我不断手动点击确认危险操作. 时间长了就卡, 需要人工干预.

而且这个改名也需要LLM的token, 如果是本地大模型, 读3-5本pdf就内存溢出了.

我感觉吧, 如果是企业级, 问题不大, 花钱就能解决. 不论是花钱买token,还是花钱买显卡.

但我是个人呐 :joy_cat: