ONNX, the Open Neural Network Exchange, is an open format for representing trained machine learning models. It was introduced in 2017 by Microsoft and Facebook as a way to break models free of the specific framework that produced them. The problem it addresses is interoperability: a model trained in one toolkit historically could not be loaded by another, so teams were locked into a single stack from training through deployment. ONNX defines a common representation that lets a model cross those boundaries.
At its core ONNX is two things working together. The first is a serialized model file that captures a network as an extensible computation graph, the nodes of which are operators connected by tensors of declared data types. The second is a standardized operator set, a catalog of built-in operators with agreed semantics, plus the standard data types those operators consume and produce. The official site describes ONNX as providing both a common set of operators and a common file format, which is what makes a model portable rather than merely transferable.
The format is a specification rather than a single product. The project’s GitHub repository hosts the formal definition: the computation graph model, the operator definitions, and the data type system, all maintained as an open standard that any framework or runtime can implement. Because the spec is the artifact, multiple independent training tools can export to ONNX and multiple independent runtimes can import it, with the format acting as the neutral contract in between.
This separation of model representation from execution engine is the practical payoff. A model can be trained in a research-oriented framework and then exported to ONNX for deployment in a different, performance-tuned runtime, including optimizing compilers and hardware-specific accelerators that consume the graph directly. The format thus sits at the seam between experimentation and production, letting each side evolve independently as long as both honor the shared operator semantics.
ONNX is governed as a community project under an open governance structure and is hosted as a graduate project of the Linux Foundation’s AI effort. That neutral stewardship matters for a standard whose value depends on broad, vendor-independent adoption: no single framework owns the format, which lowers the risk of committing to it. As model exchange became a routine step in machine-learning toolchains, ONNX established itself as a common interchange layer, occupying for trained models a role analogous to the portable formats that earlier let documents and data move between otherwise incompatible programs.