版本問題¶
Pytorch 版本¶
這個問題與 https://github.com/pytorch/rl/issues/689 相關。使用 PyTorch 版本 <2.0 並安裝穩定套件會導致未定義的符號錯誤。 例如
ImportError: /usr/local/lib/python3.7/dist-packages/torchrl/_torchrl.so: undefined symbol: _ZN8pybind116detail11type_casterIN2at6TensorEvE4loadENS_6handleEb
如何重現¶
建立一個 Colab Notebook(在 2022 年 11 月 24 日 Colab 環境預設安裝了 Python 3.7 和 Pytorch 1.12)。
!pip install torchrl
import torchrl
在 Colab 中,您可以透過執行以下操作來解決這個問題
!pip3 install torch --extra-index-url https://download.pytorch.org/whl/cpu -U
在 !pip install torchrl
指令之前。 這將安裝最新的 pytorch。 說明可以在 這裡 找到。
解決方法¶
有兩種解決方法可以解決這個問題
在安裝 torchrl 之前,先安裝/升級到最新的 pytorch 版本。
如果您需要使用先前的 pytorch 版本:安裝與您的 torch 發行版相關的 functorch 版本:例如
pip install functorch==0.2.0
並從原始碼安裝程式庫pip install git+https://github.com/pytorch/rl@<lib_version_here>
。