Open Neural Network Exchange


License: MIT

Language: PureBasic

Keywords: deep-learning, deep-neural-networks, dnn, keras, machine-learning, ml, mxnet, neural-network, onnx, pytorch, scikit-learn, tensorflow

Build Status Build status Build Status

Open Neural Network Exchange (ONNX) is an open ecosystem that empowers AI developers to choose the right tools as their project evolves. ONNX provides an open source format for AI models, both deep learning and traditional ML. It defines an extensible computation graph model, as well as definitions of built-in operators and standard data types. Currently we focus on the capabilities needed for inferencing (scoring).

ONNX is widely supported and can be found in many frameworks, tools, and hardware. Enabling interoperability between different frameworks and streamlining the path from research to production helps increase the speed of innovation in the AI community. We invite the community to join us and further evolve ONNX.


Learn about the ONNX spec

Programming utilities for working with ONNX Graphs


ONNX is a community project. We encourage you to join the effort and contribute feedback, ideas, and code. You can participate in the SIGs and Working Groups to shape the future of ONNX.

Check out our contribution guide to get started.

If you think some operator should be added to ONNX specification, please read this document.


We encourage you to open Issues, or use Gitter for more real-time discussion: Join the chat at https://gitter.im/onnx/Lobby

Follow Us

Stay up to date with the latest ONNX news. [Facebook] [Twitter]



A binary build of ONNX is available from Conda, in conda-forge:

conda install -c conda-forge onnx


You will need an install of protobuf and numpy to build ONNX. One easy way to get these dependencies is via Anaconda:

# Use conda-forge protobuf, as default doesn't come with protoc
conda install -c conda-forge protobuf numpy

You can then install ONNX from PyPi (Note: Set environment variable ONNX_ML=1 for onnx-ml):

pip install onnx

You can also build and install ONNX locally from source code:

git clone https://github.com/onnx/onnx.git
cd onnx
git submodule update --init --recursive
python setup.py install

Note: When installing in a non-Anaconda environment, make sure to install the Protobuf compiler before running the pip installation of onnx. For example, on Ubuntu:

sudo apt-get install protobuf-compiler libprotoc-dev
pip install onnx

After installation, run

python -c "import onnx"

to verify it works. Note that this command does not work from a source checkout directory; in this case you'll see:

ModuleNotFoundError: No module named 'onnx.onnx_cpp2py_export'

Change into another directory to fix this error.


ONNX uses pytest as test driver. In order to run tests, first you need to install pytest:

pip install pytest nbval

After installing pytest, do


to run tests.


Check out contributor guide for instructions.


MIT License

Code of Conduct

ONNX Open Source Code of Conduct

Project Statistics

Sourcerank 12
Repository Size 9.93 MB
Stars 7,259
Forks 1,164
Watchers 433
Open issues 406
Dependencies 0
Contributors 139
Tags 15
Last updated
Last pushed

Top Contributors See all

bddppq Lu Fang Ke Zhang Yuan Yu G. Ramalingam Sebastian Meßmer Edward Z. Yang anderspapitto Dmytro Dzhulgakov Prasanth Pulavarthi Marat Dukhan zrphercule Wenhao Hu Raymond Yang Emad Barsoum Yinghai Lu James Reed Marcelo Lopez Ruiz Don Box Hariharan Seshadri

Packages Referencing this Repo

Open Neural Network Exchange
Latest release 1.6.0 - Updated - 7.26K stars

Recent Tags See all

v1.5.0 April 24, 2019
v1.4.1 January 23, 2019
v1.4.0 January 23, 2019
v1.2.3 September 07, 2018
v1.3.0 August 30, 2018
v1.2.2 June 18, 2018
v1.2.1 May 25, 2018
v1.2 May 24, 2018
v1.1.2 April 25, 2018
v1.1.1 March 15, 2018
v1.1.0 March 10, 2018
v1.0.1 January 26, 2018
v1.0 December 04, 2017
v0.2 October 09, 2017
v0.1 September 07, 2017

Interesting Forks See all

Open Neural Network Exchange
PureBasic - Other - Updated - 1 stars
Open Neural Network Exchange
PureBasic - Other - Updated - 1 stars
Open Neural Network Exchange
C++ - Updated - 1 stars
Open Neural Network Exchange
C++ - Published - 1 stars

Something wrong with this page? Make a suggestion

Last synced: 2019-09-28 00:02:49 UTC

Login to resync this repository