发现TranslateBooksWithLLMs:开源AI书籍翻译神器,整本翻译还保留原有排版
【免费下载链接】TranslateBooksWithLLMsTranslate full-length books and documents with Ollama, OpenAI-compatible, Gemini, Mistral, DeepSeek, Poe or OpenRouter. Preserves formatting. Resumes where you left off. No file size limits.项目地址: https://gitcode.com/gh_mirrors/tr/TranslateBooksWithLLMs
TranslateBooksWithLLMs(简称 TBL)是一款开源的AI 书籍翻译工具:把整本 EPUB、TXT、DOCX、PDF、SRT 文件丢给它,选择源语言和目标语言,就能得到一份完整保留原有排版的翻译成品。它支持 Ollama 本地免费模型,也兼容 OpenAI、Gemini、Mistral、DeepSeek、Poe、OpenRouter 等云端大模型,没有文件大小限制,翻译中断后还能随时续传。
🚀 三步上手:AI书籍翻译工具安装教程
方式一:下载桌面版(推荐新手)
- 下载对应平台的安装包(Windows / macOS)
- 解压后运行
TranslateBook.exe(Windows)或./TranslateBook(macOS) - 浏览器打开 http://localhost:5000,网页界面即可开始翻译
方式二:从源码运行
git clone https://gitcode.com/gh_mirrors/tr/TranslateBooksWithLLMs cd TranslateBooksWithLLMs ollama pull qwen3:14b # 拉取一个本地模型 # Windows 执行 start.bat,Mac/Linux 执行: ./start.sh首次启动会生成TranslateBook_Data配置文件夹,之后在界面上选择翻译提供方(Provider)和模型即可。想直接体验命令行工作流,可以看入口脚本 translate.py。
📚 五种格式全覆盖:EPUB、SRT、DOCX、PDF、TXT
这是 TBL 最核心的卖点——不是翻译文本,而是翻译整个文件:
| 格式 | 保留效果 |
|---|---|
| EPUB | 章节结构、样式、排版完整保留 |
| SRT | 字幕时间码严格同步,不会错位 |
| DOCX | 文档结构原样输出 |
| 标题、段落、列表、图片、带框表格重建保留 | |
| TXT | 段落结构对齐 |
得益于智能分块(chunking)系统,几千页的长篇小说也没有大小限制——文件会被切成多个块依次翻译,同时保留上下文连贯性。分块逻辑位于 src/core/chunking/,EPUB 的标签级排版保留则实现在 src/core/epub/tag_preservation.py。
⏯️ 断点续传:AI书籍翻译中断后如何继续
翻译一本厚书往往需要几小时,中途断电、断网、模型限流都可能在所难免。TBL 的检查点系统会自动保存进度,重新打开即可从上次中断的块继续,已完成的块不会重复消耗 Token。
更贴心的是:暂停任务后,你可以直接中途更换模型再继续翻译——比如先用免费本地模型跑了一半,不满意就切到云端更强模型完成剩下的部分。
图中展示了"Paused Translations"面板:一条 EPUB 任务已翻译 5/22 块(22%),点击Resume可断点续传,右下角Change model支持更换翻译模型。
🧠 九大 AI 提供方:免费本地模型到云端 API 任选
TBL 不绑定任何一家大模型,通过 src/core/llm/ 下的适配层统一接入:
| 提供方 | 类型 | 适合场景 |
|---|---|---|
| Ollama | 本地免费 | 隐私敏感、零成本,数据不出本机 |
| OpenAI 兼容 | 本地/自建 | llama.cpp、LM Studio、vLLM 等自建服务 |
| OpenRouter | 云端聚合 | 一个 Key 调用 200+ 模型 |
| DeepSeek / Gemini / Mistral / OpenAI / Poe / NVIDIA NIM | 云端 | 追求最高翻译质量 |
各家的 API Key 申请入口和配置细节见 docs/PROVIDERS.md。命令行用户可以这样指定云端模型:
python translate.py -i book.epub -sl English -tl Chinese --provider deepseek -m deepseek-v4-pro完整参数(并行数、TTS、文本清洗、润色二遍等)参考 docs/CLI.md。
📖 术语表 + 风格预设:让整本书翻译风格统一
长篇翻译最大的坑是前后不一致:同一角色名在第一章叫"李凡青",第五章变成"李凡 Qing"。TBL 内置两大解法:
- 术语表(Glossary):把人名、地名、组织名固定成"源词 → 译名"规则,自动注入到每个相关分块的提示词里,还可以为角色指定性别以保证代词正确。支持 LLM 自动抽取。详见 docs/GLOSSARY.md
- 风格预设(Style Preset):从 1~5 本样本书中自动提取文风(语域、节奏、意象、对话习惯),注入每一块翻译,避免"第一章平淡、第十章华丽"的风格漂移。详见 docs/STYLE_EXTRACTION.md
如果两个都没有准备,把界面里选Auto,应用会在翻译开始前自动从文档本身推导术语表和风格,无需手动维护。
⚡ 进阶玩法:并行翻译、多 Key 轮换、完成通知
- 并行翻译:云端提供方可以设置
PARALLEL_TRANSLATIONS或多个--parallel N同时翻多个块,速度成倍提升(本地 Ollama 自动保持串行) - 多 Key 自动轮换:一个变量填多个逗号分隔的 Key,触发限流时自动切换,把多个免费额度串起来用,见 docs/API_KEY_ROTATION.md
- 完成推送:长任务结束后推送到手机(ntfy)、Discord、Slack 或任意 Webhook,见 docs/NOTIFICATIONS.md
- 质量基准测试:项目内置 40+ 语言的翻译质量评测体系,帮你挑出最适合目标语言的模型,见 docs/BENCHMARK.md
- Docker 部署:一条命令容器化运行,见 docs/DOCKER.md
🩹 常见问题快速排查
| 问题 | 解决办法 |
|---|---|
| 连不上 Ollama | 确认 Ollama 在运行,执行ollama list查看模型是否已下载 |
| 模型找不到 | 用ollama pull 模型名先下载模型 |
| 提示"上下文超长" | 调小MAX_TOKENS_PER_CHUNK(默认 450)或换更大上下文窗口的模型 |
| 内存不足(OOM) | 换 8B 小模型、关闭其他程序,或改用云端提供方 |
更多情况(EPUB 标签丢失、SRT 错位、检查点异常等)都有专门章节,参考 docs/TROUBLESHOOTING.md。
✨ 总结
TranslateBooksWithLLMs 把"整本书级"的 AI 翻译做到了开箱即用:五种格式全覆盖、排版无损保留、无大小限制、断点续传还能中途换模型,外加术语表、风格预设和九大模型提供方。配合 AGPL-3.0 开源许可和 README.md 中的完整说明,无论是白嫖本地 Ollama 还是调用云端最强模型,它都是目前最省心的开源书籍翻译方案。
【免费下载链接】TranslateBooksWithLLMsTranslate full-length books and documents with Ollama, OpenAI-compatible, Gemini, Mistral, DeepSeek, Poe or OpenRouter. Preserves formatting. Resumes where you left off. No file size limits.项目地址: https://gitcode.com/gh_mirrors/tr/TranslateBooksWithLLMs
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考