需添加debug代码片段 
- 多卡训练只能监听其中一个进程
- 对应的GPU使用率大部分时间为0,只有forward的时候占满
-  在 LLaMA-Factory/src/llamafactory/train/tuner.py 中的run_exp函数中添加下面的代码片段(非LLaMA-Factory也适用,尝试加到你的train函数前面) 
pythondef run_exp(args: Optional[Dict[str, Any]] = None, callbacks: List["TrainerCallback"] = []) -> None:
    import os
    import debugpy
    # 只在rank 0进程中启动调试器
    if int(os.environ.get('LOCAL_RANK', '0')) == 0:
        debugpy.listen(("localhost", 5678))
        print("⏳ 等待调试器附加...")
        debugpy.wait_for_client()
        print("🚀 调试器已附加!继续执行...")
    ...
 - vscode的debug配置如下
JSON{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python Debugger: Attach",
            "type": "debugpy",
            "request": "attach",
            "connect": {
                "host": "localhost",
                "port": 5678
            },
            "justMyCode": false
        }
    ]
}
 - 使用步骤:
a. 训练启动命令无需修改(非LLaMA-Factory也适用),例如:
BashCUDA_VISIBLE_DEVICES=6,7  llamafactory-cli train examples/train_lora/llama3_lora_sft.yaml
  b. 当看到命令行打印出“⏳ 等待调试器附加...”时,选中vscode编辑器中的“运行和调试”然后选中“Python Debugger: Attach”点击左边的“开始调试”按钮即可开始,等待程序运行至打好的断点处