onnx/onnx
Open standard for machine learning interoperability
ONNX – Open Neural Network Exchange
What it is – ONNX is an open‑source, framework‑agnostic format for representing AI models (both deep‑learning and traditional machine‑learning). It defines a portable computation‑graph IR, a catalog of standard operators, and data‑type specifications. The repository hosts the reference implementation, the model‑specification docs, and tooling for working with ONNX files.
Why it matters – By providing a common model interchange format, ONNX lets developers move a model from the framework where it was created (e.g., PyTorch, TensorFlow, scikit‑learn) to the runtime or hardware that best fits production needs. This interoperability shortens the research‑to‑deployment cycle and enables a vibrant ecosystem of tools, optimizers, and accelerators that all understand the same file format.
How to get started
- Install the Python package:
pip install onnx # basic package pip install onnx[reference] # with optional reference implementation deps - Create or load a model using the Python API (see the Documentation of ONNX Python Package link).
- Run shape/type inference or optimize the graph with the provided utilities.
- Export the model to a file (
model.onnx) and feed it to any ONNX‑compatible runtime (e.g., ONNX Runtime, TensorRT, OpenVINO).
Key resources
- Spec & docs – Overview, IR spec, versioning, operators, and Python API overview are all in the
docs/folder. - Tutorials – Step‑by‑step guides for building ONNX models are in the separate
onnx/tutorialsrepo. - Pre‑trained models – A growing collection is hosted on Hugging Face under the
onnx-communityorganization. - Graph utilities – Shape inference, graph optimization, and opset conversion tools are bundled or linked from the repo.
Community & governance
- Open governance model with Special Interest Groups (SIGs) and Working Groups; see the
community/directory for details. - Regular community meetings (Steering Committee, SIGs, Working Groups) are listed on the ONNX calendar.
- Contributions are welcomed via pull requests; a full contribution guide and code of conduct are provided.
License – Apache License 2.0 (permissive, commercial‑friendly).
All information above is taken directly from the repository’s README.
Related
- Project
- Project
- Project
- Project
- Project