Appearance
Yi 会话调优模版
此模版基于 Yi 系列开源模型,无论是否量化,无论 Coder 或 Math 或语言模型类型,DoDo 已经将类模型的复杂 SFT 技术集成为模版,方便客户使用,并且针对不同模型只需更换不通基座模型,以及对感兴趣的训练参数的调整,其他一切完全统一,使用非常简洁方便。
训练参数
训练任务可调整参数说明:
| 参数 | 类型 | 说明 | 备注 |
|---|---|---|---|
| max_seq_length | number | 单条数据的长度,单位为 token。 | |
| lora_alpha | number | 控制 LoRA(Low-Rank Adaptation)层的学习率缩放因子 | |
| lora_dropout | number | 用于在训练过程中随机“丢弃”(即暂时移除)网络中的一些神经元,以减少模型对特定特征的依赖,从而防止过拟合。 | 0 到 1 之间 |
| random_state | number | 控制训练过程随机性 | |
| per_device_train_batch_size | number | ||
| gradient_accumulation_steps | number | 梯度更新时的累积步长 | |
| warmup_steps | number | 学习率预热的步数。 | |
| num_train_epochs | number | 控制训练过程中的迭代轮数。可以根据数据规模适当调整 Epoch 大小。 | |
| max_steps | number | 控制训练过程中的迭代次数。若想提前结束训练,可设置较小的值。 | |
| learning_rate | number | 学习率(LearningRate)是在梯度下降的过程中更新权重时的超参数,可根据经验调整。 | |
| logging_steps | number | 日志保存间隔步数。 | |
| weight_decay | number | 正则化系数(Weight_decay),用于防止模型对训练数据过拟合。 | |
| seed | number | 随机种子,用于初始化训练参数 | 设置一个固定的种子(seed)可以确保每次运行实验时,随机数生成器产生的随机数序列是相同的。这在机器学习和深度学习中非常重要,因为它可以帮助研究者确保实验的可重复性。 |
| lora_r | number | lora_r 设置的值越大,模型的灵活性越高,但计算负担也会增加。支持 8, 16, 32, 64, 128 | 可根据算力调整 |
| dataset_num_proc | number | 数据集使用次数 | |
| optim | number | 参考优化器配置 | |
| lr_scheduler_type | number | 参考LR学习率类型配置 | |
| model_save_type | number | 参考模型保存格式 | |
| load_in_4bit | number | 0: False ,1: True | 说明训练的基础模型的量化位数,1 = 4bit 量化,0 = 其他 |
| use_rslora | number | 0: False ,1: True | 1 = 可进一步降低显存开销,一般不开启,因为可能的精度影响 |
| overwrite_output_dir | number | 0: False ,1: True | 1 = 当训练任务异常时,任务再次启动时会从 checkpoint 输出目录加载最近的 checkpoint 模型,0 = 不使用恢复训练; 注意:此参数只在挂载了上次训练任务的 checkpoint 目录时才有效,默认为 0 |
| save_total_limit | number | checkpoint 总的保存数量 | |
| save_steps | number | 每隔一定步长保存一个 checkpoint 模型 | save_strategy="steps”有效 |
| save_strategy | number | 参考`checkpoint 模型保存策略 |
checkpoint模型保存策略:
python
"0": "no", # 不保存
"1": "epoch", # 在每个 epoch 结束时保存
"2": "steps", # 每隔 save_steps 后保存LR学习率类型配置:
python
"0": "linear", # 从初始学习率线性下降到 0
"1": "cosine", # 学习率按照余弦函数变化,在训练过程中逐步减小
"2": "cosine_with_restarts", # 带重启的余弦退火调度器,在训练过程中周期性地重置学习率,然后按余弦函数衰减,每隔一段时间重启余弦曲线
"3": "polynomial", # 学习率按照多项式函数下降优化器配置:
python
"0": "adamw_8bit",
"1": "adamw”模型保存格式:
python
"0": "lora", # 此模型权重仅为LoRA层,推理过程需加载训练基础模型
"1": "merged_16bit", # 此模型内含LoRA层,直接推理
"2": "merged_4bit" # 此模型内含LoRA层,整体模型为4bit量化版本,直接推理模型输出
- 根据模型保存格式输出的最终模型将存放在 DoDo 平台的内部 S3 存储中,也可以是客户在平台内部配置的存储路
- checkpoint 模型,如果在训练任务拉起时配置了”自定义内容输出位置”,那么 checkpoint 模型将会保存在配置路径上。
训练数据标准
会话训练数据样例:
json
[
{"role": "system", "content": "你是一位英语专家"}
{"role": "user", "content": "请翻译苹果"}
{"role": "assistant", "content": "apple"}
]用户可根据样例构造满足自身企业要求的训练数据。
支持模型列表
| Model | Base | Instruct |
|---|---|---|
Yi | 6B (v 1.5),34B | 34B |