知识蒸馏
训练更小、更快的模型,使其模仿更大的教师模型的行为。什么是蒸馏?
知识蒸馏将知识从大型”教师”模型转移到较小的”学生”模型。学生学会产生与教师相似的输出,获得仅从数据中无法学到的能力。快速开始
Python API
参数
温度
更高的温度使教师模型的概率分布更柔和,使学生更容易学习:1.0: 正常概率2.0-4.0: 更柔和,更易教学(推荐)>4.0: 非常柔和,可能失去精度
Alpha
控制蒸馏和标准损失之间的平衡:0.0: 仅标准损失(无蒸馏)0.5: 平衡0.7: 默认值(更重视蒸馏)1.0: 仅蒸馏损失
提示词模板
自定义教师和学生模型的提示词格式化方式:{input} 作为实际提示词文本的占位符。
数据格式
简单的提示词对蒸馏效果很好:最佳实践
明智选择模型
- 教师模型应该显著更大(4倍+ 参数)
- 相同架构族通常效果最好
- 教师模型应该在目标任务上表现良好
温度调优
推荐温度范围为 2.0-4.0。超过 4.0 的值可能会失去精度。
训练时长
蒸馏通常受益于更长的训练:示例:API 助手
蒸馏大型模型的 API 知识:对比
无蒸馏
有蒸馏
使用场景
- 部署: 为生产环境创建快速模型
- 边缘设备: 在移动/嵌入式系统上运行
- 成本降低: 降低推理成本
- 专业化: 将大型模型知识聚焦到特定领域
下一步
DPO Training
偏好优化
LoRA/PEFT
高效微调