在 Windows 上,运行“import tensorflow”会生成 No module named “_pywrap_tensorflow”错误

Posted

技术标签:

【中文标题】在 Windows 上,运行“import tensorflow”会生成 No module named “_pywrap_tensorflow”错误【英文标题】:On Windows, running "import tensorflow" generates No module named "_pywrap_tensorflow" error 【发布时间】:2017-06-20 01:07:45 【问题描述】:

在 Windows 上,TensorFlow 在执行import tensorflow 语句后报告以下一个或两个错误:

No module named "_pywrap_tensorflow" DLL load failed.

【问题讨论】:

【参考方案1】:

任一错误表示你的系统没有安装MSVCP140.DLL, TensorFlow 需要的。

修复此错误:

    确定MSVCP140.DLL 是否在您的%PATH% 变量中。 如果MSVCP140.DLL 不在您的%PATH% 中,请安装 Visual C++ 2015 redistributable(x64 版本),其中包含此 DLL。

【讨论】:

这可能会或可能不会解决他的问题(取决于 CPU 与 GPU),虽然需要 windows dll,但它也可能是另一个问题 - 请参阅下面的答案。我对 windows dll 没有任何问题,但对 cuDNN v6.0 有问题 您可以通过在命令提示符下键入以下内容来检查 MSVCP140.dll 是否在您的路径中: where MSVCP140.DLL 该链接将您带到 2010 版本。我们的目标是 2015 年还是 2010 年版本? In my case (TF 2.5.0) 缺少一个不同的 DLL vcruntime140_1.dll - 但感谢您的回答,它给了我一个线索!【参考方案2】:

TensorFlow 需要MSVCP140.DLL,您的系统上可能没有安装它。 要解决它,请打开终端输入或粘贴此链接:

C:\> pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_amd64.whl 

请注意,这是安装仅 CPU 版本的 TensorFlow。

【讨论】:

对于我的配置,有效的二进制文件是:storage.googleapis.com/tensorflow/windows/cpu/… -- 检查pypi.python.org/pypi/tensorflow 以获得可用的内置二进制文件。我检查了其中几个,直到“import tensorflow as tf”成功。【参考方案3】:

找不到DLL。安装 Visual C++ 2015 redistributable 进行修复。

【讨论】:

不确定这是否准确地涵盖了它 - 取决于场景 - 请参阅上面与 cuDNN v6.0 相关的答案 - 也可能希望包含指向您提到的 lib 的链接(我将在这里做 @987654321 @ vs 这个快速的简介:)【参考方案4】:

问题在于我的 cuDNN 库 - 无论出于何种原因 cudnn-8.0-windows10-x64-v6.0 无法正常工作 - 我使用的是 cudnn-8.0-windows10-x64-v5.1 - 一切都好!

我的设置使用 Win10 64 和 Nvidia GTX780M:

通过检查你的系统/路径确保你有 lib MSVCP140.DLL - 如果没有得到它here 从 here 运行适用于 python 3.5.3-amd64 的 Windows 安装程序 - 不要尝试较新的版本,因为它们可能无法正常工作 从 here 获取适用于 CUDA 8.0 的 cuDNN v5.1 - 将其放在您的用户文件夹下或其他已知位置(您的路径中将需要它) 从here 获取 CUDA 8.0 x86_64 按预期设置 PATH 变量以指向 cuDNN 库和 python(python 路径应在 python 安装期间添加) 确保“.DLL”包含在您的 PATHEXT 变量中 如果你使用的是 tensorflow 1.3 那么你想使用 cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705

如果您运行 Windows 32,请务必获取上述文件的 32 位版本。

【讨论】:

这对大多数人来说可能很明显,但 CUDA DLL 是“cudnn64_5.dll”,它所在的文件夹需要在路径中......而不是父文件夹。我把它放在 '%USERPROFILE%\AppData\Local\cuda\bin;' 添加到 PATH 后,请记住关闭命令提示符并再次打开它。此外,值得在命令提示符中输入“cudnn64_5.dll”以确保路径设置正确。 我只花了 4 个小时调试这个,如果你使用的是 tensorflow 1.3 那么你想使用 cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705 Chris Barret 的评论解决了这个问题 - 如果您在 2017 年 8 月之后安装,您可能需要 cuDNN v6,0 而不是 5 或 7。 就我而言,python 3.5.4 也可以。在删除 vs17 并安装 Visual Studio 15(win10)之前,我无法安装 cuda 8.0。不得不一一查找并安装旧版本,真是可笑。【参考方案5】:

cuDNN 导致了我的问题。 PATH 变量对我不起作用。我必须将我的 cuDNN 文件夹中的文件复制到受尊重的 CUDA 8.0 文件夹结构中。

【讨论】:

【参考方案6】:

问题在于我的 cuDNN 库。在 Windows PATH 中添加 cuDNN DLL(不是 LIB 文件)的目录(可能是 bin 文件夹)后,我能够运行 the test code。

作为参考,我使用 PIP 和我的操作系统从源安装了 TensorFlow:Windows 7 和 IDE:Visual Studio 2015。

【讨论】:

【参考方案7】:

在我的情况下,/bin 文件夹中的“cudnn64_6.dll”文件必须重命名为“cudnn64_5.dll”才能消除错误。我轻松地花了两个小时来解决这个问题,并严格按照官方安装指南进行操作。通过 pip(官方支持)和 conda(社区支持)安装也是如此。

【讨论】:

这是我的情况。 TensorFlow 需要“cuDNN v5.1”,但如果您安装 cuDNN v6.0,则 cudnn dll 文件的文件名将是 cudnn64_6.dll 而不是 cudnn64_5.dll 如果你使用的是 tensorflow 1.3 那么你想使用 cudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705 我使用的是 tensorflow 1.3,我必须从 cudnn64_7.dll(现在的最新版本)更改为 cudnn64_6.dll,正如 @ChrisBarrett 所说的那样才能正常工作。 在 tensorflow 1.3 和 cudNN 7 的情况下,同样将 cudnn64_7.dll 重命名为 cudnn64_6.dll 会有所帮助。【参考方案8】:

对我来说问题是 cuDNN 库不符合显卡的要求。我下载了 6.0 版本,但我的 GTX980ti 但 nvidia 网站上推荐的计算能力是 5.1(http://developer.nvidia.com/cuda-gpus)所以我下载了 5.1 并替换了 6.0 版本,一旦我完成它就开始工作了。

【讨论】:

【参考方案9】:

我在 AMD cpu 上安装了 Win7 Pro 64 位,没有 gpu。我按照https://www.tensorflow.org/install/install_windows 的“使用本机 pip 安装”下的说明进行操作。安装步骤顺利,但尝试导入 tensorflow 却产生了臭名昭著的问题:

ImportError: No module named '_pywrap_tensorflow_internal'

这似乎是许多不相关的事情可能出错的情况之一,具体取决于配置,所有这些都会级联到相同的错误。

就我而言,安装 MSVCP140.DLL 就是答案。

如果你已经有MSVCP140.DLL

    你有一个文件C:\Windows\System32\MSVCP140.DLL,并且 如果您有 64 位系统,那么您还有 C:\Windows\SysWOW64\MSVCP140.DLL

我手动安装了它,这是不必要的(可再发行的不是整个 Visual C++ 开发的混乱,而且并不大)。使用此线程前面发布的链接进行安装:Visual C++ 2015 redistributable。

另外,我建议您覆盖 Python 的默认安装目录,并将其放在不在 C:\Program Files 下的任何位置,因为 Windows 会尝试在那里写保护文件,这会导致以后出现问题。

【讨论】:

【参考方案10】:

人们可能想在 Windows 上保持 Powershell/cmd 处于打开状态。在我决定关闭并重新打开我的 Powershell 之前,我花了合理的时间才意识到我做的一切都是正确的。

【讨论】:

【参考方案11】:

如果您尝试在 Windows 中安装 tensorflow GPU,您可以找到 this 简单有趣的教程。

注意:例如,如果您使用 PyCharm,则必须将解释器更改为创建的 conda 环境。

【讨论】:

【参考方案12】:

经过反复试验,确保 VC++ 2015 RedistributablecuDNN DLL 和所有其他依赖项都可以从 PATH 访问,它看起来像 Tensorflow GPU 仅适用于 Python 3.5.2(在撰写本文时)

所以如果你使用Anaconda

conda create -n tensorflow-gpu python=3.5.2 activate tensorflow-gpu pip install tensorflow-gpu

然后打开python解释器并验证

>>> import tensorflow as tf
>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

找到具有属性的设备 0: 名称:GeForce 940M 主要:5 次要:0 memoryClockRate (GHz) 1.176 pciBusID 0000:06:00.0 总内存:2.00GiB 可用内存:1.66GiB

致谢:this neat guide

【讨论】:

【参考方案13】:

对于每个 Tensorflow 的版本,它需要不同版本的 CuDnn。在www.tensorflow.org,他们在安装指南中没有提到这一点!

我的案例使用 tensorflow 版本 1.3,它使用 cuDNN 6。https://github.com/tensorflow/tensorflow/releases。

请检查您的 tensorfow 版本和 cuDNN 版本是否匹配。

请设置cuDNN的路径环境,如果还是不行,请检查@Chris Han中的answer。

【讨论】:

【参考方案14】:

使用 TensorFlow 1.3.0 版,您需要使用 Cudnn 6.0 而不是 Cudnn 5.0,因为 Cudnn 5.0 会出现此错误。不要忘记将路径变量添加到 Cudnn 6.0 中。使用 cudnn64_6.dll 您的 Tensorflow 可以正常工作。阅读下面的链接。 https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md#release-130

【讨论】:

【参考方案15】:

我的两分钱:

我在尝试在 Windows 7 上正确安装 CUDA 8.0 时遇到很多问题。我安装了以前的版本,我想升级,所以我卸载了它并尝试安装 CUDA 8.0(用于 tensorflow 1.3)。每次安装都失败,我尝试降级到 CUDA 7.5 并且能够安装它,但是 tensorflow 存在大量问题(类似于此处描述的 PATH 问题)。长话短说:对我有用的是:

1) 卸载所有 NVIDIA 组件(显示图形驱动程序除外)

2) 下载 CUDA 工具包 8.0(和补丁)https://developer.nvidia.com/cuda-downloads

3) 检查 CheckSum MD5(我使用了 MS https://www.microsoft.com/en-ca/download/confirmation.aspx?id=11533,但任何人都可以)以确保它们正常(由于我的 WiFi 路由器显然没有正确下载安装程序有好几次)。

4) 以 root 身份运行 CUDA 工具包安装程序

5) 下载 cudnn 8.0 v6 并将其位置添加到 PATH 变量https://developer.nvidia.com/rdp/cudnn-download

希望能帮助并避免一些头痛......

注意:这个脚本对我调试问题有很大帮助! (谢谢你,先生) https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c

【讨论】:

【参考方案16】:

我将尝试提供对我有用的解决方案。似乎有不同的问题会导致这种情况。

32 位软件适用于 64 位操作系统。我在我的 64 位操作系统中安装了 anaconda-3(32 位)。它工作得很好。我决定在我的机器上安装 tensorflow,但一开始它不会安装。我在使用 conda 环境安装 tensorflow 时遇到了这个错误。

解决方案是如果您运行的是 64 位操作系统,则安装 64 位 anaconda,如果是 32 位操作系统,则安装 32 位 anaconda。然后按照 tensorflow 网站中提到的 windows 标准程序(anaconda 安装)。这使得安装 tensorflow 没有任何问题成为可能。

【讨论】:

【参考方案17】:

我的答案仅适用于 Windows 10 用户,因为我在 Windows 10 上尝试了以下操作。 扩展上面的一些答案,我建议这样做: 如果您使用的是 anaconda,那么您可以避免一切,只需使用命令安装 anaconda-navigator

conda install -c anaconda anaconda-navigator

然后您可以使用命令从命令提示符启动导航器

anaconda-navigator

运行此命令后,您将获得一个简单的 gui,您可以在其中创建虚拟环境,使用 python=3.5.2 创建环境并通过使用 gui 在搜索框中搜索模块来安装模块 tensorflow-gpu 或 tensorflow,它将还要注意为您安装正确的 cuda 文件。使用 anaconda navigator 是最简单的解决方案。

如果您不使用 anaconda,请注意以下事项

tensorflow-gpu 1.3 需要 python 3.5.2、cuda 开发工具包 8.0 和 cudaDNN 6.0,因此安装时请确保运行命令

pip install tensorflow-gpu==1.3

tensorflow-gpu 1.2.1 或更低版本需要 python 3.5.2、cuda 开发工具包 8.0 和 cudaDNN 5.1,因此安装时请确保运行命令

pip install tensorflow-gpu==1.2.1

以下是上述两个过程需要遵循的步骤 设置路径变量 您必须具有以下系统变量

CUDA_HOME = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
CUDA_PATH = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
CUDA_PATH_V8.0 = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"

PATHTEXT 必须包含“.DLL”以及其他扩展名

".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.DLL"

还将以下内容添加到您的路径中

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64;
C:\Windows\SysWOW64;
C:\Windows\System32        

如果您遇到错误,您可以通过 mrry 下载运行以下代码,此代码将检查您的设置并告诉您是否有问题 https://gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c

参考资料: http://blog.nitishmutha.com/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html

以上参考非常有用。 请评论以改进此答案。 希望这会有所帮助,谢谢。

【讨论】:

anaconda 选项听起来不错,但是看着anaconda.org/anaconda/tensorflow-gpu windows 的 tensorflow-gpu 版本似乎是 1.1,有什么方法可以通过 anaconda 获得 1.3? @ftiaronsem 如果您想要 1.3,则无法使用 anaconda-navigator 安装 1.3,然后按照参考链接并记下使用 cudaDNN 6.0【参考方案18】:

tensorflow 1.3 还不支持 cuda 9.0。 我降级到 cuda 8.0,然后它就可以工作了。

【讨论】:

【参考方案19】:

对于那些在旧硬件上运行的用户:

由于使用 tensorflow-gpu 1.6 的 CPU 较旧,您可能会遇到同样的错误。

如果您的 cpu 是 2011 年之前制造的,那么您的最大 tensorflow-gpu 版本是 1.5。

Tensorflow 1.6 要求您的 CPU 上有 AVX 指令。在此验证:Tensorflow Github docs

启用 AVX 的 CPU:Wiki AVX CPUs

我在 conda 环境中为 tensorflow 做了什么:

pip install --ignore-installed --upgrade tensorflow-gpu==1.5

【讨论】:

【参考方案20】:

仅适用于 CPU 的 tensorflow:


我已经使用命令安装了 tensorflow:

pip3 install --upgrade tensorflow

这个安装了tensorflow 1.7 但无法从 withing python 3.6.5 amd64 导入张量流:

import tensorflow as tf

所以,我使用以下命令将 tensorflow 版本从 1.7 降级为 1.5

pip3 install tensorflow==1.5

这卸载了以前的版本并安装了1.5。现在可以了。

看来,tensorflow 1.7 中需要我的CPU does not support AVX instruction 集

我在系统文件夹中有MSVCP140.DLL,在环境变量的PATHEXT 变量中有.DLL。

【讨论】:

我的系统:Windows 8.1,Python 3.6.5 64 位,无 GPU。 可能需要更新,因为从 2.0.0 版本开始,tensorflow-gpu 已集成到常规安装中 - 请参见此处:github.com/fo40225/tensorflow-windows-wheel 也许您想在这里考虑我的答案,其中不同之间的兼容性python和tensorflow版本解释:***.com/questions/45749992/…【参考方案21】:

我在 Windows 系统上的 this post 中发布了解决“DLL 加载失败”问题的一般方法。供参考:

    使用 DLL 依赖项分析器 Dependencies 分析 <Your Python Dir>\Lib\site-packages\tensorflow\python\_pywrap_tensorflow_internal.pyd 并确定确切丢失的 DLL(由 ? 旁边的 DLL)。 .pyd 文件的路径基于 TensorFlow 1.9 GPU 我安装的版本。我不确定名称和路径是否是 其他 TensorFlow 版本也一样。

    查找缺少的 DLL 的信息并安装相应的软件包以解决问题。

【讨论】:

我喜欢这种方法,因为它明确显示了缺少哪些 dll。发现 tensorflow 1.11 正在寻找 CUDA 9 dll,似乎没有搜索 CUDA 10 库。 非常感谢您的建议!在我的机器上,问题是 tensorflow 正在寻找 CUDA takeit v9 附带的 DLL,但我安装了 CUDA toolkit v10 这非常有用。请注意,您必须选择文件名旁边的All files (*.*) 而不仅仅是exe files (*.exe, *.dll) 很好的提示! In my case 我发现我的 TF 2.5.0 安装要求额外的 vcruntime140_1.dll 超出通常在线记录的内容【参考方案22】:

对于 2019 年发现这篇文章的人来说,这个错误也可能发生,因为 Python 3.7 版不支持 TensorFlow(参见https://www.tensorflow.org/install/pip)。因此,请检查 Python 版本:

python --version

如果大于3.6,应该降级到3.6。对于蟒蛇:

conda install python=3.6

然后,安装 TensorFlow。

pip install tensorflow

顺便说一句,我没有 GPU 版本,所以在我的案例中没有与 CUDA 相关的问题。

【讨论】:

我做了,我仍然有同样的问题 这适用于我的学生使用的两台不同的计算机。尝试上述解决方案后,我们仍然遇到问题。在您的情况下,可能是上述情况。【参考方案23】:

在调查 [SO]: Error while training using the estimator API in tensorflow 时遇到了同样的问题(20190909)。

设置:

Win 10 x64 Python 3.7.3 (x64) TensorFlow-GPU 1.13.1 ([TensorFlow]: Install TensorFlow with pip)

错误

[cfati@CFATI-5510-0:e:\Work\Dev\***\q057588589]> "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -c "import tensorflow as tf"
Traceback (most recent call last):
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 74, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 58, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found.


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/errors

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

查看“故障”模块(感谢Dependency Walker),结果发现丢失的不是它本身,而是它的一些依赖项cu*_100.dll 个文件)。

查看[SO]: Python Ctypes - loading dll throws OSError: [WinError 193] %1 is not a valid Win32 application (@CristiFati's answer)(末尾的结论部分)了解有关此类错误的更多详细信息。 我有一个较旧的 CUDA Toolkit 版本 (8),因此,cu*_ 80.dll 个文件。

升级到 TensorFlow-GPU 1.14.0 ("e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -m pip install --upgrade tensorflow-gpu),使错误更清晰(也更短):

[cfati@CFATI-5510-0:e:\Work\Dev\***\q057588589]> "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -c "import tensorflow as tf"
Traceback (most recent call last):
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check
    ctypes.WinDLL(build_info.cudart_dll_name)
  File "c:\install\x64\python\python\03.07.03\Lib\ctypes\__init__.py", line 356, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\__init__.py", line 28, in <module>
    from tensorflow.python import pywrap_tensorflow  # pylint: disable=unused-import
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module>
    self_check.preload_check()
  File "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check
    % (build_info.cudart_dll_name, build_info.cuda_version_number))
ImportError: Could not find 'cudart64_100.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0 from this URL: https://developer.nvidia.com/cuda-90-download-archive

步骤

卸载任何 CUDA Toolkit 版本(可选) 安装[nVidia.Developer]: CUDA Toolkit 10.0 Archive 确保安装 v10.0这个 TensorFlow-GPU 版本是针对 - 检查 [TensorFlow]: Build from source on Windows - GPU )。我安装了 v10.1(这是最新的,也是回答时推荐的版本),并且 .dll 名称没有t 匹配 (cu*_101.dll)。由于我不想安装 v10.0,因此我为现有文件创建了一些 symlink(使用“正确”名称),并且它工作正常。但请记住,这是不受支持的!!!您可能会遇到有趣的行为(包括崩溃)。这是一个(蹩脚的)解决方法(gainarie) 此外,还需要 兼容(意味着它适用于特定的 CUDA Toolkit 版本)cuDNN 版本 ([nVidia.Developer]: cuDNN Archive)。为了访问下载 URL,需要 nVidia 会员资格

经过上述步骤,并设置正确的路径,它工作:

[cfati@CFATI-5510-0:e:\Work\Dev\***\q057588589]> set PATH=%PATH%;%CUDA_PATH%\bin;f:\Install\x64\NVidia\GPU Computing Toolkit\cuDNN\7.6\bin

[cfati@CFATI-5510-0:e:\Work\Dev\***\q057588589]> "e:\Work\Dev\VEnvs\py_064_03.07.03_test0\Scripts\python.exe" -c "import tensorflow;print(\"Success!!!\")"
Success!!!

【讨论】:

以上是关于在 Windows 上,运行“import tensorflow”会生成 No module named “_pywrap_tensorflow”错误的主要内容,如果未能解决你的问题,请参考以下文章

odoo10.0可以在windows上运行吗

如何在Windows上配置并运行Nginx

如何在Windows上配置并运行Nginx

如何在Windows上配置并运行Nginx

如何在Windows上配置并运行Nginx

如何在windows上配置并运行Nginx