安裝 ONNX Runtime
請參閱安裝矩陣,獲取目標作業系統、硬體、加速器和語言所需組合的推薦說明。
有關作業系統版本、編譯器、語言版本、依賴庫等的詳細資訊,請參閱相容性。
目錄
要求
-
所有構建都需要帶有
en_US.UTF-8區域設定的英語語言包。在 Linux 上,透過執行locale-gen en_US.UTF-8和update-locale LANG=en_US.UTF-8安裝 language-pack-en 軟體包 -
Windows 構建需要 Visual C++ 2019 執行時。建議使用最新版本。
CUDA 和 CuDNN
對於 ONNX Runtime GPU 軟體包,需要安裝 CUDA 和 cuDNN。請檢查 CUDA 執行提供程式要求以獲取相容的 CUDA 和 cuDNN 版本。
- cuDNN 9.x 僅在 Linux 上需要 Zlib(Zlib 靜態連結到 cuDNN 9.x Windows 動態庫中),或者 cuDNN 8.x 在 Linux 和 Windows 上都需要 Zlib。請遵循 cuDNN 8.9 安裝指南在 Linux 或 Windows 中安裝 Zlib。
- 在 Windows 中,必須將 CUDA
bin和 cuDNNbin目錄的路徑新增到PATH環境變數中。 - 在 Linux 中,必須將 CUDA
lib64和 cuDNNlib目錄的路徑新增到LD_LIBRARY_PATH環境變數中。
對於 onnxruntime-gpu 軟體包,可以在不手動安裝 CUDA 或 cuDNN 的情況下與 PyTorch 一起使用。有關更多資訊,請參閱與 PyTorch 的相容性。
Python 安裝
安裝 ONNX Runtime CPU
pip install onnxruntime
安裝每夜構建版本
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)
pip install onnxruntime-directml
安裝每夜構建版本
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)
自 1.19.0 版本起,PyPI 中的 onnxruntime-gpu 的預設 CUDA 版本是 12.x。
pip install onnxruntime-gpu
安裝每夜構建版本
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
安裝 ONNX Runtime GPU (CUDA 11.x)
對於 CUDA 11.x,請使用以下說明從 ORT Azure Devops Feed 安裝 1.19.2 或更高版本。
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/
安裝 ONNX Runtime QNN
pip install onnxruntime-qnn
安裝每夜構建版本
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)
對於 ROCm,請遵循 AMD ROCm 安裝文件中的說明進行安裝。ONNX Runtime 的 ROCm 執行提供程式是使用 ROCm 6.2.0 構建和測試的。
要在 Linux 上從原始碼構建,請遵循此處的說明。
C#/C/C++/WinML 安裝
安裝 ONNX Runtime
安裝 ONNX Runtime CPU
# CPU
dotnet add package Microsoft.ML.OnnxRuntime
安裝 ONNX Runtime GPU (CUDA 12.x)
ORT 的預設 CUDA 版本是 12.x
# GPU
dotnet add package Microsoft.ML.OnnxRuntime.Gpu
安裝 ONNX Runtime GPU (CUDA 11.8)
- 專案設定
確保您已從 Azure Artifacts 憑據提供程式 GitHub 倉庫安裝最新版本的 Azure Artifacts keyring。
在您的專案中,與 .csproj 檔案相同的目錄中新增一個 nuget.config 檔案。
<?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>
- 還原包
還原包(使用互動式標誌,允許 dotnet 提示您輸入憑據)
dotnet add package Microsoft.ML.OnnxRuntime.Gpu
注意:您不需要每次都使用 –interactive。如果 dotnet 需要更新的憑據,它會提示您新增 –interactive。
DirectML
dotnet add package Microsoft.ML.OnnxRuntime.DirectML
WinML
dotnet add package Microsoft.AI.MachineLearning
在 Web 和移動裝置上安裝
預構建的軟體包完全支援所有 ONNX opset 和運算元。
如果預構建的軟體包太大,您可以建立自定義構建。自定義構建可以只包含模型中的 opset 和運算元,以減小大小。
JavaScript 安裝
安裝 ONNX Runtime Web (瀏覽器)
# install latest release version
npm install onnxruntime-web
# install nightly build dev version
npm install onnxruntime-web@dev
安裝 ONNX Runtime Node.js 繫結 (Node.js)
# install latest release version
npm install onnxruntime-node
為 React Native 安裝 ONNX Runtime
# install latest release version
npm install onnxruntime-react-native
在 iOS 上安裝
在您的 CocoaPods Podfile 中,根據您想要使用的 API,新增 onnxruntime-c 或 onnxruntime-objc pod。
C/C++
use_frameworks!
pod 'onnxruntime-c'
Objective-C
use_frameworks!
pod 'onnxruntime-objc'
執行 pod install。
自定義構建
請參閱建立自定義 iOS 軟體包的說明。
在 Android 上安裝
Java/Kotlin
在您的 Android Studio 專案中,對以下檔案進行更改:
-
build.gradle (專案)
repositories { mavenCentral() } -
build.gradle (模組)
dependencies { implementation 'com.microsoft.onnxruntime:onnxruntime-android:latest.release' }
C/C++
從 MavenCentral 下載託管的 onnxruntime-android AAR 包,將副檔名從 .aar 更改為 .zip,然後解壓。在您的 NDK 專案中包含 headers 資料夾中的標頭檔案,以及 jni 資料夾中相關的 libonnxruntime.so 動態庫。
自定義構建
請參閱建立自定義 Android 軟體包的說明。
用於裝置端訓練的安裝
除非另有說明,本節中的安裝說明指的是為執行裝置端訓練而設計的預構建軟體包。
如果預構建的訓練軟體包支援您的模型但太大,您可以建立自定義訓練構建。
離線階段 - 為訓練做準備
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
訓練階段 - 裝置端訓練
| 裝置 | 語言 | 包名 | 安裝說明 |
|---|---|---|---|
| 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 | 在您的 Android Studio 專案中,對以下檔案進行更改:
| |
| iOS | C, C++ | CocoaPods: onnxruntime-training-c |
|
| Objective-C | CocoaPods: onnxruntime-training-objc |
| |
| Web | JavaScript, TypeScript | onnxruntime-web | npm install onnxruntime-web
|
大模型訓練
pip install torch-ort
python -m torch_ort.configure
注意:這將安裝 torch-ort 和 onnxruntime-training 包的預設版本,這些版本對映到特定版本的 CUDA 庫。請參閱 onnxruntime.ai 中的安裝選項。
所有語言的推理安裝表
下表列出了官方支援的軟體包的構建變體。其他版本可以從每個釋出分支的原始碼構建。
除了通用要求外,請注意下表中的其他要求和依賴項
注意:從主分支建立的每夜構建版本可用於測試官方版本之間的新更改。請自行承擔使用這些版本的風險。我們強烈建議不要將這些版本部署到生產工作負載中,因為對每夜構建版本的支援有限。
所有語言的訓練安裝表
有關更詳細的安裝說明,請參閱最佳化訓練入門頁面。