"import torch" 给出错误 "from torch._C import *, DLL load failed: The specified module could not be found"
"import torch" giving error "from torch._C import *, DLL load failed: The specified module could not be found"
我目前在 Anaconda 上使用 Python 3.5.5,但我无法导入 torch。它在 Spyder 中给我以下错误:
Python 3.5.5 |Anaconda, Inc.| (default, Mar 12 2018, 17:44:09) [MSC v.1900
64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.
IPython 6.2.1 -- An enhanced Interactive Python.
import torch
Traceback (most recent call last):
File "<ipython-input-1-eb42ca6e4af3>", line 1, in <module>
import torch
File "C:\Users\trish\Anaconda3\envs\virtual_platform\lib\site-
packages\torch\__init__.py", line 76, in <module>
from torch._C import *
ImportError: DLL load failed: The specified module could not be found.
网上很多建议都说工作目录不能和torch包在同一个目录,但是我手动设置工作目录为C:/Users/trish/Downloads,我得到了同样的错误。
此外,我已经尝试了以下操作:从头开始重新安装 Anaconda 和所有软件包,并且我确保我的目录中没有重复的 "torch" 文件夹。
请帮忙!谢谢!
确保为您的环境安装了正确版本的 pytorch。我在 windows 上使用 pytorch 时遇到了同样的问题,但我安装了用于 cuda 8 的默认包。所以我重新安装了 cpu 的 pytorch 包,这正是我需要的。
我在使用纯 pip 安装的 运行 torch 上遇到了同样的问题,并通过切换到 conda 解决了这个问题。
以下步骤:
- 从 python.org 卸载 python 3.6(如果存在)
- 安装miniconda
- 在 conda 中安装手电筒 ("conda install pytorch -c pytorch")
pip 安装问题:
import torch
File "C:\Program Files\Python35\lib\site-packages\torch\__init__.py", line 78, in <module>
from torch._C import *
ImportError: DLL load failed: The specified module could not be found.
切换到 conda 后它工作正常。我相信 conda 通过安装 vs_redist 2017
解决了这个问题
vs2017_runtime 15.4.27004.2010 peterjc123
但是我试过了w/o conda 并没有帮助。找不到如何检查(和调整)Python 的 vs_redist。
有同样的问题并通过使用 mkl(Intel 的数学内核库)重新安装 numpy 解决了这个问题
https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
为您的机器下载正确的 .whl
。对我来说,它是 numpy‑1.14.5+mkl‑cp36‑cp36m‑win_amd64.whl(python 3.6,windows,64 位)
然后使用 pip 安装。
pip install numpy‑1.14.5+mkl‑cp36‑cp36m‑win_amd64.whl
我在 windows 10...
时遇到了类似的问题
解决方案:
- [=31下载win-64/intel-openmp-2018.0.0-8.tar.bz2 =]
解压后把Library\bin里面的dll文件放到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
确保您的 cuda 目录已添加到您的 %PATH%
环境变量
我遇到了同样的问题。就我而言,我不想要 GPU 版本的 pytorch。
我卸载了它。版本是 pytorch: 0.3.1-py36_cuda80_cudnn6he774522_2 peterjc123.
问题是 cuda 和 cudnn 。然后使用以下命令安装,现在可以使用了!
conda install -c peterjc123 pytorch-cpu
我在使用python3.6.8的conda环境和conda从channel -c pytorch安装的pytorch时也遇到了同样的问题。
以下是对我有用的方法:
1:) conda create -n envName python=3.6 anaconda
2:) conda update -n envName conda
3:) conda activate envName
4:) conda install pytorch torchvision cudatoolkit=9.0 -c pytorch
然后用给定的代码测试手电筒:
5:) python -c "import torch; print(torch.cuda.get_device_name(0))"
注意:如果您有兼容 cuda 的 gpu
,第 5 步将 return 您的 gpu 名称
总结:我刚刚创建了一个包含整个anaconda的conda环境,然后为了解决conda版本不匹配的问题,我从基础环境更新了新环境的conda,然后在该环境中安装了pytorch并进行了测试火炬.
对于 CPU 版本,这里是 link 我的另一个答案:https://gist.github.com/peterjc123/6b804651288e76db7b5fabe5348e1f03#gistcomment-2842825
https://gist.github.com/peterjc123/6b804651288e76db7b5fabe5348e1f03#gistcomment-2842837
Windows10 解决方案(这适用于我的系统):
我的系统遇到了同样的问题。以前我使用的是 Python 3.5,我使用 virtualenv 模块创建了一个名为 pytorch_test 的虚拟环境,因为我不想弄乱我的 tensorflow 安装(这花了我很多时间)。我遵循了每条指示,但似乎没有用。我安装了 python 3.6.7 添加到路径中。然后我使用以下方法创建了虚拟环境:
virtualenv --python=3.6 pytorch_test
然后转到目标文件夹
cd D:\pytorch_test
并激活虚拟环境在cmd中输入命令:
.\Scripts\activate
执行此操作后,命令提示符将显示:
(pytorch_test) D:\pytorch_test>
如果在使用之前没有更新 pip,请更新:
(pytorch_test) D:\pytorch_test>python -m pip install --upgrade pip
然后从站点安装 numpy+mkl:
https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
如果您有 python 3.6.7,请从列表中选择正确的版本:wheel 文件:
numpy‑1.15.4+mkl‑cp36‑cp36m‑win_amd64.whl(对于 64 位)
(请注意,如果整个事情不起作用,只需分别进行简单的 numpy 安装和 mkl 安装)
然后使用以下命令安装 openmp:
(pytorch_test) D:\pytorch_test>pip install intel-openmp
现在你已经完成了先决条件。要安装 pytorch,请转到以前的版本站点:
https://pytorch.org/get-started/previous-versions/
此处 select Windows 二进制文件列表中的合适版本。例如,我在我的系统中安装了 CUDA 9.0 python 3.6.7 所以我选择了 gpu 版本:
cu90/torch-1.0.0-cp36-cp36m-win_amd64.whl
(pytorch有0.4.0和1.0.0两个可用版本,我用的是1.0.0)
下载文件后使用 pip 安装它(假设 whl 文件位于 D:)。您必须从虚拟环境 pytorch_test 本身执行此操作:
(pytorch_test) D:\pytorch_test>pip install D:\torch-1.0.0-cp36-cp36m-win_amd64.whl
先决条件如六,枕头将自动安装。
然后一旦一切都完成了,使用 torchvision 安装模型。
只需输入:
(pytorch_test) D:\pytorch_test>pip install torchvision
要检查一切是否正常,请尝试以下脚本:
import torch
test = torch.rand(4, 7)
print(test)
如果一切顺利,那就不是问题了。每当出现这样的问题时,它都与一个或多个依赖项的版本不匹配有关。这也发生在 tensorflow 安装过程中。
在 cmd 中使用命令 deactivate 停用以下虚拟环境:
(pytorch_test) D:\pytorch_test>deactivate
这是我系统中 pip list 的输出:
Package Version
------------ -----------
intel-openmp 2019.0
mkl 2019.0
numpy 1.16.2
Pillow 6.0.0
pip 19.0.3
setuptools 41.0.0
six 1.12.0
torch 1.0.0
torchvision 0.2.2.post3
wheel 0.33.1
希望这对您有所帮助。这是我在这个社区的第一个回答,希望对大家有所帮助。在尝试了各种组合之后,我今天下午设置了 pytorch。我在安装 CNTK 和 tensorflow 时遇到了同样的导入问题。不管怎样,我把它们分开放在不同的虚拟环境中,这样我就可以随时使用它们。
我正在使用带有 NVIDIA GeForce 显卡的 Windows 10 计算机。 NVIDIA 显示我有 CUDA 10.1,但是当我在 Jupyter Lab 运行 import torch
时收到此错误,并怀疑它与 CUDA 支持有关。
我通过直接从 NVIDIA 下载并安装 CUDA Toolkit 解决了这个问题。它安装了所有必需的 Visual Studio 组件。当我回到 Jupyter Lab 时,import torch
运行 没有错误。
我目前在 Anaconda 上使用 Python 3.5.5,但我无法导入 torch。它在 Spyder 中给我以下错误:
Python 3.5.5 |Anaconda, Inc.| (default, Mar 12 2018, 17:44:09) [MSC v.1900
64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.
IPython 6.2.1 -- An enhanced Interactive Python.
import torch
Traceback (most recent call last):
File "<ipython-input-1-eb42ca6e4af3>", line 1, in <module>
import torch
File "C:\Users\trish\Anaconda3\envs\virtual_platform\lib\site-
packages\torch\__init__.py", line 76, in <module>
from torch._C import *
ImportError: DLL load failed: The specified module could not be found.
网上很多建议都说工作目录不能和torch包在同一个目录,但是我手动设置工作目录为C:/Users/trish/Downloads,我得到了同样的错误。
此外,我已经尝试了以下操作:从头开始重新安装 Anaconda 和所有软件包,并且我确保我的目录中没有重复的 "torch" 文件夹。
请帮忙!谢谢!
确保为您的环境安装了正确版本的 pytorch。我在 windows 上使用 pytorch 时遇到了同样的问题,但我安装了用于 cuda 8 的默认包。所以我重新安装了 cpu 的 pytorch 包,这正是我需要的。
我在使用纯 pip 安装的 运行 torch 上遇到了同样的问题,并通过切换到 conda 解决了这个问题。 以下步骤:
- 从 python.org 卸载 python 3.6(如果存在)
- 安装miniconda
- 在 conda 中安装手电筒 ("conda install pytorch -c pytorch")
pip 安装问题:
import torch
File "C:\Program Files\Python35\lib\site-packages\torch\__init__.py", line 78, in <module>
from torch._C import *
ImportError: DLL load failed: The specified module could not be found.
切换到 conda 后它工作正常。我相信 conda 通过安装 vs_redist 2017
解决了这个问题vs2017_runtime 15.4.27004.2010 peterjc123
但是我试过了w/o conda 并没有帮助。找不到如何检查(和调整)Python 的 vs_redist。
有同样的问题并通过使用 mkl(Intel 的数学内核库)重新安装 numpy 解决了这个问题 https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
为您的机器下载正确的 .whl
。对我来说,它是 numpy‑1.14.5+mkl‑cp36‑cp36m‑win_amd64.whl(python 3.6,windows,64 位)
然后使用 pip 安装。
pip install numpy‑1.14.5+mkl‑cp36‑cp36m‑win_amd64.whl
我在 windows 10...
时遇到了类似的问题解决方案:
- [=31下载win-64/intel-openmp-2018.0.0-8.tar.bz2 =]
解压后把Library\bin里面的dll文件放到
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin
确保您的 cuda 目录已添加到您的
%PATH%
环境变量
我遇到了同样的问题。就我而言,我不想要 GPU 版本的 pytorch。 我卸载了它。版本是 pytorch: 0.3.1-py36_cuda80_cudnn6he774522_2 peterjc123.
问题是 cuda 和 cudnn 。然后使用以下命令安装,现在可以使用了!
conda install -c peterjc123 pytorch-cpu
我在使用python3.6.8的conda环境和conda从channel -c pytorch安装的pytorch时也遇到了同样的问题。
以下是对我有用的方法:
1:) conda create -n envName python=3.6 anaconda
2:) conda update -n envName conda
3:) conda activate envName
4:) conda install pytorch torchvision cudatoolkit=9.0 -c pytorch
然后用给定的代码测试手电筒:
5:) python -c "import torch; print(torch.cuda.get_device_name(0))"
注意:如果您有兼容 cuda 的 gpu
,第 5 步将 return 您的 gpu 名称总结:我刚刚创建了一个包含整个anaconda的conda环境,然后为了解决conda版本不匹配的问题,我从基础环境更新了新环境的conda,然后在该环境中安装了pytorch并进行了测试火炬.
对于 CPU 版本,这里是 link 我的另一个答案:https://gist.github.com/peterjc123/6b804651288e76db7b5fabe5348e1f03#gistcomment-2842825
https://gist.github.com/peterjc123/6b804651288e76db7b5fabe5348e1f03#gistcomment-2842837
Windows10 解决方案(这适用于我的系统):
我的系统遇到了同样的问题。以前我使用的是 Python 3.5,我使用 virtualenv 模块创建了一个名为 pytorch_test 的虚拟环境,因为我不想弄乱我的 tensorflow 安装(这花了我很多时间)。我遵循了每条指示,但似乎没有用。我安装了 python 3.6.7 添加到路径中。然后我使用以下方法创建了虚拟环境:
virtualenv --python=3.6 pytorch_test
然后转到目标文件夹
cd D:\pytorch_test
并激活虚拟环境在cmd中输入命令:
.\Scripts\activate
执行此操作后,命令提示符将显示:
(pytorch_test) D:\pytorch_test>
如果在使用之前没有更新 pip,请更新:
(pytorch_test) D:\pytorch_test>python -m pip install --upgrade pip
然后从站点安装 numpy+mkl:
https://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
如果您有 python 3.6.7,请从列表中选择正确的版本:wheel 文件: numpy‑1.15.4+mkl‑cp36‑cp36m‑win_amd64.whl(对于 64 位)
(请注意,如果整个事情不起作用,只需分别进行简单的 numpy 安装和 mkl 安装) 然后使用以下命令安装 openmp:
(pytorch_test) D:\pytorch_test>pip install intel-openmp
现在你已经完成了先决条件。要安装 pytorch,请转到以前的版本站点: https://pytorch.org/get-started/previous-versions/
此处 select Windows 二进制文件列表中的合适版本。例如,我在我的系统中安装了 CUDA 9.0 python 3.6.7 所以我选择了 gpu 版本:
cu90/torch-1.0.0-cp36-cp36m-win_amd64.whl
(pytorch有0.4.0和1.0.0两个可用版本,我用的是1.0.0)
下载文件后使用 pip 安装它(假设 whl 文件位于 D:)。您必须从虚拟环境 pytorch_test 本身执行此操作:
(pytorch_test) D:\pytorch_test>pip install D:\torch-1.0.0-cp36-cp36m-win_amd64.whl
先决条件如六,枕头将自动安装。 然后一旦一切都完成了,使用 torchvision 安装模型。 只需输入:
(pytorch_test) D:\pytorch_test>pip install torchvision
要检查一切是否正常,请尝试以下脚本:
import torch
test = torch.rand(4, 7)
print(test)
如果一切顺利,那就不是问题了。每当出现这样的问题时,它都与一个或多个依赖项的版本不匹配有关。这也发生在 tensorflow 安装过程中。
在 cmd 中使用命令 deactivate 停用以下虚拟环境:
(pytorch_test) D:\pytorch_test>deactivate
这是我系统中 pip list 的输出:
Package Version
------------ -----------
intel-openmp 2019.0
mkl 2019.0
numpy 1.16.2
Pillow 6.0.0
pip 19.0.3
setuptools 41.0.0
six 1.12.0
torch 1.0.0
torchvision 0.2.2.post3
wheel 0.33.1
希望这对您有所帮助。这是我在这个社区的第一个回答,希望对大家有所帮助。在尝试了各种组合之后,我今天下午设置了 pytorch。我在安装 CNTK 和 tensorflow 时遇到了同样的导入问题。不管怎样,我把它们分开放在不同的虚拟环境中,这样我就可以随时使用它们。
我正在使用带有 NVIDIA GeForce 显卡的 Windows 10 计算机。 NVIDIA 显示我有 CUDA 10.1,但是当我在 Jupyter Lab 运行 import torch
时收到此错误,并怀疑它与 CUDA 支持有关。
我通过直接从 NVIDIA 下载并安装 CUDA Toolkit 解决了这个问题。它安装了所有必需的 Visual Studio 组件。当我回到 Jupyter Lab 时,import torch
运行 没有错误。