跳转到主要内容
微调

超参数参考

千问AI平台微调超参数的参考说明与调参建议。

超参数控制模型在微调中的学习方式。创建微调任务时,选择模型后自动显示超参数配置表(参数 / 值 / 范围 / 说明),各参数已设置为优化后的默认值。您可以根据需要调整,点击恢复默认可随时重置。
超参数的默认值和取值范围因所选模型与训练模式不同而变化,部分参数仅在特定模型或训练方式下显示。下表为通用说明,实际参数、默认值与范围以工作台显示为准。

通用参数

以下参数在所有模型与训练方式下均会显示。
工作台名称默认值 / 范围推荐设置说明
批次大小(batch_size)模型相关(如 16,范围 [8, 1024] step 8)使用默认值每步处理的训练样本数。值越大稳定性越好,但需要更多内存。
学习率(learning_rate)模型 / 模式相关(高效训练约 3e-4,全参训练约 1e-5)高效训练 1e-4 量级;全参 / CPT 1e-5 量级控制权重更新的幅度。过大导致不稳定,过小导致收敛过慢。
循环次数(n_epochs)[1, 200] step 1,默认 3(全参默认 1)数据量 < 1 万循环 3–5 次;> 1 万循环 1–2 次完整遍历训练数据集的次数。次数越多,训练时间和成本越高。
验证步数(eval_steps)[1, 2147483647],默认 50(全参默认 500)使用默认值两次验证评估之间的训练步数。值越低指标越频繁,但会拖慢训练。
学习率调整策略(lr_scheduler_type)默认 Linear(全参默认 Cosine)Linear 或 Inverse_sqrt训练期间动态调整学习率的策略。各策略详见学习率调整策略。
序列长度(max_length)模型相关(如 [500, 131072],默认 32768)设为模型支持的最大值单个训练样本的最大 Token 长度。SFT 中超长样本直接丢弃;DPO 会自动截断超出部分,截短后的数据仍参与训练。
学习率预热比例(warmup_ratio)(0, 1),默认 0.05(全参默认 0.005)使用默认值用于学习率预热的训练步数比例。预热有助于稳定早期训练。
权重衰减(weight_decay)(0, 0.2),默认 0.01(全参默认 0.1)使用默认值L2 正则化强度。有助于防止过拟合,维持泛化能力。

LoRA 专属参数

以下参数仅在 LoRA 训练模式下显示。选择全参训练时不显示。
工作台名称默认值 / 范围推荐设置说明
LoRa 秩值(lora_rank)默认 8(可选值以控制台为准)设为模型支持的最大值LoRA 适配器矩阵的秩。值越高容量越大,但计算成本也越高。
LoRa 阿尔法(lora_alpha)默认 16使用默认值LoRA 更新的缩放因子。控制适配器相对于基础模型的影响程度。
LoRa 丢弃率(lora_dropout)(0, 0.2),默认 0.1使用默认值LoRA 层的 Dropout 率。有助于防止适配器权重过拟合。

模型相关参数(按模型显示)

以下参数是否显示、以及默认值,取决于所选模型的架构,并非所有模型都会出现。例如带视觉编码器的 VL / omni 模型会显示冻结与视觉相关参数;loss_scale、save_steps 等也仅在部分模型上显示。是否出现及取值均以工作台显示为准。
工作台名称默认值 / 范围推荐设置说明
是否冻结 VIT(freeze_vit)true / false,默认 true使用默认值是否冻结视觉编码器参数。冻结可加速训练、降低显存,适合仅优化语言理解部分的场景。冻结 VIT 后视觉模型可按 Token 用量计费,详见部署概览。
VIT 学习率(vit_lr)模型相关(如 3e-4)使用默认值视觉编码器的学习率。仅在未冻结 VIT 时生效,通常与语言部分学习率保持一致或更低。
是否冻结 Aligner(freeze_aligner)true / false,默认 false使用默认值是否冻结 Aligner(视觉与语言之间的对齐层)参数。冻结可减少可训练参数、降低显存。
是否冻结 LLM(freeze_llm)true / false,默认 false使用默认值是否冻结 LLM(语言模型主体)参数。冻结 LLM 时仅训练其余部分,适合保留语言能力、只更新视觉等模块的场景。
损失计算策略(loss_scale)last_round / per_message,默认 last_round使用默认值损失的计算方式。last_round 仅在最后一轮计算损失,per_message 对每条消息都计算损失。
保存步数(save_steps)[1, 2147483647],默认 100使用默认值训练过程中保存模型检查点的间隔步长。值越小保存越频繁、占用存储越多。

学习率调整策略

lr_scheduler_type 控制训练过程中学习率的变化曲线。常见策略如下,具体可选项以控制台显示为准。
策略说明
Linear学习率线性递减。适合训练过程较短的任务。
Polynomial按多项式函数递减。内置系数为 1,效果同 Linear,不推荐。
Cosine按余弦曲线变化。适合精细调整、训练较长的任务。
Cosine_with_restarts余弦周期性“重启”至预设值。用于跳出局部最优,但实测重启不稳定,不推荐。
Constant学习率不变,warmup_ratio 无效。适合初步探索。
Constant_with_warmup学习率不变,但 warmup_ratio 有效。适合初步探索。
Inverse_sqrt与迭代次数平方根的倒数正相关。适合 SFT,能平衡学习效率与收敛。
reduce_lr_on_plateau验证指标连续多轮无改进时自动降低学习率。适合难以提升性能时。
学习率下限梯度、最小值均为示意,实际以训练过程为准。

参数适用范围

参数SFTDPOCPTLoRA 模式全参模式
核心通用参数(batch_size / learning_rate / n_epochs / eval_steps / lr_scheduler_type / max_length)适用适用适用适用适用
warmup_ratio / weight_decay适用适用部分模型支持适用适用
LoRA 专属参数(lora_rank / lora_alpha / lora_dropout)适用适用—适用—
模型相关参数(freeze_* / vit_lr / loss_scale / save_steps)视模型视模型视模型视模型视模型
  • CPT 仅支持全参训练,因此 LoRA 相关参数不适用于 CPT 任务。
  • warmup_ratio / weight_decay 在 CPT 任务中是否可用因模型而异,以控制台显示为准。
  • 模型相关参数的显示与否取决于所选模型,与训练方式 / 模式正交,不在此表内逐项展开。

调参建议

  • 从默认值开始。 默认值适用于大多数场景。仅在初始结果不理想时才调整参数。
  • 谨慎调整学习率。 如果训练 loss 不下降,尝试增大学习率。如果 loss 不稳定或剧烈波动,则降低学习率。
  • 监控验证指标。 使用任务详情页的指标标签页观察过拟合——当验证 loss 上升而训练 loss 持续下降时即为过拟合。
  • 小数据集增加 epoch。 训练样本较少时,更多 epoch 可以让模型有更多机会学习规律。
  • 大学习率使用预热。 将 warmup_ratio 设为 0.05 -- 0.1 有助于避免早期训练的不稳定。

相关文档