【问题标题】:Unable to install tensorflow using conda with python 3.8无法使用带有 python 3.8 的 conda 安装 tensorflow
【发布时间】:2020-07-27 08:05:25
【问题描述】:

最近,我升级到使用 python 3.8 的 Anaconda3 2020.07。在过去的 anaconda 版本中,tensorflow 安装成功。此版本未能成功安装Tensorflow。

我运行了下面的命令;

conda install tensorflow-gpu

我收到的错误信息如下所示;

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - tensorflow-gpu -> python[version='3.5.*|3.6.*|3.7.*|>=3.7,<3.8.0a0|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|>=2.7,<2.8.0a0']

Your python: python=3.8

If python is on the left-most side of the chain, that's the version you've asked for.
When python appears to the right, that indicates that the thing on the left is somehow
not available for the python version you are constrained to. Note that conda will not
change your python version to a different minor version unless you explicitly specify
that.

The following specifications were found to be incompatible with your CUDA driver:

  - feature:/win-64::__cuda==11.0=0

Your installed CUDA driver is: 11.0

是否有带有正确参数的 conda 命令可以成功安装 tensorflow?

【问题讨论】:

  • 嗯,这很奇怪。执行conda install "tensorflow-gpu=2.2" 时是否会出现同样的错误
  • 让我先试试conda install "tensorflow-gpu=2.2"。谢谢。
  • @cel,我收到了PackagesNotFoundError:

标签: python-3.x tensorflow installation anaconda conda


【解决方案1】:

更新:

TF 现在与 Python 3.8 兼容


Tensorflow 与 Python 3.8 不兼容。见https://www.tensorflow.org/install/pip

你需要降级你的python版本:

conda install python=3.7

【讨论】:

  • 对于 anaconda 2020.07 的用户不能这样做,因为默认使用 python 3.8。降级会破坏 anaconda。
  • 如果你使用单独的环境(不是基础),你不会破坏任何东西。据我所知,没有解决方法。您需要降级您的 Python 版本。
  • 谢谢。我想我会等到对 python 3.8 的支持准备就绪。
  • python 3.8 现已支持但仍无法使其与 tensorflow-gpu 一起使用
  • 如果您不想降级您的 Python 版本,那么您可以使用 pip(在您的 conda 环境中)安装与 Python 3.8 兼容的最新 tensorflow。 pip install tensorflow-gpu
【解决方案2】:

用python 3.7创建环境,然后激活:

conda create -n p37env python=3.7
conda activate p37env

并安装张量流。 这对我有用,并从 Anaconda 用户指南中找到了答案(在如何使用不同的 python 版本下:https://conda.io/projects/conda/en/latest/user-guide/getting-started.html#managing-python

【讨论】:

    【解决方案3】:

    来自requirement page

    Python 3.8 支持需要 TensorFlow 2.2 或更高版本。

    所以有一个兼容python 3.8的Tensorflow版本。

    问题是TensorFlow 2.2.0 is not available through conda on Windows,这应该是你运行时得到PackagesNotFoundError的原因

    conda install tensorflow=2.2
    

    编辑 15/03/21

    Tensorflow 2.3.0 is compatible with Windows

    【讨论】:

    • Mac 上出现 PackagesNotFoundError 错误
    【解决方案4】:

    其实你可以直接在anaconda prompt里面使用pip,经过我测试发现conda可以用pypi,先用管理员权限运行anaconda prompt(windows),然后输入"conda update --all"确保所有的包都是最新的,最后进入“pip install tensorflow”安装(新版本的tensorflow已经包含tensorflow-gpu)。

    然后使用VS代码打开一个ipynb并运行

    import tensorflow as tf
    tf.test.gpu_device_name()
    

    一切看起来都不错。

    更多信息请参考 Anaconda 官方文档:https://docs.anaconda.com/anaconda/

    【讨论】:

    • 以下是我用来克服此错误的步骤。以管理员身份启动 anaconda 提示符。 &gt;conda create -n py37 python=3.7 anaconda , &gt;conda activate py37, &gt;conda install tensorflow
    【解决方案5】:

    我认为我们有两个选择

    pip install tensorflow

    或者我们可以使用 anaconda 的另一个环境,如下所示

    conda create -n tf tensorflow pydotplus jupyter

    conda activate tf

    【讨论】:

      【解决方案6】:

      在 anaconda 上安装 tensorflow 的最新开发。

      https://anaconda.org/anaconda/tensorflow https://anaconda.org/anaconda/tensorflow-gpu

      9 天前,Anaconda 上传了一个新的 tensorflow v2.3 包。 Anaconda3 2020.07(使用python v3.8)用户可以通过以下命令轻松升级到tensorflow v2.3;

      conda install -c anaconda tensorflow
      conda install -c anaconda tensorflow-gpu
      

      我亲自测试安装成功。

      这个问题的其他答案现在已经过时了。

      【讨论】:

      • 当前在 Windows 上 Anaconda 中的 tensorflow-gpu 2.3 安装有问题。有关解决方法,请参阅 this post
      【解决方案7】:

      在此处扩展 William's answer 并提供更明确的说明和警告。根据tensorflow's installation instructions,pip 是安装最新版本 tensorflow 的推荐方式——“虽然推荐使用 TensorFlow 提供的 pip 包,但也可以使用社区支持的 Anaconda 包。”

      以下是在 Conda 环境中使用 pip 进行安装的代码:

      conda create -n env_name python=3.8
      conda activate env_name
      conda install pandas scikit-learn matplotlib notebook ##installing usual Data Science packages that does include numpy and scipy 
      pip install tensorflow
      python -c "import tensorflow as tf;print(tf.__version__)" ##checks tf version
      

      一般来说,我们应该be careful 同时混合两个包管理器(conda 和 pip)。所以,建议:

      只有在使用 conda 安装尽可能多的包之后 应该使用 pip 来安装任何剩余的软件。如果修改 需要环境,最好创造一个新的环境 而不是在 pip 之后运行 conda。

      例如,如果我们想在刚刚创建的env_name 环境中安装seaborn,我们应该:

      conda create --name cloned_env --clone env_name
      conda activate cloned_env
      conda install seaborn
      

      一旦我们检查cloned_env 环境工作正常,我们就可以删除env_name 环境。

      【讨论】:

        【解决方案8】:

        我在 Python 3.8.5 的 conda 提示符中遇到了同样的问题,并改用 Python 轮子修复了它。步骤如下:

        1. 如果您还没有 pip,请打开 conda 提示符并安装它:python -m pip install --upgrade pip
        2. python -m pip install --upgrade https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.4.0-cp38-cp38-win_amd64.whl

        注意:如果您需要特定于 CPU 的 tensorflow,请使用此轮:https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.4.0-cp38-cp38-win_amd64.whl

        【讨论】:

          【解决方案9】:

          我刚刚将 python 降级到 3.7,因为 tf 不能用于 3.8 版本,我也不能将 virtualenv 用于代码,这就是为什么

          【讨论】:

            【解决方案10】:

            对我来说唯一可行的答案是:

            conda install -c conda-forge tensorflow
            

            【讨论】:

              【解决方案11】:

              GPU 上的 tensorflow 2.5 似乎与 spyder 存在问题。因此,我按照 anaconda 的建议创建了新环境并安装了 tensorflow gpu。现在我必须使用 prompt 或 jupyter 。至少它有效

              【讨论】:

              • 这应该是对该答案的评论
              【解决方案12】:

              对于 macOS 用户,我建议使用 python 3.7 创建一个环境并在那里安装 tensorflow。

              你也可以运行这些命令:

              conda create -n new_env_name python=3.7
              conda activate new_env_name
              

              【讨论】:

                【解决方案13】:

                我在 Anaconda Spyder 中遇到了类似的问题。这是我的解决方案(在 Anaconda 控制台中):

                conda install pip
                pip install tensorflow ==2.2.0
                

                【讨论】:

                  猜你喜欢
                  • 2020-04-30
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2020-04-05
                  • 1970-01-01
                  • 1970-01-01
                  • 2019-08-19
                  • 1970-01-01
                  相关资源
                  最近更新 更多