少样本提示
核心思想: 将经过验证的高质量翻译对作为上下文示例纳入提示中,使大语言模型通过演示而非指令来学习目标语言的模式、风格和约定。
:::info 这是一份指南,不是完整实现 本指南阐述了该方法及其关键设计决策。请根据你的语言对和可用资源进行调整。 :::
何时使用
- 你拥有一小组经过验证的翻译(即使只有 5–10 个金标对也有帮助)
- 你希望大语言模型通过示例而非规则来匹配特定的风格或语域
- 你的目标语言具有更容易展示而非描述的模式(词序、词缀模式、正式程度标记)
工作原理
- 精选示例对 — 选择能够展示关键模式的高质量源→目标翻译
- 格式化为上下文示例 — 在实际翻译请求之前将其纳入系统或用户提示中
- 运行测试框架 — 测量示例是否相比零样本提示改进了指标
- 迭代示例选择 — 交换示例以覆盖不同的失败模式
示例提示结构
You are translating English to Plains Cree (SRO orthography).
Examples of correct translations:
- "Hello" → "tânisi"
- "Thank you" → "kinanâskomitin"
- "I am going home" → "nikîwân"
- "The children are playing" → "awâsisak mêtawêwak"
Now translate the following:
- "Welcome to the school"
关键规则:避免评估数据污染
:::danger 不要将评估数据用作少样本示例 如果你的示例来自评估数据集,你的方法将被取消排行榜资格。少样本示例必须来自独立来源 — 词典、教科书、社区验证的对或单独的开发集。测试框架会对你的确切提示进行指纹识别;污染是可检测的。 :::
关键设计决策
多少个示例? 3–8 个是最佳范围。太少会给大语言模型信号不足;太多会消耗上下文窗口而收益递减。
选择哪些示例? 优先考虑多样性而非难度。涵盖不同的句子结构、词长和语法特征。不要将示例聚集在一个模式周围。
静态还是动态选择? 静态示例更简单。动态选择(选择与当前输入相似的示例)可以提高质量,但增加了复杂性 — 考虑使用链式模型进行检索步骤。
优缺点
| ✅ 对风格匹配很强大 | ❌ 小上下文窗口限制了示例数量 |
| ✅ 无需训练 | ❌ 示例选择是一门艺术,不是科学 |
| ✅ 适用于任何大语言模型 | ❌ 评估数据污染风险(取消资格) |
| ✅ 易于 A/B 测试不同的示例集 | ❌ 示例可能不适用于所有输入类型 |
配合使用效果好的方法
- 指导式大语言模型提示 — 规则 + 示例的组合优于单独使用任一方法
- 词典增强型大语言模型 — 强制术语 + 风格示例
- FST 门控管道 — 用示例处理风格,用 FST 处理形态学正确性