创建蒸馏任务
模型蒸馏通过调用教师模型产生问答对,再通过精调得到成本更低、特定任务效果更好的学生模型。
登录到本平台,选择模型蒸馏板块,创建蒸馏作业。
创建蒸馏作业
如果您在模型蒸馏作业列表中有创建好的模型任务,可以直接点击“新建任务”创作模型的迭代版本,如果已有运行中的版本,再次创建的运行任务不可切换教师模型和学生模型的类型。
基本信息
填写好作业名称后,再进行500字内的作业描述即可。
第一步:构建蒸馏数据
教师模型版本
教师模型版本默认值为DeepSeek-R1,分别支持DeepSeek-R1、DeepSeek-V3、ERNIE-4.0-Turbo-8K。
数据配置
- 原始数据来源支持选择平台数据集。
- 若要发起蒸馏,仅支持选择一个数据集并多于100条,若数据集超过10000条,蒸馏数据构造耗时可能较长,请耐心等待。数据格式可以选择Prompt+Response、Role(user+assistant)、Prompt+多Response排序以及Prompt集数据进行训练。蒸馏任务会使用选择数据集的Prompt字段,该数据用于批量请求教师模型,进而生成更优质的蒸馏数据。
保留思维链内容
选用DeepSeek-R1模型时,可启用思维链保留功能,生成内容中的推理过程将自动拼接到Response进行训练,确保学生模型具有比肩教师模型的思考能力。
蒸馏数据保存位置
当前仅支持选择平台共享存储。
第二步:训练学生模型
学生模型及版本
平台提供ERNIE、DeepSeek、Llama系列等模型,详细描述可参考模型精调。
增量训练
- 在训练任务中,可以选择开启增量训练开关。开关打开后,需要选择SFT的基准模型,此模型来源于运行中的SFT任务。所以您开启增量训练任务的前提是有已经在运行中的SFT任务。请注意:基础模型继承基准模型(全量更新所得)版本,所以当您选定基准模型后,基础模型及版本不可变更。为保证增量训练效果,开启增量训练后默认选取10%训练基准模型的数据混合进行训练。
- 您也可以选择不使用增量训练,直接在学生模型上进行训练。
训练方法与参数配置
共有两种训练方式,根据模型的类型选择不同的方式。
训练方法 | 简单描述 |
---|---|
全量更新 | 全量更新在训练过程中对大模型的全部参数进行更新 |
LoRA | 训练过程中只更新低秩部分的参数,需要的计算资源更少,训练过程更快,可以减少过拟合的风险。 |
- 参数配置
所有蒸馏任务都提供基础的超参数选择,迭代轮次(Epoch)控制模型训练过程中遍历整个数据集的次数;学习率(Learning Rate)控制模型参数更新步长的速度;序列长度(Sequence Length)控制单条数据的最大长度,包括输入和输出。其他超参数详见模型蒸馏页面,可自由配置。
验证集
您可以选择对上面已选择的数据集进行拆分作为验证集,或者指定数据作为验证集。数据拆分比例:拆分构造后的蒸馏数据作为验证集,取值范围为[0-20]。默认取值为5,即验证集占比为5%,训练集占比95%。注意,最多支持1000条数据用于测试。如果数据集大于1000条,将取前1000条数据做验证集。验证集参与计费,价格同训练计费的定价。
闲时调度
本训练任务支持您选择开启闲时训练,任务提交后,等待平台资源空闲时进行调度。不保证资源的独占,训练过程中可能会被抢占。适合对时效性要求不高的任务。其支持范围和价格可查看计费明细。
第三步:发布蒸馏模型
以上所有操作完成后,点击“确定”,则发起学生模型训练的任务。 开启“自动发布”按钮后,模型在蒸馏完成后会自动发布到我的模型中;若模型训练失败,则不自动发布模型。