返回目录
Skills效率自动化类新手

BabelDOC:PDF 科学论文翻译与双语对比库

BabelDOC 是一个面向 PDF 科学论文的翻译与双语对比开源库,提供命令行界面和 Python API,支持将英文 PDF 翻译为中文并生成双语对照或纯译文 PDF。项目目前处于早期阶段,主要聚焦英译中,可在线使用沉浸式翻译的 Beta 服务,也可通过 PDFMathTranslate-next 自部署,并支持 OpenAI 兼容的 LLM 翻译接口。

0 次阅读2026/08/12 发布
BabelDOC:PDF 科学论文翻译与双语对比库 来源图片

适用大模型

gpt-4o-mini

社区作者 · zZz

它解决什么问题

BabelDOC(Yet Another Document Translator)是一个 PDF 科学论文翻译和双语对比库。其目标是通过标准化的解析和渲染流水线,解决 PDF 翻译中布局保留、段落合并等问题。

主要特性包括:支持命令行界面和 Python API;提供双语对照 PDF(默认原页在前)和单语 PDF 两种输出;支持按页翻译、拆分翻译、扫描件检测与 OCR 兜底;支持自动术语提取和自定义术语表(CSV);支持 OpenAI 兼容接口(如 gpt-4o-mini、glm-4-flash、deepseek-chat 等)作为翻译引擎;提供离线资源打包/恢复功能,便于离线或内网部署。

项目与沉浸式翻译(Immersive Translate)和 Zotero 插件集成,用户可通过沉浸式翻译的 Beta 在线服务获得每月免费额度,或使用 PDFMathTranslate 2.0 自部署。BabelDOC 的核心设计是将 PDF 解析为中间表示,再渲染为新 PDF 或其他格式,流水线采用插件化架构,便于扩展新模型、OCR 和渲染器。当前已知问题包括:作者和参考文献部分解析错误、不支持线条和首字下沉、大页面会被跳过。

项目遵循 Maintainer-led 开发模式,欢迎提交 bug 报告、可复现 PDF、文档修复和小规模兼容性修复。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

BabelDOC 推荐使用 uv 工具进行安装。

从 PyPI 安装

  1. 参考 uv 安装文档安装 uv,并按提示配置 PATH 环境变量。
  1. 使用以下命令安装 BabelDOC:
命令
uv tool install --python 3.12 BabelDOC
  1. 验证安装:

babeldoc --help

  1. 使用 babeldoc 命令进行翻译,例如(建议使用绝对路径):

babeldoc --openai --openai-model " gpt-4o-mini " --openai-base-url " https://api.openai.com/v1 " --openai-api-key " your-api-key-here " --files example.pdf

多文件翻译:

babeldoc --openai --openai-model " gpt-4o-mini " --openai-base-url " https://api.openai.com/v1 " --openai-api-key " your-api-key-here " --files example1.pdf --files example2.pdf

从源码安装

  1. 安装 uv 并配置 PATH。
  1. 克隆项目:
命令
git clone https://github.com/funstory-ai/BabelDOC
  1. 进入项目目录:
命令
cd BabelDOC
  1. 安装依赖并运行:
命令
uv run babeldoc --help
  1. 翻译示例:
命令
uv run babeldoc --files example.pdf --openai --openai-model " gpt-4o-mini " --openai-base-url " https://api.openai.com/v1 " --openai-api-key " your-api-key-here "

多文件:

命令
uv run babeldoc --files example.pdf --files example2.pdf --openai --openai-model " gpt-4o-mini " --openai-base-url " https://api.openai.com/v1 " --openai-api-key " your-api-key-here "

首次运行与常见问题

  • 首次运行可能需要下载模型和字体,可使用 --warmup 仅下载并验证所需资源。
  • 翻译语言默认源语言为 en(英文),目标语言为 zh(中文),可通过 --lang-in--lang-out 调整。当前主要支持英译中,英语目标语言支持为实验性。
  • 如遇 PDF 兼容问题,推荐先尝试 --enhance-compatibility(等价于 --skip-clean --dual-translate-first --disable-rich-text-translate)。
  • 大文档可使用 --max-pages-per-part 拆分翻译后自动合并。
  • 明确知道文档不是扫描件时,可用 --skip-scanned-detection 加快处理;对扫描件可使用 --ocr-workaround 处理白底黑字文档。
  • 翻译服务目前只支持 OpenAI 兼容的 LLM,使用本地 Ollama 时可将 API key 设为任意值(如 --openai-api-key a)。
  • 术语表 CSV 需包含 source 和 target 列,可选的 tgt_lng 列指定目标语言,文件名作为术语表名称参与 LLM 提示。
  • Zotero 用户:沉浸式翻译 Pro 会员可使用 immersive-translate/zotero-immersivetranslate 插件;PDFMathTranslate 自部署用户可使用 guaguastandup/zotero-pdf2zh 插件。
  • 配置文件使用 TOML 格式,可通过 --config 指定。示例配置见项目 README 中的 [babeldoc] 部分。
  • 所有 CLI 参数主要用于调试,终端用户建议直接使用在线服务或 PDFMathTranslate 2.0。

配图 1(BabelDOC 标识)。配图 2(BabelDOC 预览效果)。

来源教程配图

BabelDOC
配图 1 · BabelDOC查看原图
教程配图
配图 2 · 教程配图查看原图
Star History Chart
配图 3 · Star History Chart查看原图

适用场景

将英文 PDF 论文翻译为中文并生成双语对照 PDF
批量翻译多篇 PDF 文档
在 Zotero 中集成使用
实现文献翻译
通过 Python API 将翻译能力嵌入其他程序
自定义术语表以确保专业术语翻译一致
离线或内网环境中部署 PDF 翻译服务

Skill 讨论与实践反馈

0

还没有讨论

分享一条可复现的补充、问题或使用经验。

登录后参与回复一起补充步骤、结果和注意事项。