Frozen chapter context
每一章先摘要,再并发翻译。
先稳定上下文,再放开吞吐,而不是边跑边漂移。
What Changes
`progress.json` 记录阶段和进度。任务中断、模型波动、参数回调之后,工作区能继续往前跑,而不是整本书从头开始。
通过 `--reference-epub` 读取上一册精翻结果,把系列术语、角色称呼和文风提示提炼出来,减轻每一册重新校名词的负担。
批次翻译后进入结构化校对,低于阈值的结果带反馈重翻。质量控制是流水线的一部分,而不是最后手工补锅。
输出不是单纯把正文拼回纯文本。原书 XHTML、目录和资源会尽量延续,减少格式层面的返工。
Pipeline
先稳上下文,再放并发;先过质量门槛,再回写 EPUB。这个顺序决定了它更像一个翻译工作区,而不是一条临时脚本。
可选读取前作 EPUB,整理系列译名、常用表达和风格提示。
按 spine 顺序为章节建立上下文摘要,锁住人物关系和设定。
每章切分成批次,在冻结上下文上并发翻译,提高吞吐而不乱序。
批次级校对、打分、重试,低分结果带着反馈再次进入翻译。
保留原始结构并回写译文,最终产出可分发的 EPUB 文件。
Toolbox
Core translator
本地 Web UI 和 CLI 共享同一套流水线。选书、上传、填模型、看日志、下载结果都在一个页面里完成,适合日常翻书和参数试跑。
Companion evaluator
对已有译本做对比,也能串起“跑翻译 -> 抽样 -> 聚合指标 -> 出报告”的完整流程。它关注术语一致性、遗漏、结构保留和人工修订成本。
Start Here
官网本身是一个零构建依赖的静态站,适合直接托管到 Cloudflare Pages。项目运行时仍然留在你自己的本地 Python 环境里。
Run the studio
uv venv .venv
uv pip install --python .venv/bin/python -r requirements.txt
uv run --python .venv/bin/python webui.py
默认地址是 `http://127.0.0.1:7860`。更适合“反复选书、改参数、看日志、下载结果”的日常流程。
Run the pipeline
uv run --python .venv/bin/python main.py \
--input testBook/yourbook.epub \
--reference-epub /path/to/previous-volume.zh.epub \
--source-lang 日语 \
--target-lang 中文 \
--provider openai-compatible \
--model qwen-max
需要精确控制 `workers`、分阶段模型或输出路径时,CLI 更直接。
Measure the result
python3 -m venv .venv
.venv/bin/python -m pip install -e .
.venv/bin/python compare_existing.py \
--source-epub /path/to/source.epub \
--translation ours:"Our translator":/path/to/our.epub \
--translation baseline:"Baseline":/path/to/baseline.epub
当你需要回答“新模型更好吗”而不是“感觉还行吗”时,评估器是后半段的证据层。
Cloudflare Ready
`website/` 目录不依赖构建工具,也不绑定任何 Python 运行时。把它直接部署到 Cloudflare Pages,就能把域名指向 `epub.tsuyaku.cyou`。