返回博客

Reliability · 2026年8月19日

在 AI 翻译中保护占位符、链接和标识符

当被改动的令牌可能破坏页面时,仅有流畅的输出是不够的。翻译工作流必须在生成开始前保护功能性内容。

在 AI 翻译中保护占位符、链接和标识符

翻译中有些最重要的部分,根本不应该被翻译。

变量、URL、条目 ID、资源引用、代码示例和格式标记承载的是功能而不是文案。模型可以生成一句听起来很自然的话,同时悄悄改动其中一个元素,从而破坏其周围的使用体验。

可靠的 AI 翻译始于将语言与结构分离。

在提示词之前识别受保护内容

不要依赖诸如“保留占位符”这样的笼统指令。首先要识别出必须原样保留的确切令牌和节点。

受保护内容通常包括:

  • 插值变量,例如 {first_name}{{ total }}
  • ICU 消息语法和复数选择器
  • URL、电子邮件地址和路由片段
  • HTML 属性和 markdown 链接目标
  • Contentful 条目和资源引用
  • 行内代码、围栏代码块和 API 值
  • 被标记为不可翻译的产品名称

内容模型和字段类型应有助于确定保护规则。富文本文档需要不同于纯文本标题的结构化处理方式。

用稳定令牌替换高风险值

对于纯字符串,一种稳健的方法是在翻译前提取受保护的值,并用明确无歧义的临时令牌替换它们。

模型能够看到周围的语言,但无法意外改写目标 URL 或标识符。生成完成后,工作流会从服务器端映射中恢复原始值。

令牌应当是唯一的、不易与自然语言混淆的,并且在恢复前经过验证。绝不要相信模型会自行正确复现映射关系。

将富文本作为结构进行翻译

将富文本树展平成 markdown 或 HTML 可能会丢失重要差异。

文本节点是可翻译的。链接、嵌入条目、节点类型和标记属于结构。遍历文档树,翻译符合条件的文本叶子节点,并在保持引用不变的情况下重建原始层级结构。

这也能改进审校。编辑人员可以比较两个语言环境中相同的结构,而不是审查一个序列化后的近似版本,因为后者可能掩盖缺失或重排的节点。

在保存之前验证输出

保护需要形成闭环。

翻译完成后,要验证每个预期令牌是否都准确出现在格式允许的位置,并确认没有引入未知令牌。对于结构化格式,应进行解析,而不是用宽松的字符串比较来检查。

有用的失败信息应该是具体的:

  • 缺少占位符 {total}
  • 字段 ctaBody 中的链接目标被更改
  • 语言环境 de 中的 ICU 语法无效
  • 意外的富文本节点数量

在这个边界拒绝格式错误的输出,比让问题在渲染期间暴露出来,或者更糟的是在发布后才出现,要安全得多。

在审校中显示受保护元素

审校人员应该能够识别功能性内容,而不被其分散注意力。

对占位符和受保护术语使用低调的样式。让链接文本可编辑,同时保持目标地址可见并单独受控。对于嵌入内容,在不可变 ID 旁显示人类可读的标签。

如果审校人员确实需要有意更改目标市场的 URL,应将其视为一个独立的本地化字段决策,而不是翻译文案时产生的意外副作用。

使用对抗性示例进行测试

仅有理想路径是不够的。应包含带有重复变量、相邻标点、嵌套 markdown、复数形式、从右到左文本,以及看起来像普通单词的占位符的字符串。

在被信任用于生产内容之前,保护逻辑应证明它能够无损地往返处理这些情况。

要点总结

翻译质量也包括功能完整性。

提取受保护内容,只翻译符合条件的语言,保留富文本结构,验证结果,并在审校期间清晰展示功能性元素。只有在页面发布后仍然能够正常工作时,一句流畅的话才有价值。