功能特性
模型微调
1. 模型微调简介
模型微调是一种在已有预训练模型的基础上,通过使用特定任务的数据集进行进一步训练的技术。这种方法允许模型在保持其在大规模数据集上学到的通用知识的同时,适应特定任务的细微差别。使用微调模型,可以获得以下好处:
- 提高性能:微调可以显著提高模型在特定任务上的性能。
- 减少训练时间:相比于从头开始训练模型,微调通常需要较少的训练时间和计算资源。
- 适应特定领域:微调可以帮助模型更好地适应特定领域的数据和任务。
SiliconCloud 平台提供高效的模型微调能力,目前有以下模型支持微调:
- Qwen/Qwen2.5-7B-Instruct
- Qwen/Qwen2.5-14B-Instruct
- Qwen/Qwen2.5-32B-Instruct
- Qwen/Qwen2.5-72B-Instruct 最新支持的模型参考模型微调
2. 使用流程
2.1. 准备数据
- 文件格式:JSONL后缀,每行一个JSON对象
- 每行数据结构:
- 每行必须是一个完整的 JSON 对象
- 必须包含
messages
数组字段 messages
中的每条消息必须包含role
和content
字段role
仅支持:system
/user
/assistant
- 最前面的
system
是可选的,后面的user
/assistant
必须成对出现
如下为数据示例:
2.2. 配置任务
- 填写任务名称
- 选择基础模型
- 上传或选取已上传的训练数据
- 设置验证数据,支持训练集按比例切分(默认 10%),或单独选定验证集
- 配置训练参数
2.3. 开始训练
- 点击”开始微调”
- 等待任务完成
- 获取模型标识符
2.4. 调用模型
- 复制模型标识符 在模型微调页复制对应的模型标识符。
- 通过
/chat/completions
API 即可直接调用微调后的模型(在线体验即将支持)
下面是基于 OpenAI的chat.completions 接口访问微调后模型的例子:
3. 参数配置详解
- 基础训练参数
参数名 | 说明 | 取值范围 | 建议值 | 使用建议 |
---|---|---|---|---|
Learning Rate | 学习速率 | 0-0.1 | 0.0001 | |
Number of Epochs | 训练轮数 | 1-10 | 3 | |
Batch Size | 批次大小 | 1-32 | 8 | |
Max Tokens | 最大标记数 | 0-4096 | 4096 | 根据实际对话长度需求设置 |
- LoRA参数
参数名 | 说明 | 取值范围 | 建议值 | 使用建议 |
---|---|---|---|---|
LoRA Rank | 矩阵秩 | 1-64 | 8 | |
LoRA Alpha | 缩放因子 | 1-128 | 32 | |
LoRA Dropout | 随机丢弃率 | 0-1.0 | 0.05 |
- 场景化配置方案
场景 | Learning Rate | Epochs | Batch Size | LoRA Rank | LoRA Alpha | Dropout |
---|---|---|---|---|---|---|
标准方案 | 0.0001 | 3 | 8 | 8 | 32 | 0.05 |
效果优先 | 0.0001 | 5 | 16 | 16 | 64 | 0.1 |
轻量快速 | 0.0001 | 2 | 8 | 4 | 16 | 0.05 |
4. 数据要求说明
4.1 数据规模
- 建议数据量:100-1000 条
- 单文件上限:10MB
- 总行数上限:1000 行
- 验证集比例:10%
4.2 质量要求
- 数据质量:直接影响模型训练效果
- 内容要求:
- 确保对话内容准确且专业
- 保持一致的回答风格和语气
- 充分覆盖主要业务场景
5. 基于SiliconCloud微调服务来优化业务实战
之前硅基流动开发了智说新语应用,我们通过提示词工程提供一个复杂的提示词来让大模型生成“金句”风格的描述语句。 现在,我们可通过平台的微调功能来压缩提示词并提升效果,让整个的文本生成风格更统一,速度更快,且进一步优化成本。
5.1. 在平台上使用“智说新语”的语料按照上述进行微调。
步骤见模型微调使用流程
详细语料和测试代码见siliconcloud-cookbook
5.2. 对比微调前后的效果
使用方式见模型微调调用模型
5.2 模型输入
-
微调前: Qwen2.5-7B-Instruct 系统Prompt:
-
Qwen2.5-7B-Instruct+智说新语微调后的Prompt:
5.2.2 模型输出
输入 | Qwen2.5-7B-Instruct 模型 | Qwen2.5-7B-Instruct 微调模型 |
---|---|---|
五道口 | VLG,不过是知识的轻轨与资本的交汇站,文青与土豪在此擦肩而过,孰是求知的信徒,孰是逐利的信徒,全凭幸存者的微笑。 | 知识的殿堂与商业的洪流交织,学人的笔记与商人的谈资齐飞,地名犹在,荣光已非。 |
新时代 | claimed to break旧 mold yet still clings to the stirring rhetoric of progress, like a fashion plate who ignores the evolution of fashion。 | 新时代的号角已吹响,然砥砺前行时,方显初心易失之难。 |
创新 | 看似凤凰涅槃的奇迹,实则多数人不过是换汤不换药的换皮游戏。 | 标新立异本是勇气的象征,却在同质化的社会中成了猎奇的代名词。 |
降维打击 | 所谓降维打击,实则是现代文明中的一种高级愚民术,用高深莫测的科技iscard,让普通人以为自己正生活在理性与进步之中,却不知已在智力与道德的低维空间中遭受碾压。。 | 高维智慧轻而易举地碾压低维凡尘,却不知低维众生早已习于在自己的平庸中寻觅慰藉,哪里还懂得高维打击的意义。 |
基金 | 看似为财富增值保驾护航的金融巨轮,实则多数人不过是随波逐流的浮萍,最终沦为填补市场波动的牺牲品。 | 投资者的白日梦,用钱铺路,却常跌入夜的陷阱。 |
5.2.3 微调总结
- 微调后的输出内容风格更统一,输出效果更稳定可控。
- 微调后整个输入长度大大降低,从原始的553个token,降低至8个token,显著降低了输入tokens长度,速度更快,成本得以进一步优化。