Tensorflow安装失败,"编译时版本3.5的模块与运行时版本3.6"

时间:2017-11-10 14:39:52

标签: python linux python-3.x tensorflow pip

我尝试从pip安装:

pip3 install --user --no-cache https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.4.0-cp36-cp36m-linux_x86_64.whl

然后尝试导入并获得:

 Using TensorFlow backend.
  /usr/lib64/python3.6/importlib/_bootstrap.py:205: RuntimeWarning: 
  compiletime version 3.5 of module 
  'tensorflow.python.framework.fast_tensor_util' does not match runtime 
  version 3.6
    return f(*args, **kwds)

  2017-11-10 09:35:01.206112: I 
  tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports 
  instructions that this TensorFlow binary was not compiled to use: SSE4.1 
  SSE4.2 AVX

问题:

  1. 我不明白为什么方向盘说3.6,但我得到关于3.5的警告

  2. 我想编译为我的cpu进行优化,那么我可以使用pip从源代码而不是二进制代码来安装吗?

8 个答案:

答案 0 :(得分:16)

  

RuntimeWarning:模块的编译时版本3.5' tensorflow.python.framework.fast_tensor_util'与运行时版本3.6不匹配

这是一个known issue,得到prioritized,可能会很快修复。现在解决方法是使用python 3.5。

<强>更新

夜间tensorflow构建中的问题has been fixed&#34; tf-nightlytf-nightly-gpu现在有一个从头开始为Linux构建的python3.6二进制文件。&#34 ;

即,以下命令应该与python 3.6一起使用:

# tf-nightly or tf-nightly-gpu
pip3 install tf-nightly
  

您的CPU支持未编译此TensorFlow二进制文件的指令:SSE4.1 SSE4.2 AVX

此警告来自以下事实:默认的tensorflow分布是在没有CPU扩展支持的情况下编译的(更多关于此here)。如果您想获得CPU优化的tensorflow包,您唯一的选择是build it yourself。这有点单调乏味,但绝对可行。构建将生成wheel文件,您只需

即可安装
pip3 install /path/to/the/tensorflow.whl

但是如果您只是想要取消警告,则会执行以下操作:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

答案 1 :(得分:7)

我遇到了同样的问题,我能够通过安装1.3版本而不是使用1.4的tensorflow来解决它。使用以下命令执行此操作。

 pip3 install tensorflow==1.3.0

答案 2 :(得分:4)

我遇到了同样的问题,我修理了它:

pip install --ignore-installed tensorflow

出现问题是因为我之前使用python 3.5编译了本地版本的tensorflow(以启用某些CPU功能)。我最近安装了python 3.6,新的tensorlfow已经支持了这些CPU功能,所以我刚刚安装了官方版本。

<强>更新

在更新tensorflow后,上述方法不再有效。

另一种解决方法是使用anaconda之类的虚拟环境来创建python3.5环境:

conda create -n py35 python=3.5
source activate py35
pip install tensorflow

要使用ipython或jupyter笔记本,请务必在虚拟环境中安装ipykernel:

pip install ipykernel

答案 3 :(得分:4)

只需安装1.3版本的tensorflow。问题解决了。

pip install tensorflow==1.3.0

答案 4 :(得分:1)

解决方案1。 我解决这个问题的方法是降级到最新的python3.5,去python.org下载最新的Python3.5,安装它然后使用普通的pip3 install tensorflow这应该可以解决问题,如果不试试第二个解决方案。

解决方案2(你还需要从python3.6降级到python3.5 我使用Pycharm来解决问题,我在pycharm编辑器中创建了一个项目,然后我将Project Interpreter从python3.6更改为python3.5,这样做也可以转到File&gt;首选项搜索Project Interpreter,从下拉菜单中将python3.6更改为python3.5 点击Apply等待操作完成

enter image description here 然后使用 + 图标

在同一窗口中

enter image description here

将出现一个窗口,让您轻松搜索和安装python库而不使用pip,在我们的例子中我们需要tensorflow,所以只需搜索tensorflow,选择搜索结果上的tensorflow并单击Install Package这将安装包

enter image description here

并且你准备好了,现在你的python3.5上安装了tensorflow,记住这一点。

答案 5 :(得分:1)

现在你可以使用低于3.6.x的python版本,因为现在Tensorflow 1.4.0与python 3.6.x无法正常工作。这将是非常有效的。

答案 6 :(得分:1)

此问题已通过运行

在ubuntu 17.10上得到解决

$ conda install tensorflow

答案 7 :(得分:1)

我使用tensorflow 1.4.0,遇到同样的问题。但你现在可以使用tensorflow 1.6.0。