我正在尝试使用 pipenv 安装与特定 cuda 驱动程序版本兼容的特定版本的 pytorch。该pytorch网站显示了如何将它与PIP:
pip3 install torch==1.3.1+cu92 torchvision==0.4.2+cu92 -f https://download.pytorch.org/whl/torch_stable.html
Run Code Online (Sandbox Code Playgroud)
我试图将其转换为我Pipfile这样的条目:
[[source]]
name = "pytorch"
url = "https://download.pytorch.org/whl/torch_stable.html"
verify_ssl = false
pytorch = {version="==1.3.1+cu92", index="pytorch"}
torchvision = {version="==0.4.2+cu92", index="pytorch"}
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用。无法解决与此版本的依赖关系。我不确定-f在pip3命令中与参数一起列出的 url 是否是pipenv.
我可以通过将命令传递给 pip 来安装这两个库,如下所示:
pipenv run pip install torch==1.3.1+cu92 torchvision==0.4.2+cu92 -f https://download.pytorch.org/whl/torch_stable.html
Run Code Online (Sandbox Code Playgroud)
但我对该解决方案并不满意,因为依赖项不在Pipfile,我必须手动记录此命令的用法。
上述方法的问题在于https://download.pytorch.org/whl/torch_stable.html. Pipenv 只能找到 Torch 版本 0.1 到 0.4.1,因为所有其他版本都以 cuda(或 cpu)版本作为前缀,例如cu92/torch-0.4.1-cp27-cp27m-linux_x86_64.whl.
但是cuda版本是一个子目录。因此,如果您将源的 url 更改为 cuda 版本,并且仅在其工作的依赖项中指定火炬版本。
[[source]]
name = "pytorch"
url = "https://download.pytorch.org/whl/cu92"
verify_ssl = false
[packages]
torch = {index = "pytorch",version = "==1.4.0"}
Run Code Online (Sandbox Code Playgroud)
我遇到的唯一问题是 numpy 未被识别为 pytoch 1.4.0 的依赖项。但这似乎是特定pytorch轮的问题。使用版本 1.3.1 或 1.5.1 和最近的 pipenv 版本它可以工作。
所以如果用 安装后pipenv install,命令pipenv run python -c "import torch"抛出错误,必须手动添加numpy。
| 归档时间: |
|
| 查看次数: |
1480 次 |
| 最近记录: |