当前位置: 首页 > news >正文

如何避免和恢复因终端关闭导致的 LoRA 微调中断

环境:

Ubuntu20.04

Llama factory

Qwen2.5-7B-Instruct

llama.cpp

H20 95G

问题描述:

使用命令 CUDA_VISIBLE_DEVICES=1 FORCE_TORCHRUN=1 llamafactory-cli train examples/train_lora/qwen2_5-7b_lora_sft.yaml 进行 LoRA 微调时,如果突然关闭终端窗口,微调进程会被中断。

在这里插入图片描述

解决方案:

  1. 中断原因

    • 终端关闭会发送 SIGHUP 信号,终止所有关联进程。
    • 未使用后台运行或会话管理工具(如 nohuptmux 等)。
  2. 如何确认中断

    • 检查训练日志,查看是否有异常终止记录。
    • 使用 nvidia-smi 检查 GPU 是否仍在运行训练任务。
    • 检查训练输出文件(如检查点)是否完整。
  3. 避免中断的方法

    • 使用 nohup
      nohup CUDA_VISIBLE_DEVICES=1 FORCE_TORCHRUN=1 llamafactory-cli train examples/train_lora/qwen2_5-14b_lora_sft.yaml > train.log 2>&1 &
      

使用 sh -c 来包裹整个命令

这种方法可以确保环境变量被正确设置并应用于紧跟其后的命令:

nohup sh -c 'CUDA_VISIBLE_DEVICES=1 FORCE_TORCHRUN=1 python -m llamafactory.cli train examples/train_lora/qwen2_5-7b_lora_sft.yaml' > train.log 2>&1 &

实时日志查看:

tail -f train.log

在这里插入图片描述

  1. 中断后的恢复方法

    • 从检查点恢复
      CUDA_VISIBLE_DEVICES=1 FORCE_TORCHRUN=1 llamafactory-cli train examples/train_lora/qwen2_5-14b_lora_sft.yaml --resume_from_checkpoint path_to_checkpoint
      
    • 重新开始训练:如果没有保存检查点,只能重新开始。
    • 检查日志和 GPU 状态:确认中断原因并解决问题。
  2. 总结

    • 使用后台运行或会话管理工具(如 `nohup``)避免中断。
    • 启用检查点保存功能,以便中断后可以恢复训练。
    • 定期检查训练日志和 GPU 状态,确保训练顺利进行。

相关文章:

  • 无锡哲讯科技:引领芯片封装SAP系统的智能化革命
  • 前端性能优化3:深入分析 Web Worker 和 Service Worker
  • Gmsh+OCC对应版本库编译
  • LabVIEW 程序运行时内存不足报错原因
  • 故障诊断模型评估——混淆矩阵,如何使样本量一致(上)
  • 【计算机组成原理】第二部分 存储器--分类、层次结构
  • Linux的域名解析服务器
  • 专题四:综合练习( 找出所有子集的异或总和再求和)
  • 每日Prompt:发光线条解剖图
  • 华秋2025电子设计与制造技术研讨会(华东站)成功举办!
  • 技术干货 | 如何用模块化仪器高效测试嵌入式微控制器?
  • 嵌入式培训之数据结构学习(二)顺序表与单向链表
  • 手机换IP真的有用吗?可以干什么?
  • 解锁向量数据库:实现高效过滤与管理的实用方法
  • OpenCV的CUDA模块进行图像处理
  • FPGA:XILINX FPGA产品线以及器件选型建议
  • 首个窗口级无人机配送VLN系统!中科院LogisticsVLN:基于MLLM实现精准投递
  • 使用PHP对接日本股票市场数据
  • VTK|类似CloudCompare的比例尺实现1-源码分析
  • 基于几何布朗运动的股价预测模型构建与分析
  • 俄副外长:俄美两国将举行双边谈判
  • 来伊份发布关于消费者反映蜜枣粽问题处理的情况说明:与消费者达成和解
  • 习近平在中拉论坛第四届部长级会议开幕式的主旨讲话(全文)
  • 小米SU7 Ultra风波升级:数百名车主要求退车,车主喊话雷军“保持真诚”
  • 多家中小银行存款利率迈入“1时代”
  • 牧原股份子公司与养殖户种猪买卖纠纷案一审胜诉