Willkommen bei ONNX Runtime
ONNX Runtime ist ein plattformübergreifender Beschleuniger für maschinelles Lernen, mit einer flexiblen Schnittstelle zur Integration hardware-spezifischer Bibliotheken. ONNX Runtime kann mit Modellen von PyTorch, Tensorflow/Keras, TFLite, scikit-learn und anderen Frameworks verwendet werden.
Wie man ONNX Runtime benutzt
Beitragen und Anpassen
QuickStart-Vorlage
ONNX Runtime für Inferencing
ONNX Runtime Inference treibt Machine-Learning-Modelle in wichtigen Microsoft-Produkten und -Diensten in Office, Azure, Bing sowie Dutzenden von Community-Projekten an.
Beispielhafte Anwendungsfälle für ONNX Runtime Inferencing umfassen
- Verbesserung der Inferenzleistung für eine Vielzahl von ML-Modellen
- Ausführung auf verschiedenen Hardwareplattformen und Betriebssystemen
- Training in Python, aber Bereitstellung in einer C#/C++/Java-Anwendung
- Training und Durchführung von Inferencing mit Modellen, die in verschiedenen Frameworks erstellt wurden
Funktionsweise
Die Prämisse ist einfach.
- Ein Modell erhalten. Dies kann aus jedem Framework trainiert werden, das den Export/die Konvertierung in das ONNX-Format unterstützt. Sehen Sie sich die Tutorials für einige der beliebten Frameworks/Bibliotheken an.
- Laden und Ausführen des Modells mit ONNX Runtime. Sehen Sie sich die Basis-Tutorials zum Ausführen von Modellen in verschiedenen Sprachen an.
- (Optional) Leistung durch verschiedene Laufzeitkonfigurationen oder Hardwarebeschleuniger optimieren. Es gibt viele Optionen – sehen Sie sich den Performance-Bereich als Ausgangspunkt an.
Auch ohne Schritt 3 bietet ONNX Runtime oft Leistungsverbesserungen im Vergleich zum ursprünglichen Framework.
ONNX Runtime wendet eine Reihe von Graph-Optimierungen auf den Modellgraphen an und teilt ihn dann basierend auf verfügbaren hardware-spezifischen Beschleunigern in Teilgraphen auf. Optimierte Rechenkerne im Kern von ONNX Runtime bieten Leistungsverbesserungen, und zugewiesene Teilgraphen profitieren von weiterer Beschleunigung durch jeden Execution Provider.