我在使用华为昇腾ModelZoo进行模型部署时,遇到了模型转换失败的问题,特来求助社区大佬。
t('forum.solved') 已解决
发表于2026-01-12 19:21:21

华为昇腾ModelZoo模型转换中om生成失败问题排查与解

我在使用华为昇腾ModelZoo进行模型部署时,遇到了模型转换失败的问题,特来求助社区大佬。

问题描述

最近我在尝试将PyTorch框架下训练的YOLOv5模型通过华为昇腾ModelZoo转换为om格式,但在使用ATC工具进行转换时持续失败。环境配置为CANN 6.0版本、Ascend 310处理器、Ubuntu 20.04操作系统。

转换命令如下:

atc --model=yolov5s.onnx --framework=5 --output=yolov5s --soc_version=Ascend310 --input_shape="input:1,3,640,640"

错误提示为:

E90011: Failed to verify operator with name [Conv_0] and type [Conv]

已尝试的解决方案

  1. 检查环境依赖:确认CANN版本与驱动版本匹配,npu-smi功能正常

  2. 重新生成ONNX:尝试更换不同版本的PyTorch和ONNX重新导出模型

  3. 简化模型:尝试转换ModelZoo中提供的标准ResNet-50模型,同样失败

  4. 日志分析:查看详细错误日志,提示可能与算子不支持有关

具体问题细节

通过详细排查,我发现问题可能有以下几个方向:

1. 算子兼容性问题

从错误日志分析,可能是Conv算子的某些参数在昇腾310上不支持。具体来说,模型使用了groups参数不为1的卷积操作,而这可能超出了当前版本的支持范围。

2. 内存限制

YOLOv5模型相对较大,可能在310芯片上遇到内存限制。尝试减少输入尺寸(从640x640降至320x320)后,错误依旧

发表于2026/01/12