LlamaFactory 检查点保存个数
2026-01-09
LLaMA-Factory
00

LlamaFactory 通过继承 transformersSeq2SeqTrainingArguments 来获得完整的训练参数,无需单独定义。因此,你可以直接在 YAML 配置文件中添加 save_total_limit 参数,它会自动被识别和使用。

具体使用方式

在 YAML 配置文件中设置如下参数:

yaml
展开代码
save_steps: 500 save_strategy: steps save_total_limit: 3 # 最多只保留最近的3个检查点

参数说明

参数说明
save_total_limit设置保留的检查点文件的最大数量。旧的检查点会被自动删除。
save_steps每隔多少步训练保存一次检查点。
save_strategy检查点的保存策略。可选 "steps" (按步数保存)、"epoch" (按轮次保存) 或 "no" (不保存)。
save_only_model如果为 True,则只保存模型权重,不保存优化器状态,以节省空间。
load_best_model_at_end如果为 True,训练结束时自动加载效果最佳的模型。开启后,最佳模型不会被 save_total_limit 删除。

工作流程

  1. 你的配置文件会由 HfArgumentParser 进行解析。
  2. 参数会传递给继承自 transformers.TrainingArgumentsTrainingArguments 类。
  3. Trainer 在训练过程中将根据这些设置自动管理检查点的保存和删除。

注意事项

  • 当同时启用 load_best_model_at_end 时,最佳的模型检查点会被额外保留,不计入 save_total_limit 的限制。
  • 建议将 save_strategy 设置为 "steps" 以配合 save_steps 使用,实现定期的检查点保存。
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!