ONNX Runtime installieren
Sehen Sie sich die Installationsmatrix für empfohlene Anweisungen für gewünschte Kombinationen von Zielbetriebssystem, Hardware, Beschleuniger und Sprache an.
Details zu Betriebssystemversionen, Compilern, Sprachversionen, abhängigen Bibliotheken usw. finden Sie unter Kompatibilität.
Inhalt
- Voraussetzungen
- Python-Installationen
- C#/C/C++/WinML-Installationen
- Installation für Web und Mobilgeräte
- Installation für On-Device Training
- Training großer Modelle
- Inferenz-Installationskatalog für alle Sprachen
- Trainings-Installationskatalog für alle Sprachen
Voraussetzungen
-
Alle Builds erfordern das englische Sprachpaket mit der Locale
en_US.UTF-8. Unter Linux installieren Sie das Paket language-pack-en, indem Sielocale-gen en_US.UTF-8undupdate-locale LANG=en_US.UTF-8ausführen. -
Windows-Builds erfordern die Visual C++ 2019 Laufzeitumgebung. Die neueste Version wird empfohlen.
CUDA und CuDNN
Für das ONNX Runtime GPU-Paket ist die Installation von CUDA und cuDNN erforderlich. Überprüfen Sie die Anforderungen des CUDA Execution Providers für kompatible Versionen von CUDA und cuDNN.
- Zlib wird von cuDNN 9.x für Linux benötigt (zlib ist statisch in die cuDNN 9.x Windows-Dynamikbibliotheken einkompiliert) oder cuDNN 8.x für Linux und Windows. Befolgen Sie die cuDNN 8.9 Installationsanleitung, um zlib unter Linux oder Windows zu installieren.
- Unter Windows müssen die Pfade der CUDA
bin- und cuDNNbin-Verzeichnisse zur UmgebungsvariablePATHhinzugefügt werden. - Unter Linux müssen die Pfade der CUDA
lib64- und cuDNNlib-Verzeichnisse zur UmgebungsvariableLD_LIBRARY_PATHhinzugefügt werden.
Für das onnxruntime-gpu-Paket ist es möglich, mit PyTorch zu arbeiten, ohne dass eine manuelle Installation von CUDA oder cuDNN erforderlich ist. Weitere Informationen finden Sie unter Kompatibilität mit PyTorch.
Python-Installationen
ONNX Runtime CPU installieren
pip install onnxruntime
Nightly installieren
pip install flatbuffers numpy packaging protobuf sympy
pip install --pre --index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT-Nightly/pypi/simple/ onnxruntime
ONNX Runtime GPU (DirectML) installieren
pip install onnxruntime-directml
Nightly installieren
pip install flatbuffers numpy packaging protobuf sympy
pip install --pre --index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT-Nightly/pypi/simple/ onnxruntime-directml
ONNX Runtime GPU (CUDA 12.x) installieren
Die Standard-CUDA-Version für onnxruntime-gpu auf pypi ist seit Version 1.19.0 12.x.
pip install onnxruntime-gpu
Nightly installieren
pip install flatbuffers numpy packaging protobuf sympy
pip install --pre --index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT-Nightly/pypi/simple/ onnxruntime-gpu
Für frühere Versionen können Sie hier herunterladen: 1.18.1, 1.18.0
ONNX Runtime GPU (CUDA 11.x) installieren
Für Cuda 11.x verwenden Sie bitte die folgenden Anweisungen zur Installation aus dem ORT Azure Devops Feed für 1.19.2 oder höher.
pip install flatbuffers numpy packaging protobuf sympy
pip install onnxruntime-gpu --index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/onnxruntime-cuda-11/pypi/simple/
Für frühere Versionen können Sie hier herunterladen: 1.18.1, 1.18.0
ONNX Runtime QNN installieren
pip install onnxruntime-qnn
Nightly installieren
pip install flatbuffers numpy packaging protobuf sympy
pip install --pre --index-url https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT-Nightly/pypi/simple/ onnxruntime-qnn
ONNX Runtime GPU (ROCm) installieren
Für ROCm befolgen Sie bitte die Anweisungen zur Installation in den AMD ROCm-Installationsdokumenten. Der ROCm Execution Provider für ONNX Runtime wird mit ROCm 6.2.0 erstellt und getestet.
Um aus Quelle unter Linux zu erstellen, befolgen Sie die Anweisungen hier.
C#/C/C++/WinML-Installationen
ONNX Runtime installieren
ONNX Runtime CPU installieren
# CPU
dotnet add package Microsoft.ML.OnnxRuntime
ONNX Runtime GPU (CUDA 12.x) installieren
Die Standard-CUDA-Version für ORT ist 12.x
# GPU
dotnet add package Microsoft.ML.OnnxRuntime.Gpu
ONNX Runtime GPU (CUDA 11.8) installieren
- Projekt-Setup
Stellen Sie sicher, dass Sie die neueste Version des Azure Artifacts Keyrings aus seinem Github-Repository installiert haben.
Fügen Sie Ihrer Projektdatei eine nuget.config im selben Verzeichnis wie Ihre .csproj-Datei hinzu.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear/>
<add key="onnxruntime-cuda-11"
value="https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/onnxruntime-cuda-11/nuget/v3/index.json"/>
</packageSources>
</configuration>
- Pakete wiederherstellen
Pakete wiederherstellen (mit dem interaktiven Flag, das es dotnet ermöglicht, Sie nach Anmeldeinformationen zu fragen)
dotnet add package Microsoft.ML.OnnxRuntime.Gpu
Hinweis: Sie benötigen nicht jedes Mal –interactive. dotnet wird Sie auffordern, –interactive hinzuzufügen, wenn es aktualisierte Anmeldeinformationen benötigt.
DirectML
dotnet add package Microsoft.ML.OnnxRuntime.DirectML
WinML
dotnet add package Microsoft.AI.MachineLearning
Installation für Web und Mobilgeräte
Die vorkompilierten Pakete bieten vollständige Unterstützung für alle ONNX-Opsets und Operatoren.
Wenn das vorkompilierte Paket zu groß ist, können Sie eine benutzerdefinierte Erstellung vornehmen. Eine benutzerdefinierte Erstellung kann nur die Opsets und Operatoren Ihres/Ihrer Modelle(s) enthalten, um die Größe zu reduzieren.
JavaScript-Installationen
ONNX Runtime Web (Browser) installieren
# install latest release version
npm install onnxruntime-web
# install nightly build dev version
npm install onnxruntime-web@dev
ONNX Runtime Node.js-Binding (Node.js) installieren
# install latest release version
npm install onnxruntime-node
ONNX Runtime für React Native installieren
# install latest release version
npm install onnxruntime-react-native
Auf iOS installieren
Fügen Sie in Ihrer CocoaPods Podfile das onnxruntime-c- oder onnxruntime-objc-Pod hinzu, je nachdem, welche API Sie verwenden möchten.
C/C++
use_frameworks!
pod 'onnxruntime-c'
Objective-C
use_frameworks!
pod 'onnxruntime-objc'
Führen Sie pod install aus.
Benutzerdefinierte Erstellung
Beziehen Sie sich auf die Anweisungen zum Erstellen eines benutzerdefinierten iOS-Pakets.
Auf Android installieren
Java/Kotlin
Nehmen Sie in Ihrem Android Studio Projekt die folgenden Änderungen vor
-
build.gradle (Projekt)
repositories { mavenCentral() } -
build.gradle (Modul)
dependencies { implementation 'com.microsoft.onnxruntime:onnxruntime-android:latest.release' }
C/C++
Laden Sie das onnxruntime-android AAR von MavenCentral herunter, ändern Sie die Dateiendung von .aar zu .zip und entpacken Sie es. Fügen Sie die Header-Dateien aus dem headers-Ordner und die relevante libonnxruntime.so-Dynamikbibliothek aus dem jni-Ordner in Ihr NDK-Projekt ein.
Benutzerdefinierte Erstellung
Beziehen Sie sich auf die Anweisungen zum Erstellen eines benutzerdefinierten Android-Pakets.
Installation für On-Device Training
Sofern nicht anders angegeben, beziehen sich die Installationsanweisungen in diesem Abschnitt auf vorkompilierte Pakete, die für das On-Device Training entwickelt wurden.
Wenn das vorkompilierte Trainingspaket Ihr Modell unterstützt, aber zu groß ist, können Sie eine benutzerdefinierte Trainingserstellung vornehmen.
Offline-Phase - Vorbereitung für das Training
python -m pip install cerberus flatbuffers h5py numpy>=1.16.6 onnx packaging protobuf sympy setuptools>=41.4.0
pip install -i https://aiinfra.pkgs.visualstudio.com/PublicPackages/_packaging/ORT/pypi/simple/ onnxruntime-training-cpu
Trainingsphase - On-Device Training
| Gerät | Sprache | Paketname | Installationsanweisungen |
|---|---|---|---|
| Windows | C, C++, C# | Microsoft.ML.OnnxRuntime.Training | dotnet add package Microsoft.ML.OnnxRuntime.Training |
| Linux | C, C++ | onnxruntime-training-linux*.tgz |
|
| Python | onnxruntime-training | pip install onnxruntime-training | |
| Android | C, C++ | onnxruntime-training-android |
|
| Java/Kotlin | onnxruntime-training-android | Nehmen Sie in Ihrem Android Studio Projekt die folgenden Änderungen vor
| |
| iOS | C, C++ | CocoaPods: onnxruntime-training-c |
|
| Objective-C | CocoaPods: onnxruntime-training-objc |
| |
| Web | JavaScript, TypeScript | onnxruntime-web | npm install onnxruntime-web
|
Training großer Modelle
pip install torch-ort
python -m torch_ort.configure
Hinweis: Dies installiert die Standardversion der Pakete torch-ort und onnxruntime-training, die spezifischen Versionen der CUDA-Bibliotheken zugeordnet sind. Beziehen Sie sich auf die Installationsoptionen unter onnxruntime.ai.
Inferenz-Installationskatalog für alle Sprachen
Die folgende Tabelle listet die Build-Varianten auf, die als offiziell unterstützte Pakete verfügbar sind. Andere können aus jeder Release-Branch von der Quelle erstellt werden. Sie können aus Quelle erstellt werden.
Zusätzlich zu den allgemeinen Anforderungen beachten Sie bitte die zusätzlichen Anforderungen und Abhängigkeiten in der folgenden Tabelle
Hinweis: Nightly-Builds, die aus dem Hauptbranch erstellt werden, sind für das Testen neuerer Änderungen zwischen offiziellen Releases verfügbar. Bitte verwenden Sie diese auf eigenes Risiko. Wir raten dringend davon ab, diese in Produktionsumgebungen einzusetzen, da die Unterstützung für Nightly-Builds begrenzt ist.
Trainings-Installationskatalog für alle Sprachen
Weitere detaillierte Installationsanweisungen finden Sie auf der Seite Erste Schritte mit Optimized Training.