综合介绍
PDFMathTranslate 是一个专注于科学论文翻译的开源工具,能够将 PDF 文档全文翻译并生成双语对照版本。它利用 AI 技术完整保留原始文档的排版,包括公式、图表、目录和注解,支持 Google、DeepL、Ollama、OpenAI 等多种翻译服务。该工具提供命令行(CLI)、图形界面(GUI)、Docker 部署和 Zotero 插件等多种使用方式,满足科研人员快速翻译和阅读的需求。截至 2025 年 3 月,项目在 GitHub 上已获超 1.7 万星标,社区活跃,持续更新,新增了对本地模型、非 PDF/A 文件和 BabelDOC 后端的支持。
-
在线体验:https://pdf2zh.com/
功能列表
- 全文翻译与双语对照: 将 PDF 文档翻译为目标语言,同时生成单语译文和双语对照文件。
- 保留原始排版: 确保公式、图表、目录和注解的格式一致,支持 LaTeX 等复杂排版。
- 多语言支持: 可从英语等多种源语言翻译至中文等多种目标语言。
- 多样翻译服务: 集成 Google、DeepL、OpenAI、Ollama 等服务,并支持 Xinference 本地模型。
- 多平台使用: 提供 CLI 工具、GUI 界面、Docker 容器及 Zotero 插件。
- 在线体验: 通过公共服务无需安装即可试用核心功能。
- 高级自定义: 支持部分翻译、多线程处理、自定义输出目录等高级选项。
使用帮助
安装流程
PDFMathTranslate 提供多种安装方式,适用于不同场景。以下是详细步骤:
1. UV 安装(命令行推荐)
- 前提: 系统需安装 Python 3.10 至 3.12。
- 步骤:
- 安装 UV 工具:
pip install uv
- 安装 PDFMathTranslate:
uv tool install --python 3.12 pdf2zh
- 验证:运行
pdf2zh --version
,若显示版本号则成功。
- 安装 UV 工具:
- 网络问题解决: 若无法下载模型
wybxc/DocLayout-YOLO-DocStructBench-onnx
,设置环境变量:- CMD:
set HF_ENDPOINT=https://hf-mirror.com
- PowerShell:
$env:HF_ENDPOINT = "https://hf-mirror.com"
- CMD:
2. Windows 可执行文件(无需编程环境)
- 步骤:
- 访问 GitHub 发布页面(https://github.com/Byaidu/PDFMathTranslate/releases)。
- 下载最新
pdf2zh-version-win64.zip
。 - 解压后双击
pdf2zh.exe
运行。
- 注意: 若无法运行,需安装 VC++ 运行时库(https://aka.ms/vs/17/release/vc_redist.x64.exe)。
3. 图形用户界面(GUI)
- 前提: Python 3.10 至 3.12。
- 步骤:
- 安装软件包:
pip install pdf2zh
- 启动 GUI:
pdf2zh -i
- 浏览器访问
http://localhost:7860/
(若未自动打开,手动输入)。
- 安装软件包:
- 网络问题解决: 同 UV 安装方式。
4. Docker 部署
- 前提: 已安装 Docker(https://www.docker.com/)。
- 步骤:
- 拉取镜像并运行:
docker pull byaidu/pdf2zh docker run -d -p 7860:7860 byaidu/pdf2zh
- 浏览器访问
http://localhost:7860/
。
- 拉取镜像并运行:
- 备用方案: 若 Docker Hub 不可用,可用 GitHub 镜像:
docker pull ghcr.io/byaidu/pdfmathtranslate
docker run -d -p 7860:7860 ghcr.io/byaidu/pdfmathtranslate
5. Zotero 插件
- 步骤:
- 访问 https://github.com/guaguastandup/zotero-pdf2zh 下载插件。
- 在 Zotero 中安装并配置翻译参数。
操作流程
1. 命令行翻译
- 基本操作:
- 准备 PDF 文件(如
paper.pdf
)。 - 运行命令:
pdf2zh paper.pdf
- 输出:生成
paper-mono.pdf
(译文)和paper-dual.pdf
(双语对照),保存至当前目录。
- 高级选项:
- 指定语言:
-li en -lo zh
(英语到中文)。 - 选择服务:
-s deepl
(使用 DeepL)。 - 部分翻译:
-p 1-5
(第 1 至 5 页)。 - 输出路径:
-o ./output
。
示例:
pdf2zh paper.pdf -li en -lo zh -s openai -o ./translated
- 兼容性: 非 PDF/A 文件加
--compatible
参数:
pdf2zh paper.pdf --compatible
2. GUI 界面使用
- 操作步骤:
- 启动 GUI(
pdf2zh -i
)。 - 上传文件:点击“选择文件”,上传本地 PDF,或输入在线链接(如
http://arxiv.org/paper.pdf
)。 - 配置参数:
- 源语言:选择 “English”。
- 目标语言:选择 “Chinese (Simplified)”。
- 翻译服务:选择 “Google” 或其他。
- 点击“翻译”,等待完成。
- 下载:获取单语或双语 PDF 文件。
- 特色功能: 支持在线链接翻译,操作直观。
3. Docker 在线服务
- 操作步骤:
- 运行容器后访问
http://localhost:7860/
。 - 同 GUI 操作,上传文件或链接,设置参数后翻译。
- 分享功能:加
--share
参数生成公网链接:pdf2zh -i --share
4. Zotero 插件使用
- 操作步骤:
- 在 Zotero 中选中 PDF 文献。
- 点击插件图标,设置语言和服务。
- 翻译后结果自动附加至条目。
特色功能详解
- 保留排版: 使用
DocLayout-YOLO
模型解析布局,确保公式和图表位置准确。 - 在线服务体验: 访问 https://pdf2zh.com/ 或 https://app.immersivetranslate.com/babel-doc/(每月 1000 页免费),无需安装即可使用。
- 多线程加速: 使用
-t 4
启用 4 线程处理大文件:
pdf2zh large_paper.pdf -t 4
注意事项
- 资源限制: 在线演示计算资源有限,请勿滥用。
- 更新日志: 2025 年 3 月新增 BabelDOC WebUI 支持(实验性),提升翻译体验。
- 社区反馈: 通过 GitHub Issues(https://github.com/Byaidu/PDFMathTranslate/issues)或 Telegram 群(https://t.me/+Z9_SgnxmsmA5NzBl)提交建议。
PDFMathTranslate非官方整合包
https://pan.quark.cn/s/e9e912c62c3a#/list/share
https://github.com/aidayang/PDFMathTranslate-OneClick