ONNX
The ONNX protocol was built to create interoperability between different frameworks. This helps AI developers and organizations to choose the right framework to develop AI models where they spend most of their time. Once the development and training phases are over, they can migrate the model to any framework of their choice to serve it in production.
Different frameworks could be optimized for different purposes, such as mobile deployment, readability and flexibility, production deployment, and others. Converting the model to different frameworks is sometimes inevitable and manual conversion is time-consuming. This is another use case that ONNX is trying to solve with interoperability.
Let's take any framework example to see where ONNX is going to fit in. The framework will have a language API, which is used by developers, then a graph representation of the model developed by them. This IR then goes to the highly optimized runtime for execution. ONNX provides a unified standard...