SuperAPI AI 工具集

external-gitcode-ascend-model-training

智能体与模型

查看项目

更新于 10-15 18:46

技能介绍

用途:在昇腾 NPU 环境中启动并监控模型训练,例如 BEVFormer 等模型。适用于用户想开始模型训练、运行性能训练、运行精度训练或询问训练选项时。

主要能力:提供四种训练选项——性能训练(FP32,8 卡)、性能训练(FP16,8 卡,混合精度)、精度训练(24 个 epoch)以及自定义训练配置;并可在训练启动后监控进度与关键指标。

使用方式:先收集训练模式偏好、GPU/NPU 数量、batch size 及特定训练参数。然后设置环境变量:export ASCEND_SLOG_PRINT_TO_STDOUT=0;export ASCEND_GLOBAL_LOG_LEVEL=3;export TASK_QUEUE_ENABLE=2;export COMBINED_ENABLE=1;export HCCL_WHITELIST_DISABLE=1;export HCCL_IF_IP=$(hostname -I | awk '{print $1}');export HCCL_CONNECT_TIMEOUT=1200。之后执行对应脚本,例如:cd <working_directory>;bash test/train_performance_8p_base_fp32.sh --batch-size=1 --num-npu=8;FP16 版本为 bash test/train_performance_8p_base_fp16.sh --batch-size=1 --num-npu=8;精度训练为 bash test/train_full_8p.sh --batch-size=1;自定义训练为 cd <model_directory>;bash ./tools/dist_train.sh ./projects/configs/bevformer/bevformer_base.py <num_gpus>。

监控:用 ps aux | grep torchrun 检查进程,用 tail -20 <working_directory>/test/output/train_performance_8p_base_fp32.log 查看日志,或用 tail -f 实时跟踪。关键指标包括 loss_cls、loss_bbox、总 loss、lr、time、memory、ETA,以及每 epoch 的验证指标 NDS、mAP、mATE、mASE、mAOE。训练完成标志为所有 epoch 结束、打印最终验证指标并保存 checkpoint,可用 grep "Saving checkpoint" <log_file> | tail -1 检查。

日志位置:FP32 性能训练 test/output/train_performance_8p_base_fp32.log;FP16 性能训练 test/output/train_performance_8p_base_fp16.log;精度训练 test/output/train_full_8p.log。

限制与排障:训练无法启动时检查 npu-smi info、环境变量、conda 环境及数据集与权重链接;显存不足时减小 batch size、减少卡数或启用梯度检查点;训练卡住时检查 NPU 状态、残留进程与日志最后活动;端口占用可用 pkill -f torchrun 和 pkill -f dist_train 清理。参考资料:训练脚本位于 <model_directory>/test/,模型配置位于 <model_directory>/projects/configs/,DrivingSDK README 位于 DrivingSDK/model_examples/<model>/README.md。具体模型支持范围、平台与收费信息暂未提供。