微软的新 AI 训练方法消除臃肿的 system prompts,同时不牺牲 model performance
Source: VentureBeat
长系统提示的问题
企业在构建大型语言模型(LLM)应用时,常常会创建非常长的系统提示,以注入公司知识、偏好和特定应用指令。
在大规模使用时,这些提示会:
- 将推理延迟推至不可接受的阈值以上。
- 使每次查询的成本急剧上升。
为什么长系统提示会成为负担
-
瞬时知识 – 在上下文学习只会在推理时更新模型行为。该知识不会在对话之间持久化,因此每次请求都必须提供同样庞大的指令集。
-
运营开销 – 每次重新喂入政策、工单或密集的技术手册都会拖慢模型,增加成本,并可能导致系统混乱。
-
安全与专业约束 – 正如微软亚洲研究院的叶天柱在 VentureBeat 中所述:
“企业常使用长系统提示来强制执行安全约束(例如仇恨言论检测)或提供领域专门知识(例如医学知识)。然而,冗长的提示会显著增加计算开销和推理时的延迟。”
上下文蒸馏:核心思想
上下文蒸馏 训练模型以 内化 那些本来需要反复插入提示中的信息。
- 教师模型 – 接收庞大、详细的提示并生成高度定制化的回复。
- 学生模型 – 只看到主要问题(没有完整上下文),通过观察教师模型的输出学习模仿教师的行为。
通过这一过程,学生模型 压缩 复杂指令到自身参数中,从而在推理时 无需 冗长的提示。
经典(离线)上下文蒸馏的局限
| 问题 | 重要原因 |
|---|---|
| 离线训练 – 使用在训练前收集的固定数据集。 | 学生模型从未练习生成自己的 token 序列,导致 曝光偏差 并且在出错后难以恢复。 |
| 前向 KL 散度 – 根据与教师模型的相似度给学生评分。 | 鼓励 覆盖模式 的行为;体积更小的学生模型试图覆盖教师的所有可能性,导致预测过于宽泛、缺乏聚焦。 |
| 幻觉与泛化能力差 | 学生模型可能自信地捏造信息,因为它被迫模仿自己并未真正掌握的知识。 |
OPCD 如何解决师生问题
Microsoft 研究人员提出了 On‑Policy Context Distillation (OPCD),以解决上述不足。
OPCD 的关键转变
-
On‑policy 学习 – 学生模型从 其自身生成的轨迹 中学习,而不是从静态数据集学习。
-
实时教师反馈 – 当学生生成答案(无需庞大的提示)时,拥有完整上下文的教师会对每一步进行评估。
-
逆 KL 散度 – OPCD 最小化 逆 KL 散度,促进 模式寻求 行为:
“通过最小化逆 KL 散度,它促进‘模式寻求’行为。它关注学生分布的高概率区域,” Ye 说。“它抑制学生认为不太可能的 token,即使教师的信念给这些 token 分配了高概率。这种对齐帮助学生纠正自己的错误,避免标准蒸馏中出现的宽泛、幻觉式的分布。”
对企业部署的好处
- 自给自足的推理 – 学生模型内部化上下文,消除运行时粘贴长提示的需求。
- 降低延迟与成本 – 响应更快,计算开销大幅下降。
- 提升可靠性 – 模型练习自行决策并纠错,导致幻觉更少,对新任务的泛化能力更强。
TL;DR
- 长系统提示对企业 LLM 应用来说成本高且速度慢。
- 经典的上下文蒸馏(off‑policy)存在暴露偏差和预测过于宽泛的问题。
- OPCD 采用 on‑policy 训练,使用逆 KL 散度,并让具备上下文感知的教师提供实时反馈,从而得到一个体积小、速度快、更加可靠的模型,推理时不再需要庞大的提示。
Source: …
OPCD 基准结果
OPCD 能提供的内容
研究人员在两个关键领域评估了 OPCD(Optimized Parameter‑Conditional Distillation):
- 经验知识蒸馏 – 大语言模型能否从自身过去的成功中学习,并永久采纳这些经验?
- 系统提示蒸馏 – 能否将密集的、安全导向的系统提示直接烘焙进模型权重,从而不再需要在每次用户查询时提供这些提示?
1. 经验知识蒸馏
过程
- 模型解决一组数学推理题目。
- 然后要求模型 写下它从成功中推导出的通用规则。
- 使用 OPCD,将这些书写的经验 烘焙进模型参数。
结果
| 模型(参数量) | 任务 | 基线准确率 | OPCD 后准确率 |
|---|---|---|---|
| 8 B | 复杂数学题 | 75.0 % | 80.9 % |
| 1.7 B | 冰湖导航(成功率) | 6.3 % | 38.3 % |
模型在不再需要将学习到的经验粘贴到提示中的情况下,表现显著提升。
2. 系统提示蒸馏
企业常在查询前添加 大规模系统提示 以强制执行严格的行为准则(例如专业语气、医学准确性、毒性过滤)。目标是将这些规则内化,使其不必随每个查询一起传递。
结果
| 模型(参数量) | 任务 | 基线准确率 | OPCD 后准确率 |
|---|---|---|---|
| 3 B Llama | 安全与毒性分类 | 30.7 % | 83.1 % |
| 3 B Llama | 医学问答 | 59.4 % | 76.3 % |
OPCD 成功内化了复杂的行为规则,并大幅提升了性能。
3. 灾难性遗忘
常见的微调陷阱是 灾难性遗忘 —— 模型过度专注于某一任务,导致在无关任务上的表现下降。
- 在蒸馏严格安全规则后,模型立即在 无关的医学问题 上进行测试。
- OPCD 保持了通用医学知识,相较于旧的离线方法提升约 4 个百分点。
模型实现了专精而不失广泛智能。
4. OPCD 的适用范围——以及不适用的情形
- 适合 内化 静态知识 与 复杂、长篇规则。
- 不替代 如 RAG(检索增强生成) 的方法,当所需信息 高度动态 或存在于 大规模、频繁更新的外部数据库,无法压缩进模型权重时。
“当所需信息高度动态或涉及大规模、频繁更新的外部数据库,且无法压缩进模型权重时,RAG 更为合适,” – Ye。
5. 实施与资源需求
| 方面 | 细节 |
|---|---|
| 集成 | 无需大幅度管道改造。已使用标准 RLVR(Reinforcement Learning from Verifiable Rewards)的团队可以最小摩擦采用 OPCD。 |
| 硬件 | 大约 8 × NVIDIA A100 GPU 即可复现实验。 |
| 数据 | 经验知识:约 30 条种子示例用于生成解题轨迹。 系统提示:现有优化提示 + 标准任务数据集。 |
| 代码库 | 基于 verL,一个开源 RLVR 代码库。实现将在内部审查后公开发布。 |
6. 自我改进模型:下一步是什么
OPCD 为 真正自我改进的模型 打开了大门,使其能够持续适应定制化的企业环境:
- 部署后,模型可以 从真实交互中提取经验教训。
- 然后 使用 OPCD 将这些特性内化,无需人工监督或额外的数据标注。
“这代表了模型改进范式的根本性转变:核心改进……”
Source: …
对模型的调整将从训练阶段转移到测试阶段。使用模型——并让它积累经验——将成为其进步的主要驱动力。” – Ye