昇腾社区首页
中文
注册

将ONNX模型转换为OM模型

导出ONNX模型导出的“resnet50.onnx”模型,用CANN提供的ATC工具将其转换为昇腾AI处理器能识别的OM模型。

1
atc --model=resnet50.onnx --framework=5 --output=resnet50 --input_shape="actual_input_1:1,3,224,224"  --soc_version=<soc_version>

atc命令中各参数的含义如下:

  • --model:ResNet50的ONNX模型文件存储路径。
  • --framework:原始框架类型,5表示ONNX。
  • --output:离线OM模型的路径以及文件名,此处文件名配置为resnet50,直接存储在当前目录下。

    若此处修改模型文件名及存储路径,则需要同步修改源代码中模型加载处的模型文件名及存储路径,请参见解析样例代码处modelPath变量的说明,修改代码后需要重新编译代码。

  • --input_shape:执行推理时模型输入数据的shape。
  • --soc_version:昇腾AI处理器的型号。
    • Atlas A3 训练系列产品/Atlas A3 推理系列产品:在安装昇腾AI处理器的服务器执行npu-smi info命令进行查询,获取Name信息。实际配置值为AscendName,例如Name取值为xxxyy,实际配置值为Ascendxxxyy
    • Atlas A3 训练系列产品/Atlas A3 推理系列产品:在安装昇腾AI处理器的服务器执行npu-smi info -t board -i id -c chip_id命令进行查询,获取Chip NameNPU Name信息,实际配置值为Chip Name_NPU Name。例如Chip Name取值为AscendxxxNPU Name取值为1234,实际配置值为Ascendxxx_1234。

      其中:

      • id:设备id,通过npu-smi info -l命令查出的NPU ID即为设备id。
      • chip_id:芯片id,通过npu-smi info -m命令查出的Chip ID即为芯片id。