术语表让本地化引擎能够精确控制特定术语——既可以强制使用指定译法,也可以完全禁止翻译。术语表规则优先于模型自身判断,因此引擎会在每一次请求中一致地执行这些规则。
工作原理#
每条术语表条目都归属于某个本地化引擎,并按源区域设置与目标区域设置的组合进行匹配(或使用 * 表示任意区域设置)。当引擎处理翻译请求时,会通过语义搜索检索相关术语表条目——依据输入文本的含义与已存储术语进行匹配,而不只是做精确字符串比对。
| 字段 | 说明 |
|---|---|
| 源区域设置 | 源文本的区域设置,或使用 * 表示任意源语言 |
| 目标区域设置 | 目标文本的区域设置,或使用 * 表示任意目标语言 |
| 源文本 | 源语言中的术语 |
| 目标文本 | 指定使用的译文(或对于不可翻译项,使用相同术语) |
| 类型 | custom_translation 或 non_translatable |
| 提示 | 用于消除歧义的可选上下文(例如:"名词,产品功能") |
术语表类型#
自定义翻译#
为某个术语强制指定译法。引擎会始终使用你提供的翻译,而不是模型自己的结果。
| 源文本 | 目标文本 | 源区域设置 | 目标区域设置 |
|---|---|---|---|
| Deploy | Bereitstellen | en | de |
| 911 | 112 | en | de |
| workspace | espace de travail | en | fr |
以下情况适合使用自定义翻译:
- 已有固定译法的产品术语
- 需要文化适配的内容(如紧急电话号码、计量单位)
- 模型总是选错近义词的术语
不可翻译项#
阻止某个术语被翻译。引擎会原样保留源文本。
| 源文本 | 目标文本 | 类型 |
|---|---|---|
| Lingo.dev | Lingo.dev | non_translatable |
| OAuth | OAuth | non_translatable |
| GraphQL | GraphQL | non_translatable |
以下情况适合使用不可翻译项:
- 品牌名和产品名
- 技术协议和标准
- 应保留为源语言的专有名词
语义匹配#
术语表条目按语义匹配,而不是按字符串逐字比对。当引擎收到翻译请求时,会为输入文本生成嵌入向量,并查找源术语在语义上相近的术语表条目。
这意味着,为“Deploy”创建的术语表条目,也能匹配“Deploying”“deployment”以及“deploy your application”——无需为每种变体分别新增条目。
提示字段
对于一词多义的术语,可以使用提示字段来消除歧义。例如,术语表中“bank”配合提示“financial institution”时,就不会匹配输入文本中的“river bank”。
通配区域设置#
将源区域设置或目标区域设置设为 *,即可让某条术语表条目应用到所有区域设置组合中。
常见模式:
| 源文本 | 源区域设置 | 目标区域设置 | 使用场景 |
|---|---|---|---|
| Lingo.dev | * | * | 在任何语言中都不翻译这个品牌名 |
| API | en | * | 在所有目标区域设置中保留“API”不翻译 |
| Deploy | en | de | 为这个英文术语指定特定的德语译法 |
通配条目和特定区域设置条目会叠加生效——彼此不会相互覆盖。
区域设置匹配#
术语表条目会在地区变体之间进行匹配,而不只是匹配完全相同的区域设置代码。de 条目可应用于 de-DE;de-DE 条目可应用于不带地区的 de 请求。像 de-DE 和 de-AT 这样的同级变体则绝不会共享条目。若存在多个匹配项,将以 CLDR 默认地区为准。品牌语气、说明和模型配置也遵循同样的规则。完整行为说明(包括适用于自定义翻译的书写系统安全规则),请参阅 Locale Resolution。
术语表 vs. 说明 vs. 品牌语气#
它们在引擎配置中各自承担不同角色:
| 术语表 | 说明 | 品牌语气 | |
|---|---|---|---|
| 控制内容 | 单个术语 | 语言规则 | 整体语气与风格 |
| 粒度 | 按术语 | 按规则 | 按区域设置 |
| 匹配方式 | 语义匹配(按含义) | 区域设置下的全部规则都会生效 | 区域设置下的全部规则都会生效 |
| 优先级 | 最高——覆盖模型判断 | 中等——引导模型 | 最低——提供上下文 |
| 示例 | "Deploy" → "Bereitstellen" | "Abbreviate Straße to Str." | "Use informal du, technical tone" |
规则优先级
在引擎的规则层级中,术语表拥有最高优先级。如果术语表条目与某条说明冲突,始终以术语表为准。设计说明时,应与术语表互补,而不是重复设置。
通过 API 使用术语表#
调用 localize endpoint 时,术语表条目会自动生效。引擎会检索与源区域设置和目标区域设置组合在语义上相关的条目,并将其注入提示中。
无需额外参数——引擎会自动完成检索与注入。
通过 MCP 管理术语表#
如果你使用 Lingo.dev MCP server,AI 编程助手就能直接管理术语表条目:
"Add a glossary entry: translate 'workspace' to 'espace de travail'
for English to French.""Mark 'GraphQL' as non-translatable for all locales."