1| 1|
想翻译一本英文技术书或者小说,翻一本几百页的英文书,手动复制粘贴到翻译工具,翻完人也废了。
2| 2|
3| 3|
要是遇到 500 页的 PDF,排版乱了不说,前面翻译的人名到后面变成了另一个版本——这种痛苦翻过长文档的人都懂。
4| 4|
5| 5|
后来发现了 translate-book,一个专门干这件事的 AI 工具。
6| 6|
7| 7|
是什么
8| 8|
9| 9|
translate-book 是一个 Claude Code Skill,专门用来翻译整本书(PDF/DOCX/EPUB)。它同时调度 8 个子代理并行翻译,一章翻完自动校验、合并、导出多种格式,还能断点续翻。
10| 10|
11| 11|
作者 deusyu,目前 892 Stars,MIT 协议。
12| 12|
13| 13|
为什么用子代理并行
14| 14|
15| 15|
翻译整本书最头疼的问题:上下文太长。如果让一个 AI 翻译整本书,前面几百页的内容会慢慢被遗忘。翻译到后面,开头出现的人物名字可能已经变了。
16| 16|
17| 17|
translate-book 的做法是把书切成小块(每块约 6000 字符),每个块交给独立的子代理去翻译。8 个同时跑,速度就上来了。
18| 18|
19| 19|
关键的是,每个块翻译的时候能看到前后块的摘要——前一块末尾的 300 字和后一块开头的 300 字。这样他指的是谁、前面说了什么,子代理有个大概了解,不会翻着翻着丢了上下文。
20| 20|
21| 21|
翻译完成后,它会用 SHA-256 哈希校验每个块,确保没有遗漏、没有损坏,然后合并成完整的译文。
22| 22|
23| 23|
术语表:解决翻译不一致
24| 24|
25| 25|
一本书里同一个名字被翻译成不同版本,是机器翻译的老毛病。
26| 26|
27| 27|
translate-book 的做法是先抽样 5 个块(开头、结尾、中间均匀分布),提取专有名词和领域术语,生成一个术语表。翻译的时候把术语表作为硬约束注入每个子代理的 prompt 里,确保全书翻译一致。
28| 28|
29| 29|
术语表是 JSON 格式,可以手动编辑。如果在第一轮翻译后发现某些词需要调整,直接改术语表,重新跑就行——只有受影响的块会被重翻,不会全部从头来。
30| 30|
31| 31|
而且每次子代理翻译完会写一个观察文件,记录它用了哪些术语、遇到了哪些新名词。下一轮翻译时这些观察会被合并回术语表,一个迭代改进的循环。
32| 32|
33| 33|
支持什么输入输出
34| 34|
35| 35|
输入: PDF、DOCX、EPUB 三种格式,Calibre 负责格式转换。
36| 36|
37| 37|
输出: 翻完之后直接生成 HTML(带浮动目录)、Word 文档、EPUB 电子书、PDF 四种格式,全都一步到位。
38| 38|
39| 39|
语言的覆盖范围也够用:中文、英文、日文、韩文、法文、德文、西班牙文都支持,框架是可扩展的。
40| 40|
41| 41|
断点续翻
42| 42|
43| 43|
翻译一本几百页的书可能需要几个小时甚至更久。如果中途断网、电脑重启或者手滑关了终端,不需要从头开始。
44| 44|
45| 45|
translate-book 会记录每个块的翻译状态。重新跑的时候自动跳过已经完成的块,只翻译未完成的。这个机制也适用于术语表调整后的重翻——只有受影响的块被重新处理。
46| 46|
47| 47|
安装和使用
48| 48|
49| 49|
安装很简单,推荐用 npx 一键装:
50| 50|
51| 51|
npx skills add deusyu/translate-book -a claude-code -g
52| 52|
53| 53|
安装后,在 Claude Code 里说一句:
54| 54|
55| 55|
translate /path/to/book.pdf to Chinese
56| 56|
57| 57|
然后它就开干了。速度取决于你的 API 并发和模型的响应时间。
58| 58|
59| 59|
前置依赖:
60| 60|
61| 61| - Claude Code CLI(必须安装并登录)
62| 62| - Calibre(ebook-convert 支持)
63| 63| - Pandoc(格式转换)
64| 64| - Python pypandoc 包
65| 65|
66| 66|
67| 67|
完整流程
68| 68|
69| 69|
Step 1:转换。 Calibre 把 PDF/DOCX/EPUB 转成 HTML,再转 Markdown,切成 6000 字符的块,记录每个块的 SHA-256。
70| 70|
71| 71|
Step 2:术语表构建。 抽样提取专有名词,生成术语表。这一步可以手动微调。
72| 72|
73| 73|
Step 3:并行翻译。 默认 8 个并发子代理,每个块单独翻译,携带术语约束和相邻上下文。失败块自动重试一次。
74| 74|
75| 75|
Step 4:校验合并。 检查每个源块都有对应的翻译输出,哈希匹配,没有空块,然后合并成完整 Markdown。
76| 76|
77| 77|
Step 5:导出。 Pandoc 生成 HTML(带浮动目录),Calibre 生成 DOCX、EPUB、PDF。
78| 78|
79| 79|
全部输出在 `{书名}_temp/` 目录下。
80| 80|
81| 81|
不是没有槽点
82| 82|
83| 83|
首先,它只适合 Claude Code 用户。如果你不用 Claude Code 或者没用过 AI 编程助手,这个工具跟你无关。门槛说高不高,说低不低。
84| 84|
85| 85|
其次,依赖 Calibre 和 Pandoc 这两个传统软件。环境里没装的话还得先配置。Calibre 本身比较重,装完要占不少空间。
86| 86|
87| 87|
第三,质量取决于模型。免费的小模型翻译小说可能还行,翻译技术书的话专有名词和术语的一致性还是需要人工审校。术语表能缓解这个问题,但不能完全消灭。
88| 88|
89| 89|
第四,虽然是并行翻译,但 8 个子代理同时调用 API 意味着 token 消耗比较大。如果用付费模型,翻一本几百页的书可能需要一些预算。
90| 90|
91| 91|
第五,目前只支持英译中和其他几种语言,语言列表虽然可扩展但需要自己加配置。
92| 92|
93| 93|
跟同类比
94| 94|
95| 95|
TranslateBooksWithLLMs(TBL):1970 Stars,更成熟的桌面应用,有 Web 界面,支持本地 Ollama 和云 API。支持 EPUB/SRT/DOCX/TXT,有完善的断点续翻和术语表,还有通知功能(翻译完推送到手机)。如果需要一个开箱即用的翻译工具而不是 Claude Code Skill,TBL 可能是更好的选择。
96| 96|
97| 97|
传统 CAT 工具(Trados、MemoQ):专业但复杂,适合职业翻译。translate-book 的优势是零配置(装好就能用)和 AI 驱动的质量。
98| 98|
99| 99|
如果你已经用 Claude Code 做开发,translate-book 装上就能翻书。如果你想要一个桌面应用、不想碰命令行,TBL 更适合。
100| 100|
101| 101|
一句话总结
102| 102|
103| 103|
translate-book 把「用 AI 翻译整本书」这件事做成了 Claude Code 的一条命令。装好就能用,试试不亏。
104| 104|
105| 105|
GitHub:github.com/deusyu/translate-book
106| 106|
标签:#translate-book #书籍翻译 #ClaudeCode #AI翻译 #并行翻译 #术语表 #断点续翻
107| 107|
108| 108|
109| 109|
110| 110|
111| 111|关注我,每期分享一个帮你省事的强大工具 🛠️
112| 112|
113| 113|