onnx/onnx
Open standard for machine learning interoperability
What it solves
AI developers often switch between different frameworks as a project evolves, but models built in one tool rarely work in another. ONNX solves this by defining an open, standard format for AI models that many frameworks, tools, and hardware platforms can read and write. This reduces friction when moving from research to production and makes it easier to pick the right tool for each task.
How it works
ONNX specifies an extensible computation graph model, along with a set of built-in operators and standard data types. The project provides a Python package for working with these graphs, including utilities for shape and type inference, and links to tools for graph optimization and opset version conversion. The specification also covers intermediate representation (IR) details, versioning principles, and operator documentation, so tools can interoperate consistently.
Who it's for
ONNX is for AI developers, researchers, and tool builders who want to exchange models between frameworks, use pre-trained models, or build utilities that operate on models. It also suits anyone looking to take a model from research into production with minimal friction, thanks to broad support across the AI ecosystem.
Highlights
- Open source and community-driven with an open governance model
- Supports both deep learning and traditional machine learning models
- Focuses on inference (scoring) capabilities
- Widely supported across many frameworks, tools, and hardware
- Provides Python utilities for graph manipulation, inference, and version conversion
- Includes reproducible build support for consistent artifacts
- Has an active community with regular meetings and contribution opportunities
Related
- Project
- Project
- Project
- Project
- Project