大模型训练全流程实战指南工具篇(十)—— 小白也能懂的大模型训练参数万字详解

前言

上篇文章大模型训练全流程实战指南工具篇(九)——LLamaFactory大模型训练工具使用指南笔者详细介绍了 LLaMA Factory 的环境部署、数据集注册,并带大家跑通了一个完整的大模型微调流程。

但相信不少读者在实操过程中都会遇到这样的困惑:流程是跑通了,可面对配置文件中那些密密麻麻的参数,心里却完全没有底——它们到底在控制什么?调大调小会带来什么影响?为什么别人用的配置我照搬过来效果却差很多?

这正是笔者撰写大模型训练合集的初衷。笔者始终认为,学习大模型训练,不能只停留在“能跑通”的层面,更要知道“为什么这么设”。知其然,更要知其所以然,才能真正掌握这项技术,遇到问题时才能从容定位、灵活调优。

因此,本期文章笔者将系统讲解 LLaMA Factory 的训练方法与参数配置,通过万字长文、直观易懂的比喻帮助大家理解每个参数的作用,建立起从“流程可运行”到“训练稳定、效果可控”的完整认知。希望这篇文章能帮大家真正跨过大模型训练的门槛,一步步成长为能够独立把控训练全流程的高手!还等什么,接着往下看吧~

一、大模型训练方法

如果大家跟着上一篇文章大模型训练全流程实战指南工具篇(九)——LLamaFactory大模型训练工具使用指南完整操作下来,应该已经跑通了一个微调流程。但大家可能也注意到,笔者当时选用的是 LoRA 训练方法。为什么是 LoRA?它和其他方法有什么不同?

LLaMA Factory 支持多种训练方法,其中最具代表性的三种分别是:全量训练、LoRA 训练 和 QLoRA 训练。为了帮大家直观理解它们的区别,笔者这里把大模型比作一套房子,把大模型训练比作一次翻新改造。

1.1 全参数训练:给房子“全部翻新”,但小心拆了承重墙

全参数训练最直接——加载预训练模型后,对所有层的所有参数进行梯度更新。相当于把房子从地基到墙面全部翻新一遍,理论上改造效果最好,但代价也最大。

首先是显存成本高。以 LLaMA-7B 模型为例,FP16 精度下模型本身占约 14GB 显存,加上 Adam 优化器需要维护动量和方差状态(额外约 28GB),再算上数据通信等开销,总显存轻松突破百 G,通常需要好几张 A100/H100 这样的高端显卡才能支撑。

其次是对数据质量要求极高。全参数训练就像一个激进的装修队,会改动房子的每一处结构。如果你的图纸(训练数据)不够详细(数据量少)或画错了(质量差),装修队就可能把原本牢固的承重墙拆掉,把好的水电结构改坏。

对应到模型上,这就是灾难性遗忘:为了强行拟合少量或低质数据,模型原有的通用知识(语言能力、推理能力)被大幅覆盖或破坏。结果往往是你的特定任务还没学好,模型原本会的能力(如写代码、做数学题)已经严重退化了。

因此,全参数训练是一把双刃剑。它需要充足且高质量的标注数据(通常建议上百万条甚至更多)和强大的算力做支撑。对资源有限、数据不多的初学者和中小企业来说,这条路往往风险大于收益。

1.2 LoRA 训练:给房子“局部改造”,不拆承重墙也能焕然一新

与全参数训练的“大拆大建”不同,LoRA 选择了一条更克制的路径:不改动原始模型的任何参数,只在一旁加一个轻量级的“适配器” 。

这就像装修时,不动承重墙、不改水电结构,只是换了新家具、重新刷了墙面、调整了软装。房子的主体框架完好无损,但整体功能性和风格却精准地满足了你当下的需求。

从数学上看,LoRA 把权重的变化量 ΔW 分解为两个低秩矩阵的乘积(A 和 B),通过这种方式“侧面”修改原参数,而原始参数始终保持不变(作为工程人员大家了解基本思想即可,可以不深究数学细节)。

比显存节省更重要的,是它对“图纸”——训练数据的宽容度。

全参数训练需要海量、高质量的“精准图纸”,否则装修队会乱拆乱改。而 LoRA 因为原始模型的“骨架”完全冻结不动,只在表面做文章。即便你的图纸只有几百条、质量也未必完美,它也不会破坏模型原有的语言能力和推理能力。最多是“新家具没摆好”(训练效果不佳),不会出现“房子塌了”(能力崩塌)的情况。

这种“低风险、低成本”的特性,让 LoRA 成为中小企业、个人开发者和学术研究者入门大模型训练的最佳选择。  你不需要成千上万条标注数据,也不需要昂贵的 A100 集群,一块普通消费级显卡加上几千几万条精心整理的数据,就能让模型学会你想要的技能。

1.3 QLoRA 训练:更省成本的“局部改造”,用“经济型材料”也能出精品

如果说 LoRA 是在不动主体结构的前提下换家具、刷墙面,那 QLoRA 则更进一步——它连家具都换成了“高性价比的环保材料”。

QLoRA 的核心创新在于将原始模型压缩到 4 位精度(NF4 量化) 。打个比方,全参数训练用的是实木梁柱,LoRA 用的是普通钢筋,而 QLoRA 用的是“高强度空心钢”——在保证结构强度的前提下,大幅降低材料重量和成本。量化技术进一步减少了训练时的显存占用(对量化技术有遗忘的读者,可回顾我前期的文章大模型训练全流程实战指南基础篇(三)——大模型本地部署实战(Vllm与Ollama)

但省钱不能以“房子塌了”为代价。

和 LoRA 一样,QLoRA 同样冻结了原始模型的“骨架” (基座模型参数),只训练旁边那小小的适配器。因此它对数据的宽容度依然极高:即便只有几百条数据、质量参差不齐,它也不会破坏模型原有的通用能力。最多是“新家具的款式没选对”(效果稍差),绝不会出现“承重墙被拆”的灾难性遗忘。

实测表明,QLoRA 在多数 NLP 任务上的表现能达到LORA训练的 95% 以上。这意味着,你只需要一张普通显卡、几百条数据,就能以极低的成本,安全、稳定地让大模型学会你想要的技能。

如果说 LoRA 是个人和小团队的“最优解”,那 QLoRA 就是“极限性价比之选” ——它把大模型训练的门槛拉到了普通人触手可及的高度。

4 如何选择大模型训练方法?

了解了这三种典型方法后,如何选择其实已经比较清晰了。综合笔者的实战经验来看,我依然推荐 LoRA。

有粉丝可能会问:既然 QLoRA 更省资源,为什么不直接用它?综合实测经验,QLoRA 确实更省显存,但在某些对数值精度敏感的任务中可能出现轻微的性能退化。对绝大多数训练场景来说,LoRA 已经足够好用,且配置简单、调试方便。

结合中小企业、个人科研者的核心痛点,LoRA 的优势一目了然:

  1. 算力友好

    无需多块高端 GPU,一块 8–12GB 显存的消费级显卡(如 RTX 3060/4060/3090)即可完成 7B 模型的训练。

  2. 成本可控

    可训练参数极少,训练周期短,云 GPU 成本大幅降低。

  3. 灵活切换

    可以为不同任务训练不同的 LoRA 权重(如客服、写作、编程),运行时按需加载,实现  “一基座,多专家”  的灵活部署。

  4. 易于分享与版本管理

    LoRA 权重文件通常只有几十 MB,方便保存、分享和版本迭代。

  5. 推理无额外开销

    训练完成后可将 LoRA 权重合并回原模型,部署时完全无性能损耗。

简单来说,LoRA 训练用最少的资源解决了“能不能训”的问题,同时保留了足够的灵活性和效果,是绝大多数个人和小团队入局大模型训练的最佳选择。

二、LLaMA Factory LoRA 配置文件详解

下面进入本章的核心内容:LLaMAFactory LoRA 配置文件详解。通过上一章的介绍大家应该已经发现,用 LLaMA Factory 训练大模型其实非常简单——写好配置文件 test_qwen_sft.yaml,然后执行一条命令:

 llamafactory-cli train /workspace/test_sft/test_qwen_sft.yaml

整体操作并不复杂,但真正考验功力的地方在于如何写好这份配置文件。本节笔者就用通俗易懂的语言,对上篇文章中使用过的训练参数进行逐一拆解,确保大家都能真正理解大模型训练的核心知识。

在深入参数之前,笔者先明确一个核心概念:大模型训练的本质,就是让模型学习用户提供的数据分布,使模型生成的内容与用户提供的数据越来越像。那么,模型生成的内容和用户数据之间的差异,就需要一个量化指标来衡量——这个指标就是 loss。训练的目标,就是让 loss 尽可能降到最低。用一张图来形象表示,就是从起始点不断下降,靠近目标值。

如果大家跟着上篇文章实操过,应该会在模型保存目录 /workspace/test_sft/Qwen2_5_sft/ 下看到一个 trainer_log.jsonl 文件,里面就记录了每个步骤的 loss 值,用来判断模型的拟合情况。

有了这个概念笔者就可以开始逐一解析配置文件中的参数了。上篇文章使用的配置文件路径为 /workspace/test_sft/test_qwen_sft.yaml。

2.1 模型参

  • ### model
    model_name_or_path: /workspace/Qwen2_5_0_5
    trust_remote_code: true
  • model_name_or_path:模型文件的本地存储路径,指定要训练的基础大模型位置。LLaMA Factory 会从这个路径读取原始模型参数。

  • trust_remote_code:是否信任模型的自定义代码。部分模型(如通义千问)需要加载自定义代码才能正常读取模型结构,因此需要设为 true。

2.2 训练方法相关参数

  • ### method
    stage: sft
    do_train: true
    finetuning_type: lora
    lora_rank: 8
    lora_target: all
    • stage:表示训练阶段。pt 表示预训练(pre-training),sft 表示指令微调(supervised fine-tuning)。这里指定为 sft。

    • do_train:是否开启训练。设为 true 启动训练流程,设为 false 则只验证配置不执行训练。

    • finetuning_type:微调类型。指定为 lora,表示采用 LoRA 微调模式,而非全参数微调或 QLoRA。

    以上三个参数比较好理解,接下来三个参数与 LoRA 机制密切相关,笔者结合 LoRA 的原理来重点讲解。

    先回顾一下 LoRA 的核心思想:通过引入一个轻量级的“适配器”来间接影响原模型参数,而原始参数本身保持不变。公式可以简化为:

    图片

    其中:

    • W0 为基座模型冻结权重(原模型参数,不参与训练)
      BA 为低秩矩阵的乘积(可训练的新参数)
      r 为低秩矩阵的秩(lora_rank)
      α 为缩放因子(lora_alpha)

    这个结构可以用下图直观表示:

    对应到配置文件中,就是以下三个参数:

    • lora_rank(即公式中的 r):低秩矩阵的秩数。数值越大,适配器的表达能力越强,能处理更复杂的任务,但可训练参数增多,显存占用也相应增加;数值越小,资源消耗越低,适配能力稍弱。默认值为 8,推荐范围 4~64。

    • lora_alpha(即公式中的 α):可以理解为 LoRA 的“音量调节旋钮”,控制低秩矩阵学到的特征对基座模型的影响强度。数值越大,适配器的影响越“激进”;数值越小,模型越贴近基座模型的原生能力。一般设为 lora_rank 的 1~2 倍(例如 rank=8 时 alpha=16),以保持缩放因子平衡。LLaMA Factory 默认将 lora_alpha 设为 lora_rank 的 2 倍。

    • lora_target:指定在模型的哪些层和结构上附加 LoRA 参数。笔者在之前的文章大模型训练全流程实战指南基础篇(二)——大模型文件结构解读与原理解析中讲过,大模型由不同层构成,不同层又通过注意力机制具备不同结构。通常情况下,直接设为 all 匹配所有层是最简单的选择;如果需要精细控制,推荐优先在 q_proj 和 v_proj 上添加(查询投影层和值投影层),因为这两个位置对任务迁移最敏感。

    通过公式和图示,LoRA 相关参数的配置逻辑是不是就清晰多了?

    2.3 数据集配置

    • dataset: alpaca_zh_demo
      template: qwen
      cutoff_len: 2048
      max_samples: 1000
      preprocessing_num_workers: 16
      dataloader_num_workers: 4

    • dataset:指定训练所用的数据集。需要注意,自定义数据集需要在 dataset_info.json 中预先注册,具体方法可参考上一篇文章。

    • template:大模型的对话模板,也就是文章大模型训练全流程实战指南基础篇(二)——大模型文件结构解读与原理解析中介绍过的 chat_template。LLaMA Factory 在后台处理时会自动将数据按照该模板组织成模型可接受的格式。

    • cutoff_len:最大截断长度。数据集中不同文本的长度不一,但模型的输入需要统一长度。该参数指定一个最大长度,超出部分被截断,不足部分用 <pad> 填充。注意,单条数据不宜过长,否则会显著增加显存占用。对于 7B 模型,通用场景设为 2048 即可,长文本场景可设为 4096。

    • max_samples:训练使用的最大样本数。有时候并不需要把全部数据都用于训练,该参数可以限制实际使用的样本数量。

    • preprocessing_num_workers:数据预处理时的线程数。数据集需要与模板结合才能生成模型可用的输入,这个过程可以并行加速,该参数用来控制预处理线程数。

    • dataloader_num_workers:数据加载时的线程数。数据要先加载到内存才能快速喂给模型训练,该参数控制加载数据的线程数,可根据显存大小适当调整

    2.4 输出配置

    • output_dir: /workspace/test_sft/Qwen2_5_sft
      logging_steps: 10
      save_steps: 500
      plot_loss: true
      overwrite_output_dir: true
      save_only_model: false
      report_to: none

    • output_dir:训练好的 LoRA 适配器保存路径。

    • logging_steps:日志打印的步数间隔。比如,如果一次传入 100 条数据,每一步梯度更新处理 10 条数据(具体与后面的 gradient_accumulation_steps 相关),那么总共会有 10 步。每 10 步会在日志文件中记录一次 loss。

    • save_steps:模型保存的步数间隔。训练过程中不仅只在最后保存一次模型,为了防止意外中断或需要对比中间结果,建议定期保存检查点。该参数控制每多少步保存一次适配器。

    • overwrite_output_dir:如果输出目录不为空,是否覆盖目录内容。设为 true 表示覆盖。

    • save_only_model:控制保存内容。false 表示保存完整断点(支持断点续训);true 表示仅保存权重(用于推理)。

    • report_to:为了更直观地监控训练过程,可以将训练日志上传到一些公开平台(如 wandb、swanlab),实现远程实时查看。该参数用于配置这些平台的接入方式。

    2.5 核心训练超参数(重要!)

    大家常说,大模型训练工程师调参的过程就像太上老君炼仙丹,需要在不同参数的组合中反复尝试,才能炼出“最好的丹”。这些“不同参数的组合”,指的就是核心训练超参数。可以说,超参数的设置是大模型训练工程师的看家本领。

    为了让大家更直观地理解这些超参数,笔者依然用前面那张loss 下降图 来类比:大模型的训练,本质上就是从起始点不断下降、寻找最优 loss 的过程。虽然实际模型是一个极其高维的函数,远不止二维这么简单,但背后的思想是一致的——都是在寻找一个尽可能低的 loss 点。

    首先来看看大模型训练相关的超参数配置:

    • ### train
      per_device_train_batch_size: 1
      gradient_accumulation_steps: 8
      num_train_epochs: 1.0
      learning_rate: 1.0e-4
      lr_scheduler_type: cosine
      warmup_ratio: 0.1
      bf16: true
      ddp_timeout: 180000000
      resume_from_checkpoint: null 

    参数一: per_device_train_batch_size

    假设模型当前在起点位置,它该朝哪个方向走才能到达最优解?是方向一、方向二,还是方向三、方向四?显然,方向四才是正确的。那么,这个“方向四”是如何计算出来的?

    简单来说,就是计算训练数据与当前模型 loss 之间的“斜率”(即梯度),从而确定下降方向。但训练数据量通常巨大,无法一次性全部计算。于是采用一个直观的方法:每次只拿一小部分数据来计算方向和步长,用局部趋势近似整体方向。这个小批量的数据量,就是 per_device_train_batch_size。

    参数二: gradient_accumulation_steps

    如果单批次数据量太小,每算一小批就更新一次权重可能过于“草率”。这时候可以累积多个批次的梯度,然后再统一更新一次,用小批次模拟大批次的效果。这就是 gradient_accumulation_steps 的作用。

    有效批次大小 = 单卡批次大小 × 梯度累积步数。以上面配置为例,1 × 8 = 8,相当于每处理 8 条数据才更新一次梯度。

    参数三: num_train_epochs

    这个参数很好理解——将全部训练数据完整训练多少遍。num_train_epochs 设为 1,表示所有数据只训练一轮。

    结合前面几个参数,大家来算一下训练的总步数。配置中 max_samples = 1000(取 1000 条数据),num_train_epochs = 1,有效批次大小为 1 × 8 = 8,因此总步数为:

    (1000*1)/(1*8) = 125步

    而 logging_steps 设为 10,表示每 10 步记录一次 loss。看看训练日志,是不是一目了然?

    参数四: learning_rate

    梯度下降不仅需要方向,还需要步幅。就像走路,方向对了,迈多大的步子决定了最终到达的位置。这时候有人可能会想:既然要快速下降,那把学习率设大一点不就好了?

    其实不然。看下面这张图,如果当前在“中间值 1”的位置,学习率设置过大,一步就可能跨过最优解,直接跳到“中间值 2”,反而错过了最低点。所以,学习率需要谨慎设置。

    参数五: warmup_ratio 与 lr_scheduler_type

    由于一开始不确定设置的学习率是否合适,通常会让学习率从一个很小的值逐渐上升到设定值,这个过程叫 warmup (相当于慢慢升温的过程,和谈恋爱一样)。warmup_ratio 表示 warmup 阶段占总训练步数的比例。例如总步数为 100,warmup_ratio = 0.1,那么前 10 步学习率从 0 线性增加到设定值。

    而随着训练接近尾声,为了防止在最优解附近震荡,比如下图中就从中间值n直接跳到了中间值n+1, 然后反复横跳。要解决这个问题往往还需要让学习率逐渐衰减。lr_scheduler_type 就是用来指定衰减策略的,LoRA 微调推荐使用 cosine(余弦退火),学习率会按照余弦曲线平滑下降。

    参数六: 其他参数

    其它的参数就比较好理解了

    • bf16:混合精度训练开关。部分计算使用 BF16(16 位浮点数),仅在优化器更新时使用 FP32(32 位浮点数),对于每个参数都是32位浮点数表示的大模型可以有效降低显存占用。

    • ddp_timeout:分布式训练的超时时间。大模型训练耗时较长,设置一个较长的超时时间可以防止因网络波动等原因提前中断训练。

    • resume_from_checkpoint:断点续训的起点。如果训练意外中断,可以指定之前保存的检查点目录(通过 save_steps 保存的中间结果)来恢复训练。设为 null 表示从头开始训练。

    2.6 验证集配置

    虽然在上一篇文章的配置文件中,验证集相关参数被笔者注释掉了。但在实际训练中,这部分配置非常必要。

    试想一下,如果把所有数据都用来训练,然后计算 loss,就像让学生做的考试题全是平时练过的——考试时测不出真实水平。相反,如果用大部分数据训练(题海战术),留出一小部分数据作为验证集(模拟考试),用这部分数据来评估模型的 loss,才能更客观地反映模型的泛化能力。

    • # eval_dataset: alpaca_en_demo
      # val_size: 0.1
      # per_device_eval_batch_size: 1
      # eval_strategy: steps
      # eval_steps: 500
    • eval_dataset:指定一个独立的验证集。该数据集同样需要在 dataset_info.json 中预先注册。

    • val_size:如果不想单独准备验证集,也可以设置这个参数,从训练集中划出一部分数据作为验证集(0.1 表示划出 10%)。

    • per_device_eval_batch_size:评估时的批处理大小,用于加速评估过程。

    • eval_strategy 与 eval_steps:评估策略,eval_strategy: steps 表示按步数定期评估,eval_steps: 500 表示每 500 步进行一次验证。

    通过验证集配置,大家可以实时观察模型在“考试”中的表现,避免模型只会“背题”而不会“做题”。

    三、LoRA 参数调优初步指南

    经过前面两节的详细讲解,大家应该已经对每个参数的含义有了比较清晰的认识。但理论归理论,真正动手配置时,可能还是会纠结:这个值设多少合适?为什么别人用的配置我照搬却效果不好?

    本节笔者先给出一个相对稳妥的参数设置建议,帮助大家快速上手。至于在什么场景下应该调整哪些参数、如何根据训练曲线进行针对性优化,笔者会在下期文章中结合实际工作案例详细展开(欢迎关注我的微信公众号 大模型真好玩,更多智能体开发和大模型训练教程会第一时间在公众号上发布)。

    3.1 lora_rank 调优规则

    lora_rank 决定了适配器的表达能力。数值越大,可训练参数越多,模型适配复杂任务的能力越强,但显存占用也相应增加。可以参考以下经验值:

    • 7B 及以下模型

      推荐 4–8,基线设为 8 即可覆盖大部分场景

    • 13B 模型

      推荐 8–16,可根据显存情况适当调整

    • 显存紧张时

      可降至 2–4,优先保证训练能够跑起来

    • 任务复杂度高

      可升至 16–32,提升模型对复杂模式的拟合能力

    核心原则:先保证显存够用,再根据任务复杂度逐步提升 rank。


    3.2 lora_alpha 调优规则

    lora_alpha 控制适配器对基座模型的影响强度。它与 lora_rank 共同决定了公式中的缩放因子 

    ,建议联动调整:

    • 通用基线:α=r(如 r=8 时 alpha=8),可以适配 90% 以上的常规微调场景。

    • 欠拟合时:训练 loss 下降缓慢、验证效果不佳,可将 α 设为 2*r(如 r=8 时 alpha=16),增强微调力度。

    • 过拟合时:训练 loss 持续走低但验证 loss 不降反升,可适当降低 α,削弱微调强度,保留基座模型的泛化能力。

    核心原则:保持 α/r 在 1~2 之间,既能保证训练稳定,又留出足够的调节空间

    3.3 learning_rate 调优规则

    学习率是影响训练收敛速度和稳定性的关键参数。LoRA 微调通常比全参数微调可以使用稍高的学习率:

    推荐范围:1*10^-4  —— 2*10^-4

    loss 震荡或发散:说明学习率偏高,建议适当降低

    loss 下降极其缓慢:说明学习率偏低,可尝试小幅提升

    核心原则:从小值开始试探,观察 loss 曲线再逐步调整。

    3.4 批次组合调优(显存优先)

    有效批次大小 = per_device_train_batch_size × gradient_accumulation_steps,建议目标有效批次不低于 8,以保证梯度估计的稳定性。

    常见组合示例:

    • 单卡批次 = 1,梯度累积 = 8 → 有效批次 = 8

    • 单卡批次 = 1,梯度累积 = 16 → 有效批次 = 16

    • 单卡批次 = 2,梯度累积 = 4 → 有效批次 = 8

    如果显存不足,优先降低单卡批次大小,然后用梯度累积来补偿有效批次。

    核心原则:在显存允许的范围内,优先保证有效批次足够,再考虑提升单卡批次以加快训练速度。


    以上就是 LoRA 训练方法的核心参数配置指南。内容虽多,但每个参数的背后都有其设计逻辑。如果一次消化不完,可以收藏下来,在实际训练中对照着看。也欢迎大家在实际操作中遇到问题时,在评论区留言交流。

    四、LLaMA Factory LoRA 合并参数详解

    在上篇文章大模型训练全流程实战指南工具篇(九)——LLamaFactory大模型训练工具使用指南中笔者曾提到,LoRA 训练出来的只是一个轻量级的“适配器”,它本身并不能直接用于推理。需要将这个适配器与原始模型融合,才能得到一个完整的、可独立部署的模型。这个融合过程,就需要用到合并配置文件。

    下面就是合并配置文件的示例(通常命名为 test_qwen_merge_sft.yaml):

    • ### Note: DO NOT use quantized model or quantization_bit when merging lora adapters
      
      ### model
      model_name_or_path: /workspace/Qwen2_5_0_5
      adapter_name_or_path: /workspace/test_sft/Qwen2_5_sft
      template: qwen
      trust_remote_code: true
      
      ### export
      export_dir: /workspace/test_sft/Qwen2_5_sft_all
      export_size: 5
      export_device: cpu  # choices: [cpu, auto]
      export_legacy_format: false

    相比于训练配置文件,合并配置文件的参数要简洁得多,理解起来也相对容易。笔者逐项拆解。

    4.1 模型定义部分

    这部分用于指定“基础模型”和“要合并的适配器”。

    • model_name_or_path: /workspace/Qwen2_5_0_5
      这是基础模型的本地路径。合并操作会把 LoRA 适配器中学到的权重变化,注入到这个基础模型的对应层中。这里使用的是 Qwen2.5 0.5B 版本。

    • adapter_name_or_path: /workspace/test_sft/Qwen2_5_sft
      这是LoRA 适配器的路径。使用 LLaMA Factory 进行微调后,保存的并不是一个完整的全量模型,而是一个很小的“补丁”文件包,通常包含 adapter_model.bin 和 adapter_config.json 等文件。这个参数就是告诉工具:请把这个“补丁”合并到基础模型上。

    • template: qwen
      指定对话模板。不同模型家族(如 Qwen、Llama、Baichuan)使用的对话格式各不相同,包括 system、user、assistant 的角色标记和结束符都有差异。由于基础模型是 Qwen2.5,这里必须设置为 qwen,确保合并后的模型在调用聊天接口时格式正确。

    • trust_remote_code: true
      是否信任模型仓库中的自定义代码。对于一些非标准架构的模型(Qwen 系列就经常包含自定义的建模文件),加载时可能需要执行这些自定义代码才能正确读取模型结构。设置为 true 可以避免因代码执行权限问题导致的加载失败。

    4.2 导出部分

    这部分定义了合并后模型的输出方式。

    • export_dir: /workspace/test_sft/Qwen2_5_sft_all
      合并后模型的输出目录。执行合并命令后,LoRA 适配器的权重会被计算并融合进基础模型,最终在这个目录下生成一个完整的、可独立部署的模型文件(如 model.safetensors 或 pytorch_model.bin)。你可以把这个目录当作一个全新的、可以直接用于推理的模型来使用。

    • export_size: 5
      单个模型文件的大小限制(单位:GB)。如果合并后的模型总大小超过这个值,导出程序会自动将模型权重拆分成多个分片文件。例如,模型总大小为 10GB,设置 export_size: 5 后,会生成两个约 5GB 的文件(如 model-00001-of-00002.safetensors)。这种分片机制可以绕过一些文件系统对大文件的限制,也是 Hugging Face 和 ModelScope 上常见的大模型分发方式。

    • export_device: cpu
      指定合并运算时使用的设备。

      • cpu

        在 CPU 上进行合并。虽然速度较慢,但不会占用显存。如果你的显存不足以同时加载基础模型和 LoRA 适配器进行合并,建议使用 CPU。

      • auto

        自动选择可用设备(通常是 GPU)。合并速度更快,但需要确保显存足够容纳基础模型和计算过程中的临时数据。需要提醒的是,某些环境下使用 auto 可能会遇到兼容性问题,如果遇到奇怪的报错,可以尝试切回 cpu。

    • export_legacy_format: false
      决定输出文件的格式。

      • false

        (推荐):使用 safetensors 格式。这是一种更安全、加载速度更快的模型存储格式,能有效避免因 pickle 反序列化带来的安全风险。目前主流的大模型仓库大多采用这种格式。

      • true

        :使用传统的 bin 格式(pytorch_model.bin),适用于需要兼容旧代码的场景。


    合并完成后,大家得到的就不再是一个“补丁”了,而是一个完整的、可以直接本地加载步数的独立模型。这个模型既保留了基础模型的通用能力,又融入了微调时学到的特定技能,可以随时用于推理或进一步部署。

    五、总结

    本文系统讲解了 LLaMA Factory 的核心训练参数,从全量训练、LoRA 到 QLoRA 的方法对比,到LORA配置文件中每一个参数的含义与调优建议,再到适配器的合并导出,通过形象的比喻和详尽的内容确保大家都能掌握大模型训练的参数,帮助大家真正理解大模型训练的“内功心法”,从“能跑通”走向“效果好、可控”。下篇文章笔者将结合真实业务场景,深入讲解如何根据训练日志动态调整参数,手把手带大家学会炼出“最好的仙丹”的过程。欢迎持续关注!

    要想完全学懂还是需要亲手实践一下,大家可以照着笔者的教程亲手实践一遍。

    相关推荐

    云端部署 OpenClaw:打造 24 小时“数字生命”助手

    谁还在被AI“画大饼”?写邮件要自己点发送,列待办要自己去执行,看似智能实则只是 “嘴炮工具”,根本落不了地。但 2026 年初这款现象级 AI 产品的出现,彻底改变了这一现状 —— 它就是被网友亲切称为「那只龙虾」🦞的,一款真正能 “动手办事” 的。从Clawdbot到Moltbot,再到如今的OpenClaw,这款开源AI智能体框架在短短一个月内,,朋友圈、开发者社区全是它的身影,TechCrunch、Forbes等外媒争相报道,成为2026年初最现象级的AI产品。

    Lab4AI的博客 2451

    LlamaFactory春节特供:AI 精准拿捏对联格律,告别对仗翻车

    如今大语言模型早已能写文、答惑、创作,可面对对联这种讲究格律、对仗、意境的传统文体,通用大模型却屡屡 “水土不服”。问题的核心,在于模型缺少足量优质的对联专业样本,没能真正吃透中文对仗的规则。而微调(Fine-tuning)恰好能补上这一课:无需从零打造新模型,只需让现有大模型基于高质量对联数据 “拜师学艺”,就能掌握格律与意境的创作要领。借助LlamaFactory微调工具,大模型也能精准拿捏对联的对仗之美、平仄之韵,写出既有文化底蕴又贴合新春氛围的合格对联,让 AI 也能为传统年俗添上一笔新意。

    Lab4AI的博客 1792

    奔赴AGI,算力同行|Lab4AI亮相2026中国生成式AI大会

    2026年4月21-22日,2026中国生成式AI大会(GenAICon 2026) 在北京富力万丽酒店盛大启幕!

    Lab4AI的博客 422

    RSRCC:基于检索增强 Best-of-N 排序构建的遥感区域变化理解基准数据集

    本研究构建的RSRCC是首个面向遥感局部细粒度变化推理的问答基准,通过分层半自动化流水线实现了高质量、规模化的数据生成。

    Lab4AI的博客 505

    HSG: Hyperbolic Scene Graph

    HSG通过双曲几何学习场景图嵌入,有效捕获场所-物体层级蕴含关系,在保持检索性能的同时大幅提升场景图结构质量,验证了双曲表示在结构化视觉推理中的有效性。

    Lab4AI的博客 613

    Aligning Agents via Planning: A Benchmark for Trajectory-Level Reward

    本研究提出Plan-RewardBench轨迹级奖励建模基准,填补了工具型智能体长时序轨迹奖励模型评估的空白,通过严谨的数据集构建与统一测评,证实现有奖励模型在轨迹级判别上存在显著缺陷,长时序规划、动态约束跟踪、安全拒绝等能力亟待提升,为智能体对齐研究提供了关键测评与数据支撑。

    Lab4AI的博客 587

    算力赋能三维视觉创新,Lab4AI亮相 China3DV 2026

    2026年 4 月 17—19 日,第五届中国三维视觉大会(China3DV 2026)在杭州国际博览中心召开,作为国内该领域最高规格学术盛会,聚焦三维重建、具身智能等人前沿方向;大模型实验室(lab4ai.cn)作为重要生态伙伴,不仅提供 H800 等高端 GPU 算力支撑,还通过开箱即用的开发环境、OpenClaw 科研专家 Agent 等全流程工具破解科研痛点,同时推出 AI 课程、权威竞赛合作等福利助力青年学者成长,助力三维视觉产学研深度融合与技术落地。

    Lab4AI的博客 776

    GAViD: A Large-Scale Multimodal Dataset for Context-Aware Group Affect Recognition from Videos

    本研究构建了当前规模最大、标注最完备的**多模态上下文感知群体情感视频数据集GAViD**,并提出CAGNet模型实现视觉、音频、上下文信息的有效融合,在效价分类与离散情感识别任务上取得领先性能,填补了领域内数据与模型的双重缺口,为自然场景下群体情感计算研究提供了关键支撑。

    Lab4AI的博客 660

    大模型训练全流程实战指南工具篇(十一)—— 大模型训练参数调优实战:从小白到调参高手

    大模型训练全流程实战指南工具篇(十一)—— 大模型训练参数调优实战:从小白到调参高手

    Lab4AI的博客 869

    KNOWLEDGE IS NOT STATIC: ORDER-AWARE HYPERGRAPH RAG FOR LANGUAGE MODELS(论文解读)

    本研究推翻了RAG领域“检索证据可视为无序集合”的核心假设,提出OKH-RAG框架,将顺序作为核心结构属性融入超图RAG,实现高阶知识交互与时序关系的统一建模。实验证明,在顺序敏感的领域推理任务中,证据的组织顺序与内容本身同等重要,顺序感知轨迹检索可显著提升大模型的推理准确性与事实一致性。

    Lab4AI的博客 637

    ICLR 2026|上海交通提出 π³,突破参考视图束缚,提升 3D 几何重建鲁棒性

    π³通过全排列等变设计彻底消除固定参考视图的归纳偏置,构建了鲁棒、高效、可扩展的前馈式视觉几何重建模型,在多项核心任务上刷新 SOTA。该研究存在局限性:无法处理透明物体,重建几何细节精度不及扩散类方法,点云生成易产生网格状伪影。未来可围绕透明物体建模优化、几何细节精度提升、点云生成伪影消除等方向展开拓展研究。

    Lab4AI的博客 730

    Lab4AI 大模型实验室参展首届中国「AI + 新材料」大会

    2026年4月9—12日,首届中国「AI+新材料」大会在广州南沙隆重举行。Lab4AI大模型实验室作为AI算力生态社区携核心成果参展大会,展示AI赋能材料科研的一站式解决方案,与参会嘉宾、科研团队、企业代表深度交流,共同探讨技术融合与创新生态。

    Lab4AI的博客 558

    MAG-3D: Multi-Agent Grounded Reasoning for 3D Understanding

    MAG-3D提出无需训练的多智能体三维具身推理框架,通过规划、定位、编码三智能体动态协同,结合开放词汇三维定位与可执行几何验证,在Beacon3D、MSQA基准上实现零样本最优性能,同时大幅提升定位与问答的一致性,有效解决现有方法依赖微调、流程僵化、易产生幻觉的问题,为开放世界三维可靠推理提供实用方案。

    Lab4AI的博客 637

    StreamMeCo: Long-Term Agent Memory Compression for Efficient Streaming Video Understanding

    本文提出的StreamMeCo是首个面向工业级流式视频智能体的长期记忆压缩框架,通过双分支结构压缩与时间衰减检索,在大幅缩减记忆图规模的同时,提升检索效率与模型精度,有效解决了流式视频理解中智能体记忆膨胀的核心痛点,为实时视频理解系统提供了高效记忆管理方案。

    Lab4AI的博客 708

    HY-Embodied-0.5: Embodied Foundation Models for Real-World Agents

    本文提出的HY-Embodied-0.5模型家族,通过创新的MoT架构、亿级具身专项数据、迭代自进化训练与在线策略蒸馏方案,有效解决了通用VLM在具身智能场景的感知与推理短板,实现了边缘高效版与大型高性能版的协同设计,在多项基准测试与真实机器人任务中验证了技术有效性,为现实世界具身智能体提供了强大的基础模型支撑。

    Lab4AI的博客 631

    Stop Fixating on Prompts: Reasoning Hijacking and Constraint Tightening for Red-Teaming LLM Agents

    本文提出的JailAgent框架,通过不修改用户提示词的隐式攻击方式,实现了对LLM智能体推理轨迹与记忆检索的高效劫持,兼具高攻击成功率、强泛化性、高隐蔽性与低计算开销,为LLM智能体的红队测试与安全评估提供了全新范式。

    Lab4AI的博客 526

    EvolveRouter: Co-Evolving Routing and Prompt for Multi-Agent Question Answering(论文解读)

    本文提出了 EvolveRouter,一个通过闭环协同进化联合优化路由与智能体配置的创新框架,有效解决了多智能体问答中智能体质量静态化和协作规模僵化的两大核心问题。实验结果充分验证了其相对于现有 SOTA 方法的优越性。

    Lab4AI的博客 506

    STREAMING AUTOREGRESSIVE VIDEO GENERATION VIA DIAGONAL DISTILLATION(论文解读)

    本文提出的对角蒸馏框架首次同时建模时序与降噪步维度,解决了自回归视频蒸馏的曝光偏差与运动失真问题,实现了高质量、低延迟、长稳定的实时流式视频生成,为游戏仿真、机器人学习、实时内容创作提供可行方案。

    Lab4AI的博客 758

    Mirage: The Illusion of Visual Understanding

    本研究证实当前多模态AI的高基准测试成绩,很大程度上是 **“幻影效应”** 带来的视觉理解假象,模型并非依靠真实视觉感知,而是利用文本线索、数据模式、先验知识完成任务。幻影效应在主流模型中普遍存在,医疗场景下的病理偏向会引发严重安全风险,现有评估范式无法区分真实视觉理解与文本推理。研究提出的B-Clean框架,可有效净化现有基准,实现多模态模型真实视觉能力的公平评估。

    Lab4AI的博客 612

    LongCat-Next: Lexicalizing Modalities as Discrete Tokens

    本研究通过LongCat-Next探索了语言风格离散自回归建模自然扩展到视觉和音频的可能性。结果表明,通过精心设计的分词器和训练策略,连续感知信号可以被有效离散化,同时保持强大的能力。作为迈向原生多模态的一步,该工作为构建真正统一的多模态基础模型提供了新的视角。局限性在于当前版本的视觉分词器主要关注语义解码一致性而非像素保真度,且评估主要集中在图像到文本和文本到图像方向。未来工作将致力于优化分词器以更好地满足下一代版本目标,并扩展到任意到任意生成和交错多模态推理,探索数据规模与表征学习的协同效应。

    Lab4AI的博客 579

    大模型训练全流程实战指南工具篇(九)——LLamaFactory大模型训练工具使用指南

    本期分享以 LLaMAFactory 大模型训练框架 为例,从环境搭建到模型下载、数据准备、微调训练、权重合并及部署测试,完整演示了 Qwen2.5-0.5B 的实战流程,充分展现了 LLaMAFactory 极简操作与广泛模型兼容的核心优势。通过本文大家可快速上手大模型微调,并掌握从训练到部署的全链路方法。下一期笔者将深入解析训练配置文件中的各项参数,帮助大家真正成为调参高手,敬请期待!

    Lab4AI的博客 867

    大模型训练全流程实战指南工具篇(八)——EasyDataset问答数据集生成流程

    本篇内容以EasyDataset工具为例,系统介绍了问答对数据集的完整生成流程:从问题生成(支持单条/批量、三种算法)、答案生成(含思维链、多轮对话),到采用“自动化初筛+人工抽检+迭代优化”策略进行质量评估,最后导出Alpaca或ShareGPT标准格式,为模型微调提供高质量数据。到此数据集构建的基本工具指南笔者就介绍完全,下一篇文章开始将正式介绍大模型训练相关工具,大家敬请期待~

    Lab4AI的博客 1605

    《Penguin-VL: Exploring the Efficiency Limits of VLM with LLM-based Vision Encoders》论文解读

    本文提出Penguin-VL,一种紧凑型视觉语言模型,突破传统依赖大规模对比预训练视觉编码器的范式。通过从纯文本LLM初始化视觉编码器(Penguin-Encoder),结合混合监督预训练和统一训练策略,在2B/8B规模下实现了与大型VLM相当的性能。实验表明,该方法在文档理解、视觉知识和视频任务中表现优异,尤其在保留细粒度视觉线索方面显著优于对比预训练编码器。研究为参数高效的VLM发展提供了新思路,证明改进视觉表示而非模型扩展是性能提升的关键。

    Lab4AI的博客 452

    《Taming OpenClaw: Security Analysis and Mitigation of Autonomous LLM Agent Threats》论文简析

    本文系统分析了OpenClaw自主AI代理的安全威胁,提出了五层生命周期导向的安全框架(初始化、输入、推理、决策、执行),揭示了跨阶段复合风险。研究通过案例验证了技能中毒、记忆中毒等威胁的实际影响,指出现有单点防御的局限性,并提出纵深防御架构设计原则。该研究为构建安全可靠的自主AI系统提供了重要参考,未来可探索硬件辅助安全原语和动态自适应防御策略。

    Lab4AI的博客 584

    Paperclip:让AI像“真实公司”协同运转,解锁AI团队全自动化新范式

    2026年3月,一款名为Paperclip的开源项目在GitHub悄然崛起,它不是简单的AI工具集成平台,而是一款AI公司编排框架——核心定位是“将多个AI Agent组织成一家有序运转的‘AI公司’”,让AI员工像人类团队一样分工协作、按章办事,真正实现AI团队的全自动化、标准化、可控化运作。

    Lab4AI的博客 767

    Why AI systems don’t learn and what to do about it

    本文提出了构建自主学习系统的路线图,强调了超越现有刚性、人工设计的训练范式的必要性。虽然面临构建逼真且快速的模拟器、设计新的评估基准(单元测试与集成测试)、扩展双层优化的计算规模以及解决伦理问题(如可控性与适应性的权衡、对齐攻击、道德地位)等挑战,但提出的 A-B-M 架构为未来跨学科研究提供了统一的概念框架,旨在启发能够像生物体一样自主、开放学习的智能体的发展。

    Lab4AI的博客 391

    LlamaFactory 微调实测|Qwen3-4B现代诗风格微调

    本次实验使用中文现代诗数据集(链接:https://huggingface.co/datasets/Iess/chinese_modern_poetry),规模约为 24> 万条样本。该数据集将现代诗写作整理为“给定意象,生成诗歌”的训练形式,较适合用于现代诗风格微调。

    Lab4AI的博客 626

    Demystifing Video Reasoning 论文简析

    本研究系统性地揭示了扩散视频模型中推理能力的内在机制,将其定义为“思维步”过程,并识别了伴随其产生的涌现行为。研究发现,推理并非沿时间维度展开,而是发生在去噪轨迹上,且模型具备类似LLM的工作记忆和自我修正能力。通过层级分析,进一步阐明了模型内部的功能分化。基于这些发现,研究提出的免训练集成方法展示了无需额外训练即可提升性能的潜力。总体而言,这项工作为理解视频推理提供了系统性的视角,将视频定位为机器智能的下一代有前途的基座,为未来研究如何更好地利用视频模型的内在推理动力学奠定了基础。

    Lab4AI的博客 485

    一文讲透:大模型、Skills与OpenClaw“龙虾”关系

    很多人最近被“养龙虾”“AI技能”刷屏,却搞不清它们到底是什么、怎么用,甚至担心踩坑。今天就用最通俗的话,把大模型、Skills、OpenClaw(龙虾)、Agent的关系讲透,再附上技能获取渠道和安全避坑指南,新手也能轻松上手~

    Lab4AI的博客 1529

    OpenClaw爆火,装对 Skill 才是真・效率神器

    如果说工具是 AI 的「手脚」,那 Skill 就是 AI 的「大脑决策逻辑」——它本质上是一份固化了“做事经验”的执行说明,告诉 AI:遇到什么任务、该用什么工具、按什么顺序做、输出要符合什么规范、要避开哪些坑。不用复杂技术,大多是 Markdown 格式的说明 + 简单的 YAML 配置文件,却能让 AI 的执行效果翻倍。举个最常见的例子:处理工作邮件工具:邮件客户端、日历、待办清单。

    Lab4AI的博客 710
    上一篇: 大模型训练全流程实战指南工具篇(九)——LLamaFactory大模型训练工具使用指南
    下一篇: LongCat-Next: Lexicalizing Modalities as Discrete Tokens
    「已注销」
    「已注销」 Lab4AI大模型实验室官方账号 Lab4AI大模型实验室官方账号
    博客等级 码龄1年 288粉丝 155原创
    评论
    成就一亿技术人!
    拼手气红包6.0元
    还能输入1000个字符
     
     条评论被折叠 查看
    添加红包

    请填写红包祝福语或标题

    个

    红包个数最小为10个

    元

    红包金额最低5元

    当前余额3.43元 前往充值 >
    需支付:10.00元
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付元
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值