Principle:Onnx Onnx Opset Version Mapping
| Knowledge Sources | |
|---|---|
| Domains | Versioning, Compatibility |
| Last Updated | 2026-02-10 00:00 GMT |
Overview
A version mapping system that establishes the correspondence between ONNX release versions, IR versions, and operator set versions across multiple domains.
Description
ONNX uses a multi-layered versioning scheme where each release introduces a specific combination of IR version (controlling model structure features), ai.onnx opset version (controlling standard operator semantics), ai.onnx.ml opset version (controlling machine learning operators), and ai.onnx.training opset version (controlling training operators). The version table is the authoritative mapping between these version numbers.
Understanding this mapping is critical for version conversion: before converting a model to a target opset version, the system must determine whether the target version is valid and what IR version it requires. The find_min_ir_version_for function computes the minimum IR version needed for a given set of opset imports.
Usage
Use this principle when you need to determine compatibility between different ONNX versions, select a target opset version for version conversion, or understand which features are available at a given version. This is a prerequisite step before running the version converter.
Theoretical Basis
The version mapping is a function:
Failed to parse (syntax error): {\displaystyle \text{version\_map}: \text{release} \rightarrow (\text{ir\_version}, \text{opset}_{ai.onnx}, \text{opset}_{ai.onnx.ml}, \text{opset}_{ai.onnx.training}) }
The inverse lookup determines the minimum IR version for a set of opset imports:
Failed to parse (syntax error): {\displaystyle \text{min\_ir}: \{(\text{domain}, \text{version})\} \rightarrow \text{ir\_version} }