Transformers 术语约束:指定译名如何配置与验收
品牌名和专业译名必须保留时,应把术语出现与原意准确分开检查。本文提供术语表、配置原型和无约束与有约束生成的对照流程。现有资料仅含官方博客索引,未提供文章正文、当前接口说明或运行记录,因此不把示意配置写成可直接运行的官方代码,也不提供虚构译文…
样本准备与兼容核对
本题要解决的是:产品资料中的指定译名怎样进入生成配置,以及怎样确认它既没有遗漏,也没有改变原文意思。建议先用单句样本建立对照记录,再扩展到整份资料,不要直接把整本术语库设为每句话的必选词。
研究资料中的 Hugging Face 官方博客索引收录了 Guiding Text Generation with Constrained Beam Search in Transformers,条目日期为 2022 年 3 月 11 日。索引可以确认文章存在,不能确认当前版本仍采用相同接口,也不能证明某个翻译模型兼容。本文以下表格、样本和流程均为原创工作模板;具体编码与生成调用须在补齐官方正文及对应版本说明后实施。
- 固定一份获准使用的产品原文,记录文件版本、源语言、目标语言与句子编号。
- 由技术编辑确认每个术语的目标写法、适用产品和允许变体,区分必须原样保留的品牌名与可随语法变化的普通名词。
- 为每句挑出确实对应原文概念的术语;原文没有相应概念的词,不加入该句必选集合。
- 记录现有翻译工具的依赖版本、模型版本、分词器版本和推理后端,保留原有无约束流程作为回退。
先在官方博客索引中按完整英文标题定位文章,再核对与本地安装版本对应的生成说明和模型说明。不要把历史文章的示例、远程推理服务的接口和本地模型方法视为同一套能力。
| 核对对象 | 需要取得的依据 | 未确认时的处理 |
|---|---|---|
| 翻译模型 | 支持的语言方向、输入格式与生成入口 | 先验证原有翻译路径,不增加词汇约束 |
| 解码实现 | 当前版本是否提供 Constrained Beam Search,以及启用方式 | 记录为兼容性阻塞,不猜测替代参数 |
| 约束字段 | force_words_ids 是否适用于当前入口、所需数据结构及限制 | 不将业务术语数组直接传入接口 |
| 搜索设置 | 束数量、采样设置、输出长度与其他生成规则的兼容条件 | 按对应版本说明建立最小配置,不给出通用数值配方 |
| 分词流程 | 目标语言编码方式、特殊标记及词首空格的处理规则 | 先登记实际编码结果,暂停约束生成 |
这一阶段的完成标志不是“字段可以传进去”,而是能说明当前入口如何解释约束,并留下对应版本的依据。若服务未暴露所需解码能力,不能仅靠增加同名请求字段认定约束已经启用。
目标译名与分词对照
下面使用虚构品牌 AsterDrive 的中译英产品句作为设计样本,不代表任何模型输出。原文为:AsterDrive 支持增量备份,但不支持离线恢复。编辑指定目标写法为 AsterDrive、incremental backup 和 offline recovery。最后一个术语处于否定语境,复核时必须同时保留“不支持”。
| 原文对象 | 指定目标写法 | 分词片段 | 词元 ID 序列 | 解码回看 |
|---|---|---|---|---|
| 品牌名 | AsterDrive | 待当前分词器输出 | 待记录 | 核对大小写及完整拼写 |
| 增量备份 | incremental backup | 待目标语言编码输出 | 待记录 | 核对词间空格与短语完整性 |
| 离线恢复 | offline recovery | 待目标语言编码输出 | 待记录 | 核对短语,并另查否定关系 |
- 使用与模型匹配的分词器,依其目标语言编码规则分别编码各个目标短语,不凭单词数推算词元数。
- 把片段、ID 序列、分词器版本和编码选项填入表中,不填写猜测的整数。
- 按该版本约束接口的要求检查特殊标记、空序列和未知词情况;无法解释的结果先返工。
- 将编码序列解码回看,对照品牌拼写、大小写、空格和标点。若独立短语与句中形式不同,查清上下文编码规则后再选择约束表示。
- 保存表格版本。更换模型或分词器后重新生成,不跨模型复用旧 ID。
表中的待记录项意味着编码尚未完成,而不是已经得到有效分词。词元层检查与最终可见文字检查应分别记录,不能只凭其中一项判定译文合格。
配置原型与双组生成
下面是应用侧配置设计,不是 Transformers 官方参数结构,也不是可执行请求。所有带待核对含义的值都必须在接入时替换;其中约束参数名也只是本题需要核对的候选项,不能据此认定当前入口支持。
{
"sample_id": "product-001",
"direction": "zh-to-en",
"source": "AsterDrive 支持增量备份,但不支持离线恢复。",
"required_terms": [
"AsterDrive",
"incremental backup",
"offline recovery"
],
"shared_generation_settings": "TO_BE_VERIFIED",
"baseline": {
"lexical_constraints": "disabled"
},
"constrained": {
"decoding_method": "Constrained Beam Search",
"candidate_argument_to_verify": "force_words_ids",
"encoded_constraints": "TO_BE_BUILT_FROM_TOKEN_TABLE"
}
}- 先完成上一节兼容核对,再由适配代码将业务术语表转换成当前接口要求的约束表示。
- 运行不附加词汇约束的基线组,保存原始输出、最终译文、完整配置和完成状态。
- 复制同一输入及可共享的生成设置,仅启用已经核对的词汇约束路径,生成第二组。
- 若受约束方法要求改变原有解码模式,应为基线设置可比的搜索条件;无法保持一致的设置逐项登记,避免把多项变化都归因于约束。
- 保留失败状态与错误信息,不用手动补词后的译文替代原始生成结果。
实验记录的组织方式可参考写作实验记录与模型参数对比,本题需额外保存术语表及编码版本,才能追查某个约束究竟来自哪份配置。
术语命中与语义比较
下表是待运行的实验记录模板,不包含模型生成结论。两组译文必须由同一批样本生成后填入,不能预写“无约束漏词、有约束全部正确”。基线也可能已经采用指定写法,此时仍应记录,而不是人为制造差异。
| 样本 | 无约束译文 | 有约束译文 | 术语检查 | 语义检查 |
|---|---|---|---|---|
| product-001 | 待生成并保留原始结果 | 待生成并保留原始结果 | 分别登记三个目标写法是否出现 | 备份为支持,离线恢复为不支持 |
| 同产品的无术语句 | 待生成 | 按该句适用集合处理 | 不得误套其他句的必选集合 | 检查是否新增原文没有的功能 |
为了说明人工验收规则,可以另设一条编辑参考句:AsterDrive supports incremental backup but does not support offline recovery. 这只是针对虚构原文编写的语义参考,不是任何解码方法的输出,也不要求模型逐字复现整句。
若候选句变成 AsterDrive supports incremental backup and offline recovery,三个指定写法虽然都出现,但“不支持”的关系已经丢失,应判为语义失败。若译文只在句尾另列术语清单,也不能据此认定完成了正文翻译。
- 术语维度:逐项记录命中、遗漏、拼写变体及出现位置;匹配前先约定大小写、空格和词形规则。
- 语义维度:逐项对照对象、动作、否定、条件、数字与单位,检查术语是否对应正确概念。
- 可读性维度:检查重复短语、句尾硬插、断句异常及前后术语写法冲突。
- 实验维度:记录失败样本和实际耗时;没有运行记录时,不填写命中率、速度变化或质量提升数值。
故障排查与修正
以下是常见故障的排查假设与修正顺序,不是本次运行发现的故障。指定词没有出现时,可能原因是约束路径未生效、编码不匹配或生成未完整结束;对应修正动作是核对实际调用入口、传入配置、编码表与完成状态,再用一条句子和一个术语复测。每次排错都先保留失败样本,最小样本仍失败时暂停批量处理。
| 常见故障 | 可能原因 | 修正动作 |
|---|---|---|
| 指定词没有出现 | 约束路径未生效、编码不匹配,或生成未完整结束 | 核对实际调用入口、传入配置、编码表与完成状态;最小样本仍失败时暂停批量处理 |
| 品牌拼写或空格不符 | 术语规范不统一,或编码与输出处理规则不一致 | 固定目标写法,比较编码回看、原始译文和后处理译文,定位发生变化的位置 |
| 术语被硬插到句尾 | 该词不适用于此句,或生成配置与约束组合需要复核 | 先删除不适用的业务约束,再按已核对说明检查长度和搜索设置,禁止靠附加词表通过验收 |
| 术语全有但原意错误 | 验收只做字符串匹配,漏查否定、条件与对象关系 | 逐句人工对照原文,标记失真位置并返译;术语命中不得覆盖语义失败 |
| 报参数或模式不兼容 | 历史示例与安装版本、模型或服务能力不一致 | 回到对应版本说明重新核对入口;无法确认支持时保留基线并转人工处理 |
| 约束后重复或读起来生硬 | 多个术语要求重叠、互相冲突,或目标写法不适合该语境 | 由编辑复核短语范围与变体规则,减少为单句附加的不必要要求,再生成对照 |
发布前验收标准
- 来源检查:已取得官方文章正文及对应版本说明;仅有索引时,不对外宣称已经核对可运行接口。
- 环境检查:模型、分词器、依赖与推理后端版本可追溯,约束路径的兼容依据完整。
- 分词检查:术语对照表中的片段、ID 与回看结果均已由当前环境产生,没有待记录项。
- 对照检查:两组原始译文和配置均已归档,无法保持一致的实验条件已注明。
- 漏词检查:该句所有适用的必选写法均按约定规则检查,未把提示词或附加词表中的出现计为正文命中。
- 强行插词检查:没有原文未涉及的功能词、句尾堆词或明显重复,术语在句中承担正确含义。
- 语义失真检查:否定、条件、主体、数量和单位均与原文一致,由技术编辑确认后才允许发布。
- 回退检查:任何必选词遗漏、语义失败或兼容性不明的样本进入人工队列,不自动作为合格译文交付。
当前资料能支持的下一步,是先补齐官方正文和版本兼容依据,再完成分词表与双组生成。上线决定应建立在已归档的译文和复核记录上,而不是建立在“配置里写了必选词”这一点上。
下一步
把这篇的方法练一遍
提示词和步骤可以带到创作里直接试做一版。