142 lines
7.9 KiB
Markdown
142 lines
7.9 KiB
Markdown
# 轻小说翻译长期项目工作流
|
||
|
||
本项目用于持续推进日语轻小说的简中翻译、复审、润色与 EPUB 交付。开始任何任务前,先阅读本文件,再读取 `rules/translation_rules.md`、当前系列的 `series-style.md` 和正式术语表。
|
||
|
||
## 必读顺序
|
||
|
||
1. `rules/translation_rules.md`
|
||
2. 当前系列目录下的 `series-style.md`
|
||
3. 当前系列目录下的 `mingcibiao.json`
|
||
4. 当前卷目录下与任务阶段相关的文件
|
||
|
||
如果任务是新卷启动,继续读取 `templates/new_volume_start_template.md`。如果任务是封装交付,继续读取 `epub_delivery/epub_delivery_recipe.md`。
|
||
|
||
## 项目结构
|
||
|
||
标准结构如下:
|
||
|
||
```text
|
||
<project-root>
|
||
<series-folder>\
|
||
mingcibiao.json
|
||
mingcibiao.ai.json
|
||
mingcibiao.candidates.json
|
||
series-style.md
|
||
<novel-folder>\
|
||
text\
|
||
preprocess_text\
|
||
trans_text\
|
||
final_text\
|
||
deliverables\
|
||
```
|
||
|
||
## 长期工作流
|
||
|
||
1. 导入源文件,保留段落编号、div 结构、ruby 信息和必要标签。
|
||
2. 扫描正文与 ruby,整理候选词到 `mingcibiao.candidates.json`。
|
||
3. 等用户确认后,将候选词合并进 `mingcibiao.json`。
|
||
4. 锁词后进行正文首译,首译写入 `trans_text/chunks`。
|
||
5. 逐段复审,复审写入 `trans_text/reviewed_chunks`。
|
||
6. 复审完成后恢复 HTML,写入 `final_text`。
|
||
7. 交付前检查术语、残留日文、ruby、段落覆盖率和 HTML 结构。
|
||
8. 需要 EPUB 时,使用 `epub_delivery/build_epub_variants.py` 生成纯译版和/或中日双语版。
|
||
|
||
## 默认多 Agent 协作分工
|
||
|
||
除非用户明确指定单线程处理,长卷、跨文件、翻译复审或 EPUB 交付任务默认按多 Agent 流水线协作:
|
||
|
||
- 统筹 Agent:读取本文件、`translation_rules.md`、`series-style.md`、`mingcibiao.json`,确认当前阶段、输入文件、输出目录、风险点与暂停条件。
|
||
- 术语 Agent:扫描原文、ruby、标题、技能名、人名地名与高频特殊表达,输出候选术语;只提出候选,不擅自写入正式 `mingcibiao.json`。
|
||
- 首译 Agent:只处理明确分配的 chunk 范围,严格使用已锁定术语、系列风格和段落编号。
|
||
- 复审 Agent:逐段对照源文、首译、术语表和风格文件,修正误译、漏译、日式语序、角色口吻漂移。
|
||
- 格式恢复 Agent:恢复 HTML,保留 div、ruby、段落编号、必要标签和图片引用。
|
||
- QA Agent:执行术语命中、残留日文、ruby、段落覆盖率、HTML 结构、空段落和交付文件检查;只读审查时只给报告,不改文件。
|
||
- 交付 Agent:仅在 QA 通过或用户确认风险后,生成纯译版和/或中日双语版。
|
||
|
||
并行 Agent 必须写入各自负责的目录或报告,不跨范围修改。发现正式术语、结构、交付形式或规则冲突时,暂停并交给统筹 Agent 汇总后请用户确认。
|
||
|
||
审校器功能开发或维护任务应先读取 `tools/epub_review_editor/MAINTENANCE.md`,按工程维护、回归测试和版本规则处理,并默认采用“后端/API、前端交互、文档/工作流、QA 验收”的多 Agent 协作,不套用正文翻译流水线。
|
||
|
||
## 翻译与润色原则
|
||
|
||
- 输出必须是自然、流畅的简体中文轻小说文风。
|
||
- 以意义优先,再调整成中文语序,不要贴着日语句序硬译。
|
||
- 对话要符合角色性格,不要把所有角色写成同一种口吻。
|
||
- 术语、人名、地名、组织名优先服从 `mingcibiao.json`。
|
||
- 如果发现会影响一致性的新术语,先记录为候选词,不要擅自发明多个译名。
|
||
- 保留 `[Pxxxx]`、`<lk>...</lk>`、必要的 ruby 和 HTML 标签。
|
||
- 不合并、不拆分原有段落,除非用户明确要求重排结构。
|
||
- 复审必须逐段覆盖,不可以只抽查。
|
||
|
||
## 提示词第一性原理
|
||
|
||
- 输入必须完整但克制:源文、必要上下文、命中术语、系列风格和输出格式要求同时给出;单段重翻不塞整本术语表。
|
||
- 约束必须显式:不要只写“遵守术语表”,必须把本段实际命中的术语列入提示词;未命中的术语不得进入提示。
|
||
- 输出必须可验收:要求保持段落数量、段落编号、HTML/ruby/标签结构,不输出解释、分析或额外段落。
|
||
- 意义优先于字面:先理解语义、人物关系、语气和叙述功能,再改写成自然简中轻小说文风。
|
||
- 复审不同于重译:复审优先保留首译中正确内容,只修误译、漏译、术语、语序、口吻和格式问题。
|
||
- 不让模型自行定规则:遇到术语冲突、角色称谓冲突、ruby 含义不明、结构缺损时,输出问题或候选,不自行发明长期规则。
|
||
|
||
## Ruby 与格式
|
||
|
||
- 纯读音、无额外信息的 ruby,通常直接译成普通中文。
|
||
- 隐含义、别名、外语读音、技能名、称号、世界观术语,应按需要保留为真实 ruby。
|
||
- 不要把有意义的 ruby 改成括号。
|
||
- 不要删除 `<rt>` 后再用猜测补回。
|
||
- 双语版中,日文保留为灰色,中文译文紧随其后。
|
||
|
||
## 常用用户指令
|
||
|
||
- `新卷启动`:按 `templates/new_volume_start_template.md` 检查目录、风格文件和术语表。
|
||
- `开始翻译`:进入正文翻译流程。
|
||
- `继续`:按当前阶段自动推进下一步;没有风险点时不要重复解释整套流程。
|
||
- `生成双语版`:生成中日双语 EPUB。
|
||
- `生成翻译版`:生成纯译文 EPUB。
|
||
- `终交付封装` 或 `合并为epub交付给我`:默认生成纯译版和中日双语版。
|
||
|
||
## 交付脚本
|
||
|
||
通用封装脚本位于 `epub_delivery/build_epub_variants.py`。常用命令:
|
||
|
||
```powershell
|
||
$env:PYTHONIOENCODING='utf-8'
|
||
$env:SOURCE_EPUB='<源EPUB完整路径>'
|
||
$env:NOVEL_ROOT='<小说工程根目录完整路径>'
|
||
python '<project-root>\epub_delivery\build_epub_variants.py' --mode both
|
||
```
|
||
|
||
可选模式:
|
||
|
||
```powershell
|
||
python '<project-root>\epub_delivery\build_epub_variants.py' --mode translated
|
||
python '<project-root>\epub_delivery\build_epub_variants.py' --mode bilingual
|
||
```
|
||
|
||
## 双语 EPUB 网页审校
|
||
|
||
中日双语 EPUB 生成后,如用户需要网页审校、实时修改译文或标记翻译问题,使用 `tools/epub_review_editor/server.py`:
|
||
|
||
```powershell
|
||
$env:PYTHONIOENCODING='utf-8'
|
||
python '<project-root>\tools\epub_review_editor\server.py' '<中日双语版.epub>' --daemon
|
||
```
|
||
|
||
审校器会生成独立 session,默认写入 `epub_review_sessions\`。重点读取:
|
||
|
||
- `feedback/translation_feedback.jsonl`:结构化逐条反馈记录
|
||
- `feedback/feedback_for_codex.md`:适合直接纳入后续翻译优化的摘要
|
||
- `exports/*_网页审校版_*.epub`:用户导出的修订版 EPUB
|
||
|
||
当用户说“读取我的审校反馈”“根据网页标记优化翻译”或类似指令时,优先读取上述反馈文件,将其中的具体修改、问题类型和长期规则沉淀到当前系列的复审口径、候选术语或风格文件中。正式术语表仍需用户确认后再改。
|
||
|
||
## 决策规则
|
||
|
||
- 如果 `series-style.md` 不存在,先用 `templates/series_style_template.md` 创建,再暂停等待用户填写。
|
||
- 如果 `series-style.md` 为空或明显未完成,先提示用户确认是否继续。
|
||
- 如果用户确认继续,只按已填写部分限定风格,空白部分视为未指定。
|
||
- 名词表、规则冲突、交付形式等会影响全卷一致性的事项,先暂停让用户确认。
|
||
- 用户只说“继续”时,按当前上下文进入下一步,不重新解释流程。
|
||
- 每次完成代码、文档或工作流更新后,先完成必要检查,再将当前仓库同步到 `https://git.diaomin.asia/` 对应远端;如果缺少远端地址、凭据或登录授权,先询问用户,不要静默跳过。
|
||
- 涉及通用工作流、目录结构、术语表格式、验收标准或默认协作方式的变更,必须同步 `rules/translation_rules.md` 与 `README.md`。
|
||
- 涉及网页审校器行为、API、配置、前端交互或 GPT 重翻的变更,必须同步 `tools/epub_review_editor/MAINTENANCE.md` 并按其版本规则发版。
|