阅读文本 / Reading text
本文使用合成样本演示处理方法。代码已通过隔离环境中的示例检查;这不代表对所有真实文件或产品效果的保证。处理重要文件前,请保留原件,并按文中的边界与验收项复核。
交付压缩包里只有几个译文文件,同事不知道它们对应哪个原件、目标语言是什么、哪些页需要复核。增加一份简短机器可读清单,往往比在聊天窗口补发十条说明更可靠。
清单记录事实,不写模糊评价
“质量很好”不能用于自动验收;输入输出摘要、目标语言、任务版本和未解决问题可以。将机器检查与人工审校分开记录,避免一个笼统的
passed: true
被误解为所有内容都正确。
创建并复核合成交付清单
import hashlib
import json
def sha(raw):
return hashlib.sha256(raw).hexdigest()
source = b"synthetic source"
output = b"synthetic translated output"
manifest = {
"manifest_version": 1,
"job_id": "demo-job-001",
"source_sha256": sha(source),
"output_sha256": sha(output),
"target_language": "en",
"policy_version": "demo-v1",
"checks": {"file_present": True, "human_review": "pending"},
"open_issues": ["Review terminology on the example cover"]
}
encoded = json.dumps(manifest, ensure_ascii=False, sort_keys=True)
restored = json.loads(encoded)
assert restored["source_sha256"] == sha(source)
assert restored["output_sha256"] == sha(output)
assert restored["checks"]["human_review"] == "pending"
assert restored["output_sha256"] != sha(output + b"changed")
assert not {"token", "password", "api_key"} & restored.keys()
最后一个断言只检查几个顶层键,不是通用秘密扫描器。真正交付前应使用明确字段白名单,审核嵌套结构与文本备注,不要把完整请求对象原样放入清单。
清单怎样服务接收者
字段
接收者可以做什么
不应推断
输出摘要
发现文件被改动
文件语义一定正确
目标语言
路由给合适审校者
所有段落都已翻译
规则版本
重现处理条件
新旧版本结果必相同
未解决事项
聚焦检查位置
没列出就代表没有问题
清单与文件应一起版本化
如果译稿更新了,清单也必须重新生成。把新版文件和旧版摘要放在一起,会让正确的文件看起来像被篡改。可以让一次交付使用不可变目录或版本号,避免接收者下载到新旧混合的一组文件。
让翻译结果更容易接手
从
OmniDoc(产品入口)
下载译稿后,团队可以在自己的交付层生成这份清单,记录源文件、语言与审校状态。它不要求平台采用某种内部技术,只是在文件之外补齐协作需要的上下文,让成果更容易传递和复核。
参考:
Python json
。
- 1 -
更新于 2026-10-08