有時候要部署的伺服器是完全沒有對外網路的,這篇文章將說明如何在無網路狀態下升級pip並且安裝套件。
- 確認可以聯網的機器和無網路的機器pip 版本是一樣的,如果有用到venv,那就確定venv裡面的pip版本一樣
1
2# 確認pip版本
pip --version - 如果不一樣可以到官網下載想要的pip版本
參考資料:
https://www.ibm.com/docs/en/siffs/2.0.3?topic=python-installing-packages-offline-mode
有時候要部署的伺服器是完全沒有對外網路的,這篇文章將說明如何在無網路狀態下升級pip並且安裝套件。
1 | # 確認pip版本 |
參考資料:
https://www.ibm.com/docs/en/siffs/2.0.3?topic=python-installing-packages-offline-mode
編譯onnxruntime Tensorrt ExecutionProvider
1 | git clone https://github.com/microsoft/onnxruntime.git |
不一定要機器上要插著顯卡才能編譯,沒顯卡的機器也可以編譯
為了保險起見我是用系統管理員權限執行cmd,沒試過普通的cmd可不可以
基本上官方提供的build.bat 沒特別做什麼事,只是幫你呼叫build.py而已,所以所有參數都可以直接看build.py需要什麼,如果直接下官方文件的指令下會出錯。
onnxrumtime 的github ci pipeline是很好的參考,可以用來作為build.py指令參數的參考例如windows onnxruntime tensorrt
1 | build.bat --parallel --config Release --build_shared_lib --build_wheel --skip_tests --cudnn_home "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4" --cuda_home "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4" --use_tensorrt --tensorrt_home C:\TensorRT-8.2.3.0 --cuda_version 11.4 --cmake_extra_defines "CMAKE_CUDA_ARCHITECTURES=80" |
如果編譯失敗請刪掉程式產生的onnxruntime\build資料夾後再重下指令
從docker file我們可以發現如何安裝編譯好的onnx tensorrt
1 | pip install <onnxruntime 資料夾>/build/Windows/Release/Release/dist/onnxruntime_gpu-1.11.1-cp38-cp38-win_amd64.whl |