跳到主要内容

本地化系统提示词:模型表现为何比英文原版更差

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的英文系统提示词(system prompt)花了六周的时间进行调优。一位资深工程师先后四次重写了约束列表,评估套件终于在留存任务集(held-out task set)上跑出了 94% 的通过率,发布检查清单也为生产环境亮了绿灯。随后,国际化(i18n)团队接手,将其放入处理按钮标签和工具提示的相同翻译流水线中,并在下个迭代周期交付了日语、德语、印地语和阿拉伯语版本。针对非英语市场的发布仪表盘显示了相同的任务量、相同的用户转化漏斗,而且——直到六个月后收到东京客户的一张工单——始终保持着代表正常的绿色状态。

东京客户投诉称,智能体忽略了英文提示词中明确禁止的一项指令。你重新阅读了日语提示词,发现从语义上看,两者的意思完全相同。你针对英文变体重新运行了英文评估套件,通过了。但日语变体没有评估套件。从来都没有。

这就是隐藏在每个多语言 LLM 产品表面下的架构失效:系统提示词被当作“内容”进行了本地化,但它实际上起的是“调节(conditioning)”作用。评估套件衡量的是英文契约。翻译流水线衡量的是字符串等效性。在这两者之间,产品在非英语市场的实际行为表现处于未被衡量且不断漂移的状态。

系统提示词不是可翻译的字符串

处理 UI 的翻译流水线是为另一种制品校准的。按钮标签、工具提示和错误消息是供用户阅读的内容——只要翻译后的字符串能向目标语境下的人类传达相同的含义,其保真度就算得到了保留。翻译人员对此有数十年的惯例、专业的 QA 流程,以及一个在用户抱怨措辞错误时立即关闭的反馈循环。

系统提示词完全不同。它是一份面向模型的行为契约,模型对其的响应取决于国际化团队无法衡量的三个层面:分词器(tokenizer)对源字符串的切分、模型在该语言中的指令遵循校准,以及提示词指令与用户输入之间的潜空间对齐(latent space alignment)。

研究文献已经开始分别量化这些层面。M-IFEval(IFEval 的多语言扩展)将指令遵循评估适配到了法语、日语和西班牙语,并发现同一个模型在针对同一个可验证约束进行评分时,在不同语言中的表现存在实质性差异。XIFBench 将这一范畴扩展到了 6 种语言,包含 5 个约束类别(内容、风格、情景、格式、数值)的 558 条指令,并报告了高资源语言与低资源语言目标之间存在的系统性差距。Marco-Bench-MIF 将其扩展到 30 种语言,并确认随着你远离英语,差距会不断扩大。

具体数字因论文、模型和约束类别而异,但核心结论是一致的:当系统提示词为英文时,模型有 90% 的时间会遵守某项指令;而当该提示词以非英语语言重新表达时,哪怕面向用户的任务和模型保持不变,该比例也会下降 8–22 个百分点。

本地化团队没有人员配置来调试这类问题

翻译流水线运行的是基于字符串等效性的 QA:母语使用者阅读翻译后的字符串,确认其传达了原始含义。这种 QA 在翻译后的系统提示词上可以通过——从结构上讲,这是因为翻译人员完成了他们的工作。但这种 QA 无法察觉的是,“向人类审核者传达相同含义”与“从模型中诱导出相同的指令遵循行为”是完全不相关的任务。

避开这种 QA 的失效模式通常是隐秘的。“不要提供医疗建议”的日语变体在人类审核者看来解析正确,但模型在日语表述下的拒绝校准(refusal calibration)比英文原版更弱,因此模型会输出一些听起来像建议的文本,而英文变体则会抑制这些内容。德语版的“始终按章节编号引用源文档”在结构上是忠实的,但模型在德语提示词下的格式约束遵守能力明显弱于英文,导致智能体只有一半的时间会进行引用。阿拉伯语版的数值约束在语法上是正确的,但模型的数值约束合规性——这在英文中本就是最弱的约束类别——进一步崩溃了。

本地化团队可以验证字符串。他们无法验证行为。能够验证行为的团队——即编写英文提示词和为其把关的评估套件的模型工程团队——甚至不知道生产环境中发布了 13 个兄弟变体。

以英语为中心的推理是底层架构的属性

为什么会存在这种差距?了解这一点很有必要,因为它能告诉你哪些缓解措施是可行的。最前沿的模型是在以英文文本为主的语料库上训练的,多语言数据的采样比例较低,且集中在少数高资源语言中。模型的内部推理轨迹——提示词与输出之间的激活链——无论提示词的表面语言是什么,都倾向于英语。跨语言分析报告称,低资源语言在潜空间中形成了浅层、孤立的聚类,而不是清晰地映射到共享的语义几何中。

实际结果是,模型在对你的非英语提示词进行推理之前,会先将其部分翻译成其内部与英语对齐的表示形式。这个翻译步骤是有损的。损失集中在系统提示词本应控制的那些方面:约束遵守、拒绝校准、格式保真度和指令优先级。如果你提示词中的源语言表述在模型内部表示中翻译得模棱两可,约束力就会减弱;如果翻译在语法上有效但在模型的训练分布中很罕见,约束的显著性(salience)就会降低。

这就是为什么翻译提示词并不能解决问题——而且往往会使问题变得更糟。原始的英文提示词已经处于模型最强的表示语言中。用一种较弱的表示语言重新表达它,实际上是为模型的每次请求增加了一个内部重新翻译的步骤。你为了追求“表面语言匹配”这一模型并非运行必需的属性,而付出了对齐损失的代价。

“翻译提示词”和“翻译 UI 字符串”是不同的工程决策

一旦你将系统提示词(system prompt)视为模型调节(model-conditioning)而非面向用户的内容,一套全新的设计方案就会开启。下方的决策树将取代你的 i18n 流水线默认遵循的流程。

加载中…
References:Let's stay in touch and Follow me for more thoughts and updates