Przejdź do treści

ONNX

logo ONNX

Wprowadzenie

ONNX (Open Neural Network Exchange) to projekt mający na celu unifikację standardów obecnych w dziedzinie AI. Jego głównym założeniem jest ułatwienie transferu modeli gotowych do inferencji pomiędzy różnymi językami programowania, systemami operacyjnymi i architekturami sprzętowymi.

Dostępność

Budowa i trenowanie modelu możliwe jest wyłącznie w języku Python. Ładowanie modeli do inferencji dostępne jest z poziomu różnych języków programowania oraz na wielu platformach sprzętowych. Aby zainstalować bibliotekę dla języka Python, wystarczy skorzystać z popularnych menadżerów oprogramowania (pip, conda). W przypadku instalacji dla innego języka lub innej platformy warto skorzystać ze wskazówek konfiguratora dostępnego na stronie biblioteki. Więcej informacji:

Szczegóły

Sama biblioteka ONNX dostępna jest dla języka Python, natomiast z modeli w formacie ONNX można korzystać w innych środowiskach przy użyciu ONNX Runtime. Jest to silnik przeznaczony do akceleracji modeli. Skupiony jest głównie na umożliwianiu inferencji, ale posiada także integrację wspierającą trening modeli w popularnych frameworkach AI jak np. Pytorch czy Tensorflow. Początkowo stworzony przez Microsoft do współpracy z frameworkiem Pytorch, obecnie rozwijany jako projekt w ramach Linux Foundation. Stowarzyszenia zaangażowane w jego rozwój dążą do usystematyzowania sposobów reprezentacji modeli AI oraz związanych z AI narzędzi w celu ułatwienia komunikacji między zespołami stosującymi różne frameworki i technologie.

Informacje o wydaniu

Obecna wersja ONNX to 1.15.0, wydana w październiku 2023 roku. W przypadku ONNX-runtime aktualna wersja to 1.16.3 z listopada 2023. Standard ONNX jest rozwijany regularnie, z nowymi wersjami publikowanymi 1-2 razy w roku. Posiada stabilne API.

Linki


Ostatnia aktualizacja: 6 grudnia 2023