Многие исследователи задачу конвертирования представления нейросетей между фреймворками решают с помощью ONNX.



ONNX (Open Neural Network Exchange) - библиотека, реализующая хранение и обработку нейросетей.

Общий формат хранения нейросети помогает сэкономить время, лишить привязки к конкретному фреймворку и дает возможность больше экспериментировать с инфраструктурой.



Внутри у ONNX есть свое промежуточное представление. Реализовано с помощью protocol buffers и служит промежуточным звеном для конвертаций между фреймворками. Все компоненты ONNX, включая промежуточное представление, версионируются возрастающим числом или согласно SemVer. Подробнее тут.



ONNX хорошо показал себя как связующее звено в рамках MLOps процессов. Его использование в продакшен пайплайнах повышает гибкость разработки. Библиотека предоставляет большую экосистему вспомогательных инструментов и конвертеров, позволяющих использовать передовые инференс фреймворки и меньше бояться, что при обновлении продакшена код перестанет работать.