ONNX Runtime, czyli Open Neural Network Exchange Runtime, to wysoko wydajny silnik inferencyjny dla modeli machine learningowych w formacie ONNX na Linuksa, Windows i Mac. Należy on do otwartego ekosystemu ONNX, zapewniającego możliwość współpracy z istniejącymi lub mającymi dopiero zaistnieć systemami AI bez ograniczeń możliwości implementacji. Teraz do jego platform docelowych dołączyły Android i iOS.
ONNX Runtime obsługuje teraz tworzenie aplikacji mobilnych w C# dzięki środowisku Xamarin. Wsparcie dla Androida i iOS zostało dołączone do Runtime'u w wersji 1.10 (pakiet NuGet). Umożliwia to deweloperom C# tworzenie aplikacji wykonujących modele ONNX na urządzeniach mobilnych z ONNX Runtime.
W dzisiejszym wydaniu 1.10 umożliwiamy deweloperom tworzenie aplikacji wieloplatformowych dla systemów Android i iOS przy użyciu platformy Xamarin.Forms. Pakiet ten wspiera wykonywanie modeli ONNX na procesorze urządzenia przy użyciu domyślnego CPU Execution Providera. Część sprzętu mobilnego zawiera wyspecjalizowany układ (NPU) do wydajnego wykonywania ML za pośrednictwem interfejsów NNAPI (Android) i CoreML (iOS). Dzięki pakietowi ONNX Runtime Mobile deweloperzy mogą wybrać Execution Providerów dla NNAPI (Android) lub CoreML (iOS), które są dostępne w pakiecie.
— Scott McKay (Principal Software Engineer) i Guoyu Wang (Senior Software Engineer) z Microsoft
ONNX Runtime Mobile opiera się na silniku ONNX Runtime, a jego targetem są urządzenia z iOS i Androidem. Wraz z tym pakietem deweloperzy mogą budować aplikacje na smartfony zoptymalizowane pod kątem niewielkich dysków. Małe pakiety aplikacji pozwalają też spełnić wymagania dotyczące rozmiaru dla sklepów z aplikacjami na Androida i iOS.
Istnieją dwa rodzaje pakietu ONNX Runtime Mobile — gotowy pakiet zawierający część zestawu operatorów ONNX, skoncentrowany na scenariuszach mobilnej sztucznej inteligencji, oraz pakiet niestandardowy, który można wygenerować na podstawie konkretnych modeli używanych przez aplikacje AI.