Converting an ONNX Model¶
Note
ONNX models are supported via FrontEnd API. You may skip conversion to IR and read models directly by OpenVINO runtime API. Refer to the inference example for more details. Using convert_model
is still necessary in more complex cases, such as new custom inputs/outputs in model pruning, adding pre-processing, or using Python conversion extensions.
Converting an ONNX Model¶
The model conversion process assumes you have an ONNX model that was directly downloaded from a public repository or converted from any framework that supports exporting to the ONNX format.
To convert an ONNX model, run convert_model()
method with the path to the <INPUT_MODEL>.onnx
file:
ov_model = convert_model("<INPUT_MODEL>.onnx")
compiled_model = core.compile_model(ov_model, "AUTO")
Important
The convert_model()
method returns ov.Model
that you can optimize, compile, or save to a file for subsequent use.
You can use mo
command-line tool to convert a model to IR. The obtained IR can then be read by read_model()
and inferred.
mo --input_model <INPUT_MODEL>.onnx
There are no ONNX-specific parameters, so only framework-agnostic parameters are available to convert your model. For details, see the General Conversion Parameters section in the Converting a Model to Intermediate Representation (IR) guide.
Supported ONNX Layers¶
For the list of supported standard layers, refer to the Supported Operations page.
Additional Resources¶
See the Model Conversion Tutorials page for a set of tutorials providing step-by-step instructions for converting specific ONNX models. Here are some examples: