36,630 颗星背后:一个 PDF 翻译工具,凭什么被 EMNLP 2025 接收为 Demo?
36,630 颗星背后:一个 PDF 翻译工具,凭什么被 EMNLP 2025 接收为 Demo?
你有没有过这种经历:好不容易找到一篇论文,点开一看——全英文,30 多页,公式密集,图表复杂,引用了上百篇。打开 Google 翻译,把 PDF 传上去,等了 30 秒,下载回来一看:公式全变成了乱码,图表位置歪到了第二页,目录结构和原文对不上。
这个问题,折磨了全球科研工作者无数年。直到 2024 年,一个叫 PDFMathTranslate 的开源项目开始在 GitHub 上悄悄积累星标。
这个项目在做什么
PDFMathTranslate 的核心定位很清晰:把科学 PDF 翻译成其他语言,同时完整保留排版——特别是数学公式。输入一篇英文的 IEEE 论文,输出是一篇中文 PDF,章节结构、公式编号、图表位置、双栏布局全部与原文一一对应。
它不是”翻译+格式调整”,而是把格式保持作为第一优先级,翻译只是顺带的事。
从技术架构看,整个流程分四层:先用 PyMuPDF 和 Pdfminer 解析 PDF 结构,再用 DocLayout-YOLO(ONNX 模型)识别页面里的文本块、公式、图表、表格、注释,然后在”保护-翻译-还原”机制下只翻译纯文本,公式保持 LaTeX 原样,最后用 Pikepdf 按原始坐标重建 PDF。
它解决什么问题
传统翻译工具处理 PDF,主流方案是先把 PDF 转成图片再 OCR,或者把页面内容全部转成纯文本再翻。这两种方式对普通文档勉强能用,但遇到学术论文就失效了:数学公式里的 $f(x) = sum_{i=1}^{n} beta_i x_i$ 在 OCR 后变成一串问号,多栏排版的论文翻译后文本会跨栏乱跑,图表的 caption 和正文对不上。
PDFMathTranslate 的实测数据(来源:CSDN 博客、GitCode 评测):公式识别准确率 98.7%,排版保持度 99.2%,处理速度约 3.2 页/分钟,一篇 10 页的学术论文平均 45 秒完成翻译。传统方案公式完整率约 62.3%,平均 1.8 页/分钟。
支持哪些翻译服务
项目支持 20+ 翻译后端,包括 Google、DeepL、OpenAI(GPT-4 系列)、Ollama(本地模型)、MiniMax 等。不同服务的学术术语翻译质量有明显差异:DeepL 在”eigenvalue”译为”本征值”而非”特征值”这类学术惯例上更准确;OpenAI GPT-4 的上下文理解能力更强,适合复杂长句;Ollama 支持本地部署,数据不出内网,适合处理敏感文档。
适合谁,不适合谁
适合以下场景:科研人员阅读非母语文献,特别是数学、物理、计算机等公式密集领域;学术论文翻译后用于国内期刊投稿;技术文档本地化(需保留代码块格式);Zotero 用户直接在文献管理器里翻译 PDF。
不适合以下场景:扫描版 PDF(需要先 OCR,工具本身不支持);追求即时交互体验(命令行和 GUI 为主,没有浏览器插件的划词翻译);对翻译质量要求极严苛、必须人工审校的情况(它是翻译辅助工具,不是专业译后编辑)。
怎么上手
最快的方案是直接用官方在线服务:访问 pdf2zh.com,上传 PDF,选择翻译语言,等待下载,全程不需要注册、不需要 API Key。HuggingFace 和 ModelScope 上也有公开 Demo 实例可用。
如果需要本地部署或批量处理,可通过以下方式安装:
# Python 环境(3.11 <= version <= 3.12)
pip install pdf2zh
# 一行命令完成翻译
pdf2zh document.pdf
# 启动图形界面
pdf2zh -i
# 指定翻译服务和目标语言
pdf2zh paper.pdf -s deepl -li en -lo zh
Docker 用户可直接运行:
docker pull byaidu/pdf2zh
docker run -d -p 7860:7860 byaidu/pdf2zh
# 浏览器打开 http://localhost:7860/
需要 Zotero 插件可访问 Zotero PDF2zh。国内用户如遇模型下载困难,设置 HF_ENDPOINT=https://hf-mirror.com 即可。
它的边界在哪里
PDFMathTranslate 是翻译工具,不是 OCR 工具。如果 PDF 是图片扫描版,需要先用 qpdf 或 Adobe 等工具做文字识别,再喂给它处理。
v2.0 已发布,移至独立仓库 PDFMathTranslate/PDFMathTranslate-next,新增精确翻译模式(--mode precise),使用独立环境隔离翻译内核,减少环境依赖冲突。
项目采用 AGPL-3.0 开源协议,代码在 GitHub 公开,ISSUE 区和 PR 区活跃。最近更新(2026 年 3 月)包括 MiniMax 翻译服务支持、macOS 和 ONNX 平台模型加载加速,以及多个 bug 修复。
GitHub 仓库:https://github.com/PDFMathTranslate/PDFMathTranslate
官网/在线演示:https://pdf2zh.com
文档(含进阶配置):https://github.com/PDFMathTranslate/PDFMathTranslate/blob/main/docs/README_zh-CN.md
EMNLP 2025 Demo 论文:https://arxiv.org/
评论区
登录后可评论。