无法在python 3.8中使用conda安装tensorflow

时间:2020-07-27 08:05:25

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

最近,我升级到了使用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?

10 个答案:

答案 0 :(得分:8)

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

您需要降级python版本:

conda install python=3.7

答案 1 :(得分:3)

使用python 3.7创建一个环境,然后将其激活:

conda create -n p37env python=3.7
conda activate p37env

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

答案 2 :(得分:2)

实际上,您可以直接在anaconda提示符内使用pip,经过测试,我发现conda可以使用pypi,首先在管理员许可下运行anaconda提示符(在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/

答案 3 :(得分:2)

来自requirement page

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

因此,有一个Tensorflow版本与python 3.8兼容。

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

conda install tensorflow=2.2

答案 4 :(得分:0)

在此处William's answer上进行了更明确的说明和警告。根据{{​​3}},建议使用Pip来安装最新版本的tensorflow-“虽然建议使用TensorFlow提供的pip软件包,但可以使用社区支持的Anaconda软件包。”

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

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

通常,我们应该tensorflow's installation instructions混用两个软件包管理器(conda和pip)。因此,建议:

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

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

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

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

答案 5 :(得分:0)

最新开发的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

我已经亲自测试过安装是否成功。

此问题的其他答案现在已过时。

答案 6 :(得分:0)

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

您也可以运行这些命令:

conda create -n new_env_name python=3.7
conda activate new_env_name

答案 7 :(得分:0)

我在 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

答案 8 :(得分:0)

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

conda install pip
pip install tensorflow ==2.2.0

答案 9 :(得分:0)

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