多语言与跨语言提示:让大模型处理非英文任务
英文是大多数大语言模型预训练与指令微调的核心语言,但当你的任务、用户或评测集不是英文时,提示方式需要额外留心。本教程梳理多语言提示的常见陷阱、稳妥做法,以及中文场景下的特殊注意点,并给出可量化的评测思路。
为什么多语言提示有坑
大模型在英文上表现更好,并不只是「错觉」,它来自训练数据与语言特征的客观差异。主要有三类坑:
英文训练占比高。 主流模型的预训练语料以英文为主,指令微调(SFT)与偏好对齐(RLHF)也大量使用英文样本。结果是模型对英文指令的理解与服从更稳定,而对其他语言,尤其是训练数据稀少的语言,同等质量的提示可能得到不稳定或退化的结果。不同模型、不同版本的英文占比具体数字差异较大,本文不引用单一数值,相关统计以各模型技术报告为准(待核实)。
低资源语言弱。 即使是能力很强的模型,在斯瓦希里语、孟加拉语、泰卢固语等低资源语言上,少样本学习与复杂推理的准确率仍明显低于英文。这一现象在 MGSM 基准(见后文「评测」一节)中被系统验证:同一批数学题,英文上的思维链准确率往往高于低资源语言版本(具体差距随模型与语言不同,待核实)。
代码切换(code-switching)。 真实用户常在同一句话里混用中英文,例如「帮我 debug 这段 Python 代码」「这个 pipeline 的吞吐太低」。模型可能因此偏向用英文回答,或在语言边界处产生格式错乱、术语不一致、半角全角符号混用等问题。code-switching 是否必然导致模型切回英文,与模型和提示设置有关,属经验性观察(待核实)。
经验法则
下面是几条经过实践检验、性价比高的做法。
关键指令用英文更稳定
任务元指令(角色设定、动作要求、输出格式)用英文写,往往比用目标语言写更稳定,因为模型在英文指令上训练得更充分。但回答语言仍由你显式控制为目标语言,二者不冲突。
You are a professional translator. Translate the following text into fluent Simplified Chinese. Keep terminology consistent and preserve the original tone.
Text:
"""
The new scheduler reduced tail latency by 40% under peak load.
"""
上例中,指令是英文,输出要求是中文,这是一种常见且稳妥的「英文指令加目标语言输出」模式。
用「请使用 XX 语言回答」显式指定
不要让模型「猜」回答语言。务必在提示里写明目标语言,必要时连变体也写清(简体中文、繁体中文、日语敬语等)。
请使用日语回答以下问题,并保持礼貌敬语。
问题:这家餐厅的招牌菜是什么?
如果不显式指定,模型可能默认回英文,尤其当输入文本本身含大量英文术语时。
少样本用目标语言示例
少样本(few-shot)示例中,示例的语言和风格应与目标输出一致。若示例用英文、问题用中文,模型容易按英文示例的句式与格式输出,造成语言漂移或格式不符。
示例1:
输入:「这个手机续航很差。」
输出:「负面」
示例2:
输入:「画面清晰,手感不错。」
输出:「正面」
现在请分类:
输入:「物流很快,但包装破损了。」
输出:
跨语言任务
当目标语言本身能力较弱,或任务需要复杂推理时,可以用「跨语言」策略借力英文,同时保证最终交付的是目标语言。
用英语做推理、目标语言出结果
复杂推理(数学、逻辑、多步计划)可让模型先用英文展开思维链(chain-of-thought),再用目标语言给出最终答案。因为英文推理链的平均质量通常更高,这一步能提升最终答案的正确性,而不改变对外呈现的语言。
Solve the following problem by reasoning step by step in English, then provide the final answer in Chinese.
Problem: 一个水池有进水管和出水管,进水每分钟 3 升,出水每分钟 2 升,空池开始同时打开两管,多少分钟能装满 60 升的池子?
注意,这和「让模型直接回英文」不同:推理过程借力英文,最终输出仍是目标语言。
翻译增强(translate-test)
对于低资源语言评测,或目标语言效果明显不佳时,可采用 translate-test:先把任务或评测样本翻译成英文,用模型得到英文结果,再翻译回目标语言;也可以构造英文提示、目标语言输出。该方法的优点是绕开目标语言本身的弱项,缺点是引入翻译误差,需对翻译质量单独评估。
步骤一:将中文任务翻译为英文提示
步骤二:用英文提示调用模型,得到英文中间结果
步骤三:将英文结果翻译回目标语言(中文)
一个简化的流程函数如下:
def translate_test(task_zh, translate, model, back_translate):
# 步骤一:中文任务翻译为英文
en_prompt = translate(task_zh, to="en")
# 步骤二:模型在英文上推理
en_result = model(en_prompt)
# 步骤三:英文结果翻译回中文
return back_translate(en_result, to="zh")
使用 translate-test 时,要分别评估「翻译质量」和「模型推理质量」,否则翻译错误会被误算成模型错误。
中文提示的特别注意事项
中文作为高资源但非英文语言,有若干与英文不同的工程要点。
分词与 token 开销。 中文没有空格,分词粒度因 tokenizer 而异。同样意思的中文段落往往比英文切出更多 token,既增加成本,也更容易触及上下文长度上限。建议避免超长、无结构的中文堆砌,适当分段、用标题与列表降低歧义。中文相对英文的 token 数量比例因模型而异,常见说法约为一比一点几到两倍,具体倍数待核实。
全角符号与结构化输出。 中文常用全角标点(,。、()「」)。模型一般能正确处理,但当你要求 JSON、代码、CSV 等半角结构化输出时,务必在提示里明确要求使用半角符号,否则模型可能在中文语境下混入全角括号、全角逗号,导致解析失败。
请输出 JSON,所有键和字符串使用半角双引号,小数与布尔值不使用中文符号。
示例:
{"sentiment": "negative", "confidence": 0.92}
长上下文的信息密度。 中文信息密度高,相同内容中文 token 数通常多于英文,因此更可能触及上下文窗口上限。处理长文档时优先考虑摘要、分块,或先抽取再问答,而不是整篇塞入。
术语一致性。 中文里同一概念常有多种译法(例如 model 可译作「模型」或「模组」,evaluation 可译作「评估」或「评测」,inference 可译作「推理」或「推断」)。应在提示中固定一份术语表,要求模型全程沿用,避免前后不一致。
术语约定(全文沿用):
- model 译为「模型」
- evaluation 译为「评估」
- inference 译为「推理」
- pipeline 保留不译
请基于上述约定撰写中文技术说明。
评测:用多语言基准验证,别靠语感
判断多语言提示好坏,不能只凭「读起来通顺」。中文母语者觉得答得顺,不等于事实正确、不等于格式合规、也不等于低资源语言同样成立。应使用客观基准与指标量化对比。
MGSM(已核验)。 Multilingual Grade School Math 基准,将 GSM8K 的 250 道小学数学题人工翻译为 10 种类型学差异大的语言:西班牙语、法语、德语、俄语、中文、日语、泰语、斯瓦希里语、孟加拉语、泰卢固语,外加英文原题。它用于评估模型的跨语言数学推理与思维链能力,出自 Shi et al. 2022(arXiv:2210.03057),数据集发布于 github.com/google-research/url-nlp。
FLORES-200(已核验)。 覆盖 200 种语言的平行句对机器翻译评测基准,由 842 篇网页文章的 3001 个句子构成,是 FLORES-101 的扩展版本,语言代码采用 ISO 639-3 加文字标注(例如 eng_Latn、ukr_Cyrl)。它用于衡量翻译质量(如 BLEU、chrF),源自 NLLB 项目(Goyal et al. 2022;NLLB Team 2022)。
评测建议。 对推理类任务,用 MGSM 这类多语言基准对比「直接中文提示」与「英文推理加中文输出」的准确率差异;对翻译类任务,用 FLORES-200 在目标语言对上计算 BLEU 或 chrF。结论应以指标和数据说话,而不是以个别样例的观感下判断。
小结
多语言提示的核心矛盾是:模型在英文上更强,而你的任务未必是英文。稳妥做法是——关键指令可用英文保持稳定,回答语言用「请使用 XX 语言回答」显式指定,少样本示例使用目标语言;跨语言复杂任务可让模型用英文推理、目标语言出结果,或用 translate-test 借力英文;中文场景要留意分词与 token 开销、全角符号对结构化输出的影响、长上下文上限与术语一致性。最后,用 MGSM、FLORES-200 等多语言基准做量化评测,避免仅凭语感判断效果。
参考与延伸阅读
- Shi, F. 等(2022)。《Language Models are Multilingual Chain-of-Thought Reasoners》。arXiv:2210.03057。提出 MGSM 基准,将 GSM8K 250 题翻译为 10 种语言加英文。(已核验)
- MGSM 数据集,Hugging Face(juletxara/mgsm)与 google-research/url-nlp。包含各语言题目、答案与人工翻译的少样本示例。(已核验)
- FLORES-200 数据集,Hugging Face(facebook/flores)。覆盖 200 种语言的平行句对翻译评测基准。(已核验)
- Goyal, N. 等(2022)。《The Flores-101 evaluation benchmark for low-resource and multilingual machine translation》。TACL。(已核验,经 FLORES 数据集卡引用)
- NLLB Team(2022)。《No Language Left Behind: Scaling Human-Centered Machine Translation》。arXiv:2207.04672。FLORES-200 所属项目。(已核验,经 FLORES 数据集卡引用)
- Cobbe, K. 等(2021)。《Training Verifiers to Solve Math Word Problems》(GSM8K)。arXiv:2110.14168。MGSM 的英文源数据集。(已核验,经 MGSM 数据集卡引用)
待核实项:各模型预训练语料的英文具体占比、不同语言在 MGSM 上的具体准确率数值、中文相对英文的 token 数量比例、code-switching 导致语言漂移的边界条件。以上建议在正式发布前以对应模型技术报告与基准论文的最新数据复核。