文档定价研究企业版招聘
招聘中
登录注册预约演示
全部文章

检索增强本地化将 LLM 术语错误减少 17–45%

生产环境中的本地化,处理的往往是彼此割裂的段落和字符串。CI/CD 流水线会与上一版本做 diff,只重译发生变化的部分——可能是一条 UI 文案、一个 tooltip,或是一个被修改过的段落。每次请求送到 LLM 面前时,都是孤立的——没有所在页面,没有文档的完整上下文,也没有任何信号告诉模型,这段文本究竟属于欧盟法律条文,还是营销文案。如果在推理阶段不注入领域上下文,那么每一次孤立请求,都是一次术语漂移的机会。

检索增强本地化(RAL) 正是通过在推理阶段为每个翻译请求补充术语表、品牌语调规则和 locale 专属指令,来补上这道缺口——其底层逻辑与 检索增强生成(RAG) 背后的 retrieve-inject 模式一致。在一项覆盖五家 LLM 提供商和五种欧洲语言的受控评测中,RAL 将术语错误减少了 16.6–44.6%。

关键发现:

  • 在测试的全部五家 LLM 提供商中,RAL 都将术语错误减少了 16.6–44.6%
  • 整体质量评分(GEMBA-DA)无法识别这些差异。分数差值仅为 0.0007–0.0178,而 MQM 却统计出少了数千个错误
  • 术语基线表现越弱的模型,收益越大:Mistral(-44.6%)和 Deepseek(-42.1%)显著高于 Anthropic(-24.4%)和 Google(-16.6%)
  • 葡萄牙语的单语种提升最大,法语最小——领域术语与训练数据偏离越远,RAL 的效果越明显

孤立带来的问题#

生产本地化的处理单元很小:一个段落、一条字符串、一次 diff。很少超过 200 个词,通常不到 50 个词。一个 JSON locale 文件里,是一组组独立的 key,每个 key 对应一个短语或句子。一个 CMS 页面由多个内容块组成,而每个内容块都是独立翻译的。

当模型在一段孤立的英文段落里遇到 “provider” 时,它必须自己判断:葡萄牙语里该译成 “fornecedor”(常见说法),还是 “prestador”(欧盟法律中的正式术语)?如果没有领域上下文,它通常会选前者。把这种情况扩展到每个 locale 中的每一个领域术语,术语漂移就会成为默认结果。

我们的目标,就是精确量化这道缺口到底有多大——以及在推理阶段注入术语表上下文,是否真的能把它补上。

第一次尝试,什么都没测出来#

我们最初的实验为每个语言对使用了 37 个术语表术语,并按文章级别评分——每篇文章(200–700 词)作为一个整体评估。结果是:GEMBA-DA——WMT23 的获胜整体质量提示——对 raw 和 configured 都给出了 0.952。MQM 错误标注则为每篇译文都打出了 0.985–0.999 的分数。没有信号,没有差异。按这些指标看,原始输出与术语表增强输出完全一样。

我们差一点就发布了一个零结果。后来,我们开始追问为什么。

问题有两个。第一,37 个术语表术语太少——很多测试段落根本没有命中任何术语表条目,因此配置后的引擎没有优势。第二,按文章级评分会在数学上把质量差异压缩成噪声。MQM 分数按 1 - penalty / wordCount 计算。一个 500 词文章中的单个重大术语错误:1 - 5/500 = 0.99。同样的错误如果出现在 50 词段落中:1 - 5/50 = 0.90。错误是一样的,分数却不是。到了文章级,所有真实的质量差异都会在 0.98 以上被抹平。

这不只是我们这项研究的测量问题。所有按页面或文章级别评估的翻译基准测试,都会遇到同样的问题。错误明明存在,指标却看不见。

我们换了一种看法#

在第二轮迭代中,我们做了四项调整。

第一,我们将每个语言对的术语表从 37 个扩展到 72 个术语——这些术语提取自一组训练文章,与用于评测的测试集分开。第二,我们改为按段落级(50–200 词)评分,以贴近真实生产翻译的实际单元。第三,我们在 MQM 评分提示中加入了人工参考译文,让评审能够直接对照术语。第四,我们将评审数量从 6 个减到 4 个。Deepseek 和 QWEN 每段只标出 1–3 个错误,而更严格的评审会标出 5–15 个——它们过于宽松,无法提供有效信号。

信号立刻出现了。

研究设计#

数据集。 我们希望选用术语密度最高的文本类型,在高要求条件下对术语表注入进行压力测试。欧盟《人工智能法案》(Regulation 2024/1689)正合适:这是一类正式监管文本,几乎每个段落都包含带有特定官方译法的术语。EUR-Lex 发布了五种目标语言的官方人工译文,因此我们可以逐段对照 ground truth 评分。共 15 篇文章,从英语翻译为德语、法语、西班牙语、葡萄牙语和意大利语。

引擎。 每家提供商都在两种本地化引擎配置下接受测试:raw 引擎(只有 LLM 本身——无术语表、无检索,只依赖训练知识翻译)和 RAL 增强引擎(同一模型,在推理阶段应用领域术语表、品牌语调档案和 locale 专属指令)。总计 10 个引擎,所有 RAL 增强引擎共享同一套配置。

提供商模型Raw 引擎RAL 引擎
Anthropicclaude-opus-4.6仅模型术语表 + 品牌语调 + 指令
OpenAIgpt-5.4仅模型术语表 + 品牌语调 + 指令
Googlegemini-3.1-pro-preview仅模型术语表 + 品牌语调 + 指令
Mistralmistral-large-2512仅模型术语表 + 品牌语调 + 指令
Deepseekdeepseek-v3.2仅模型术语表 + 品牌语调 + 指令

QWEN 最初也被纳入,但最终从结果集中移除——它的翻译既慢又不稳定,这也是它不适合作为评审模型的原因。

RAL 配置。 每个增强引擎都包含每个语言对 72 个术语表术语(70 个自定义译法 + 2 个不可翻译项)、一份品牌语调档案(正式的欧盟监管文体),以及 13 条 locale 专属指令。术语表术语提取自一组训练文章,与用于评测的测试集严格分离。示例条目:EN “provider” → PT “prestador”(不是 “fornecedor”);EN “high-risk AI system” → PT “sistema de IA de risco elevado”(不是 “sistema de IA de alto risco”)。在推理阶段,系统只会检索并传递与当前段落匹配的术语——术语表规模不会挤占上下文窗口。所有引擎都在 Lingo.dev 上配置为有状态的本地化引擎——持久上下文会应用到每一次请求中。

评分。 每个译文段落都由 4 个 LLM 评审打分,并取平均值以平滑单个评审的偏差。每位评审都会为所有提供商的输出打分,而不只是自己的输出:

评审模型
Anthropicclaude-sonnet-4.6
OpenAIgpt-4.1
Googlegemini-2.5-flash
Mistralmistral-large-2512

GEMBA-MQM。 MQM(Multidimensional Quality Metrics,多维质量指标)是翻译质量评估的标准框架——通常由受过训练的人工标注员执行。GEMBA-MQM 是 WMT23 的获胜评测方法,它用 LLM 替代人工标注员,同时沿用相同的 MQM 协议:评审读取译文,标出每一个错误,并为每个错误指定类别和严重程度。

错误类别包括:准确性、流畅性、风格、术语。严重程度权重遵循官方 MQM 标准:轻微 = 1,重大 = 5,严重 = 25。

每段的 MQM 分数:max(0, 1 - weighted penalty / word count)。一段 50 词文本如果有一个重大术语错误,得分为 1 - 5/50 = 0.90。完美段落得分为 1.0。结果表中的错误计数,是针对某一提供商和某一 locale,将全部 4 位评审和所有段落的结果汇总而成。

相较标准 GEMBA-MQM 提示,我们做了一项改动:加入人工参考译文。GEMBA-MQM 在设计上是 reference-free 的——评审在看不到“正确答案”的情况下评估质量。之所以加入参考译文,是因为 EUR-Lex 发布了欧盟《人工智能法案》在五种目标语言中的官方译文,为评审提供了可直接对照术语的 ground truth。

GEMBA-DA。 使用 GEMBA-DA prompt 得出的 0–1 整体质量分数(同样是 WMT23 的获胜方法)。与 MQM 不同,它只给出一个单一分数,不附带错误标注。我们将它作为 sanity check——正如结果所示,它无法识别术语层面的差异。

由于打分过于宽松(每段 1–3 个错误,而更严格的评审通常为 5–15 个),Deepseek 被排除在评审面板之外。对 4 位评审取平均可以平滑个体偏差,而且在每位评审内部,raw 相比 RAL 的相对改善趋势都保持一致。

样本量。 每家提供商共有 535 个成对段落观测值(107 个段落 × 5 个 locale)。总计超过 42,000 次独立质量判断(535 个段落 × 5 家提供商 × 2 种配置 × 每项 8 个评分)。

术语错误减少 16.6–44.6%#

提供商Raw 错误数RAL 错误数降幅
Mistral3,3361,847-44.6%
Deepseek3,6722,127-42.1%
OpenAI2,2761,508-33.7%
Anthropic1,5591,179-24.4%
Google1,9011,586-16.6%

MQM 统计的术语错误数,覆盖 15 篇文章、5 个 locale 和 4 位评审。

提升幅度与基线表现呈反向关系。Mistral 和 Deepseek——raw 错误数最高——分别减少了 42.1–44.6%。Anthropic 和 Google——其训练数据中本就覆盖了更多欧盟法律术语——增益较小。规律很清晰:RAL 补的是模型原本不知道的那部分。

与此同时,GEMBA-DA——这一整体评分——在所有提供商中给出的 raw 与 RAL 差值只有 0.0007–0.0178。同一批被 MQM 标记为多出 16.6–44.6% 术语错误的译文,却拿到了几乎相同的整体分数。这就是测量缺口:无论在哪种粒度下,整体式评估都无法识别术语层面的质量差异。

与此同时,总错误数(MQM 的所有类别)在全部五家提供商中也呈现出较小但一致的下降:

提供商原始总计RAL 总计变化
Deepseek10,4239,014-13.5%
Mistral8,8467,812-11.7%
OpenAI7,5637,155-5.4%
Google7,7937,545-3.2%
Anthropic6,2326,039-3.1%

术语错误降幅(16.6–44.6%)与总错误降幅(3.1–13.5%)之间之所以存在明显差距,很大程度上是风格因素造成的。只要文本偏离了 LLM 评审器训练数据中的表达偏好,它们往往就会判定为“别扭”,哪怕这种偏离其实更接近官方参考译文——这正是一个已知局限:自我偏好偏差。术语和准确性都可以参照参考译文来衡量;而风格并没有这样的锚点,更多取决于评审器自己对“自然表达”的主观判断。

统计显著性#

我们按提供方分别检验了术语错误的下降情况,采用配对 Wilcoxon 符号秩检验(单侧检验,并对五个提供方进行 Holm-Bonferroni 校正)。每段的术语错误数先汇总四位评审器的结果,再按段落进行配对比较(相同源文、相同评审器、原始输出 vs RAL)。

提供方配对段落数每段平均降幅95% 置信区间Cohen's dp 值(校正后)
Mistral5322.80[2.42, 3.21]0.60< 0.001
Deepseek5262.94[2.45, 3.44]0.50< 0.001
OpenAI5351.44[1.12, 1.77]0.37< 0.001
Anthropic5330.71[0.50, 0.93]0.28< 0.001
Google5330.59[0.34, 0.85]0.20< 0.001

五个提供方的术语错误下降都达到了统计显著性(经 Holm-Bonferroni 多重比较校正后,p < 0.001),且 95% 置信区间均未跨越 0。效应量从中等偏大(Mistral,d = 0.60)到较小(Google,d = 0.20)不等——这与一个清晰规律一致:术语覆盖基线越低的模型,从 RAL 中获得的收益越大。

RAL 最能发挥作用的地方#

在所有提供方中,葡萄牙语的术语改进幅度最大。原因在于,葡萄牙语法律术语与日常葡萄牙语差异明显,而葡语中的欧盟法律术语在 LLM 训练数据中覆盖不足。法语的提升则最小,因为法语法律术语在训练语料中本就有较高代表性。

案例研究:OpenAI 葡萄牙语

OpenAI 的原始输出在将《欧盟人工智能法案》译成葡萄牙语时,71 次使用“alto risco”(即口语里的“高风险”),39 次使用“fornecedores”,36 次使用“fornecedor”。而 EUR-Lex 官方译文采用的是“risco elevado”和“prestadores”。引入 RAL 后,OpenAI 葡萄牙语的术语错误从 648 降到 266——减少了 59%。

这一规律具有普遍性:某个 locale 的领域术语越偏离 LLM 的训练分布,RAL 带来的收益就越明显。

背后的机制#

其生效机制其实很直接。在推理阶段,系统会先将输入文本拆分为 n-gram 短语并进行嵌入,然后在术语表的向量索引中做余弦相似度搜索,找出匹配术语。匹配到的术语会与源文本一起注入 LLM 的上下文窗口。模型并不是在“猜”该用“fornecedor”还是“prestador”——它是在上下文里直接看到了正确映射,并据此生成。其结构与 RAG 完全一致:嵌入、检索、注入、生成。

按原始质量排名的提供方#

不使用 RAL 时——仅看模型原始输出:

排名提供方MQM 平均分
1Anthropic0.955
2OpenAI0.942
3Google0.938
4Mistral0.915
5Deepseek0.883

Anthropic 与 Deepseek 之间 0.072 的差距,大致相当于每 100 词段落多出 3–4 个错误。RAL 缩小了这一差距:启用 RAL 的 Mistral(平均 0.940)已经接近 Google 的原始质量(0.938)。一个单 token 成本仅为其一小部分、再配上 72 个术语的模型,就能在没有术语表支持的情况下,达到更昂贵模型的术语准确性水平。

这对生产环境意味着什么#

原始 LLM 输出与可直接上线的本地化质量之间的差距,本质上是上下文问题——而且会不断叠加。十次发布都不使用 RAL,产品里就可能同时存在三种不同、但都错误的“provider”译法。

RAL 打破了这种局面。术语表是持久生效的——不管变了什么,它都会应用到每一次请求中。我们研究中让错误减少 16.6–44.6% 的那份 72 词术语表,并不是一次性的优化,而是在产品整个生命周期内,覆盖每一次翻译请求的一致性层。

对于正在交付 LLM 翻译的团队,我们有两个结论。第一,整体质量评分捕捉不到术语层面的问题。GEMBA-DA——WMT23 的冠军方法——对原始译文和经 RAL 增强后的译文打分差距仅为 0.0007–0.0178;但 MQM 统计显示,术语错误减少了 16.6–44.6%。如果你只在页面层级用一个总分来评估,就看不到全貌。

第二,解决方案比问题本身看起来要简单得多。在推理阶段注入领域术语表后,我们测试的每一家提供方,术语错误都出现了下降。翻译表现最好的模型(Anthropic,MQM 0.955)依然还能继续提升;而基线错误率最高的模型(Deepseek,MQM 0.883)则提升最多。

对本地化来说,RAL 之于本地化,正如 RAG 之于生成:它是连接模型与生产环境的工程层。

下一步#

Lingo.dev v1.0 正式发布
围绕 RAL 打造的本地化工程平台
本地化引擎
按 locale 配置模型、术语表和品牌语气

平台

本地化 API异步任务 API本地化引擎语言检测Lingo.dev Platform MCP定价

开发者工具

Lingo React MCPLingo CLILingo GitHub ActionLingo React Compiler
Alpha

资源

文档Labs指南更新日志语言LLM 模型

公司

博客研究预约演示客户案例招聘
招聘中
humans.txt

社区

GitHubDiscordTwitterLinkedIn
总部位于旧金山,团队遍布全球
SOC 2 Type II·CCPA·GDPR
由 Y Combinator
Combinator
& Initialized Capital
Initialized Capital
& 以及我们的客户支持
隐私·条款·Cookies·security.txt

© 2026 Lingo.dev (Replexica, Inc).

所有系统运行正常
登录注册预约演示
Veronica PrilutskayaVeronica Prilutskaya, CPO 兼联合创始人·已发布 4 个月前·3 分钟阅读