Translate Book
把整本书(PDF/DOCX/EPUB)拆成约 6000 字符的 chunk,用并行子代理(默认 8 并发)翻译成任意语言;通过预建术语表与子代理观察反馈闭环保证全书术语一致,支持断点续译与修改术语后的选择性重译,最终合并构建为 HTML/DOCX/EPUB/PDF 多格式电子书。
仓库:deusyu/translate-book
热度证据:1.1k star,被 VoltAgent 收录
五维评分
热度4/5
质量5/5
创新4/5
易用4/5
文档5/5
优秀点拆解
- 确定性分工:哈希、状态、schema、原子写入全部下沉为 9 个 Python 脚本,LLM 只做命名/性别/别名/冲突裁决等语义判断,README 明确设计原则『Scripts do bookkeeping; LLMs do semantic merge』,重跑漂移与调试成本极低
- 术语一致性闭环:子代理翻译时顺带产出带证据引用的 meta 观察文件,每批后 prepare-merge/apply-merge 事务性合并回 glossary,让后续批次看到更丰富的术语表;合并规则保守(冲突需主代理裁决、不静默覆盖),空 meta 也是合法输出、禁止编造实体
- 断点续译+选择性重译:run_state.py 以 6 条规则逐块决策(缺失/空输出、源哈希漂移、未跟踪、术语选择或哈希变化等),手改术语表后只重译受影响的块,一部书可能只需重译几块而非全书
- 全链路防呆校验:source_fingerprint 用源字节 SHA-256 拒绝复用脏缓存、manifest 逐块哈希校验 1:1 匹配、空输出中止合并而非静默丢内容、页码剥离特意保留年份/章节编号等正文数字
- 结构感知分块:parse_structural_blocks 识别 7 类 Markdown 块,合并时优先在标题边界切、绝不切开表格/代码块;每个子代理只拿到前后邻居各 300 字符只读摘录解决跨块指代,明确禁止翻译或抄入输出
可复用的设计模式
- 脚本记账、LLM 语义:确定性逻辑(哈希/状态/schema/去重/原子写)一律写成 CLI 工具,SKILL.md 只做编排
- 批边界反馈回路:子代理观察带证据合并回全局规范,prepare→主代理裁决→事务性 apply 三段式,让后续批次受益
- 文件即状态的三段式状态机:manifest/glossary/run_state 分层存状态,plan 算差集→record 快照→apply 事务应用,重跑幂等可续
- 只读上下文注入:给子代理剪裁好的邻居摘录而非整块内容,并在提示词显式声明只读边界
适用场景
整本技术书/小说/学术 PDF 的多语言翻译(一条指令触发全流程)术语一致性要求高的专业领域长文档翻译(术语表可手工编辑校正)长任务中断恢复:网络/限流打断后从断点续译,或调整术语后只重译受影响章节需要 HTML/DOCX/EPUB/PDF 多格式交付的书籍本地化流水线
边界与注意:输入质量依赖 Calibre(排版复杂的扫描版 PDF 效果有限),需安装 Calibre+Pandoc+Python 三件套;100 章的书需要 100+ 次子代理调用,成本不低;术语表冷启动期漂移风险最高(作者在 Roadmap 中承认此问题仍待真实数据验证)。
完整拆解分析文档
本页为摘要版,完整精读分析(核心机制、逐条优秀点拆解、写作过程)见本地 Markdown 文档:
analysis/translate-book.md