背景
在开发 go-tour-i18n 多语言翻译项目时,最初希望尽可能减少人工操作,因此设计了一种较为自动化的流程。
原计划:
Plaintext
GitHub
↓
ChatGPT 读取项目文件
↓
生成翻译结果
↓
写入 GitHub
↓
本地执行 validation其中一个设想是:
ChatGPT 完成翻译后,直接将生成的翻译结果写入 GitHub 仓库。
实际验证后的问题
经过实际使用后发现:
- GitHub 连接本身存在,可以读取仓库文件;
- 但是当前这个 ChatGPT 会话实例不能稳定完成仓库写入流程(尤其是生成大量文件、提交 commit、push 这种完整工作流)。
因此继续要求 ChatGPT 直接写入 GitHub,会导致翻译完成后的交付环节出现不稳定。

调整后的职责划分
经过调整后,新的流程如下:
Plaintext
ChatGPT:
读取 GitHub inputs
↓
生成 raw-responses
↓
输出压缩包 artifact
本地环境:
解压 raw-responses
↓
retranslation import
↓
process
↓
candidate
↓
automatic validation
↓
Quality Check
↓
Final Review
↓
review evidence
↓
promotion
↓
git commit
↓
git push新的设计并不是取消自动化,而是重新划分职责:
- ChatGPT 负责翻译内容生成;
- 本地环境负责确定性的文件写入和 Git 操作。
为什么选择压缩包 artifact
如果直接复制 ChatGPT 输出:
Plaintext
ChatGPT 输出文本
↓
手动复制
↓
保存文件容易出现:
- 长文本复制遗漏;
- 特殊字符变化;
present结构破坏。
因此改为:
Plaintext
ChatGPT
↓
raw-responses.zip
↓
本地导入保持完整文件结构。
新增 retranslation import
为了支持新的交付方式,go-tour-i18n 增加了:
Plaintext
retranslation import用于导入 ChatGPT 生成的 raw response artifact。
例如:
Bash
go run -mod=readonly ./cmd/tour-i18n retranslation import \
--locale ja-JP \
--batch-id chatgpt-ja-JP-007 \
--archive ~/下载/chatgpt-ja-JP-007-raw-responses.zip执行结果:

导入后继续执行标准流程
artifact 导入后,不改变原有翻译流程。
继续执行:
Bash
go run -mod=readonly ./cmd/tour-i18n retranslation process \
--locale ja-JP \
--batch-id chatgpt-ja-JP-007流程:
Plaintext
raw-responses
↓
restore
↓
candidate
↓
automatic validation实际执行结果:

retry 与质量流程保持不变
如果 validation 失败:
Plaintext
validation_failed
↓
retry
↓
重新生成 candidate
↓
重新 validation不会绕过已有质量控制流程。
最终仍然:
Plaintext
automatic validation
↓
Final Review
↓
review evidence
↓
promotion最终流程总结
经过调整后:
Plaintext
ChatGPT
读取 GitHub inputs
生成 raw-responses artifact
本地环境
导入 artifact
执行 process
执行 validation
执行 review
执行 Git 操作完整流程:

总结
这次调整并不是降低自动化程度,而是让 AI 与工程环境承担更适合自己的职责。
AI 更适合:
- 阅读上下文;
- 翻译;
- 分析;
- 生成内容。
而文件写入、Git 提交、发布流程,则交由稳定环境执行。
对于长期维护的多语言项目,这种职责划分更容易保证流程稳定性。
A Tour of Go 多语言翻译项目
本系列完整记录 A Tour of Go 多语言翻译项目从架构设计、整页翻译、结构保护、自动校验,到生产发布与后续维护的实际开发过程。
项目入口:
✅ 在线学习:A Tour of Go 简体中文版
✅ 项目源码:GitHub:shuijingwan/go-tour-i18n
当前第一阶段已完成简体中文版本。项目属于非官方社区多语言翻译项目,与 Go 官方无隶属或授权关系。
