想要建立知识库,但是,英文文献看起来费劲,PDF 不方便 AI 检索和阅读,怎么办?
那就,建一条自动化流水线:把英文 PDF 论文转成 Markdown,再生成英中对照翻译文件。
不废话,先给出最终的方案:
用anydoc把 PDF 转成 Markdown
用 Claude API 做英中对照翻译
做成可复用的工具(CLI / Workflow)
下面是我这次工作流开发的过程记录,也是关于“如何与 AI 协作做开发”的经验复盘。
第一步:选 PDF 转 Markdown 的工具
向 AI 提出任务需求,让 AI 回答:
这个任务分哪几步?每一步的作用是什么?
先验证哪一步最容易?验证的标准是什么?
得到答案后,再根据任务步骤,选择具体的解决方案和工具。
比如,这个 PDF 转 Markdown 再翻译的自动化过程主要分成:PDF 转 Markdown;英文翻译成中文。
英文翻译成中文对于 AI 来说不是难事,难点在于 PDF 转 Markdown 的工具选择上。
AI 给出的 PDF 转 Markdown 方案不一定是最佳的,还需要在 GitHub 或者公众号上找找是否有更好的解决方案。各个方案对比如下:
工具 | 优点 | 问题 |
|---|---|---|
anydoc | 速度快、分类准 | npm 预编译,不用担心 Python 版本问题 |
MinerU 在线 API | 支持扫描页、公式提取 | 文件要上传云端,还有负号变汉字的 bug |
Python 官方库栈 | 已安装 | 表格提取能力弱(TEDS 0.49) |
让 AI 对比分析:使用 Python 官方库栈,整个工具需要自己编写,费劲;MinerU 在线 API 需要把文件上传云端;而 anydoc 是 npm 预编译,直接一条命令即可安装:
用 npm 安装anydoc
npm install -g @firecrawl/anydoc
验证
anydoc --version
第二步:验证 PDF 转 Markdown
探索阶段,手动验证能够快速试错,找到可行的路。如果在还没确认“这条路走得通”之前就修路,可能会修一条死路。
选择两个简单的方案——MinerU 在线 API、anydoc——进行验证,分别用 MinerU 在线 API、anydoc 转一个真实的 PDF,看看输出是什么样的。发现 MinerU 在线 API、anydoc 这两个方案皆可行,但 anydoc 安装简单,全本地部署,不用上云,隐私性好,且可直接使用。最后,选择了 anydoc。
第三步:验证翻译质量
把 anydoc 的输出截取一段,扔给 Claude,检查翻译质量。
第四步:把手动验证的过程固定下来,变成可复用的工具
这一步,我犯了一个错误,把所有的裁判权交给了 AI:因为不懂编程,所以,把写代码的任务全丢给了 AI,Python 模块一次性写完 300+ 行,然后一次性端到端测试,结果 AI 在错误方向上撞了很久;所有的问题,还在最后测试时全部爆发出来。
正确做法:
先问全貌:这次任务分哪几步?
AI 的每个输出,我需要判断是否接受
如果不知道怎么判断,就问:“这一步做完后,我怎么验证它成功了?”
如果 AI 给的方案超出我的理解范围,就说:“我不懂这个方案,你先告诉我它分哪几步,每一步做什么。”
每写完一个功能就验证
比如,第一步只写 PDF 转 MD,然后马上验证,验证成功后,再加翻译功能,并测试翻译功能。
虽然中间的道路是曲折的,但最终还是得到了一套可以复用的 CLI。
夜雨聆风