Unable to install tensorflow using conda with python 3.8

Viewed 39127

Recently, I upgraded to Anaconda3 2020.07 which uses python 3.8. In past versions of anaconda, tensorflow was installed successfully. Tensorflow failed to be installed successfully in this version.

I ran the command below;

conda install tensorflow-gpu

The error message that I received is shown below;

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

Is there a conda command with the right parameters to get tensorflow installed successfully?

13 Answers

UPDATE:

TF is now compatible with Python 3.8


Tensorflow is not compatible with Python 3.8. See https://www.tensorflow.org/install/pip

You need to downgrade your python version :

conda install python=3.7

i think we have two options here

pip install tensorflow

or we can use another env of anaconda such as like this below

conda create -n tf tensorflow pydotplus jupyter

conda activate tf

solving tensorflow installation on anaconda python 3.8

Actually you can directly use pip inside anaconda prompt, after I tested it, I found the conda is capable with pypi, first run the anaconda prompt with administrator permission (in windows), then enter "conda update --all" to make sure all the packages are latest, finally enter "pip install tensorflow" to install (the new version of tensorflow already includes tensorflow-gpu).

Then using VS code to open an ipynb and run

import tensorflow as tf
tf.test.gpu_device_name()

everything looks good.

For more info please refer to Anaconda official docs: https://docs.anaconda.com/anaconda/ .

Expanding upon William's answer here with more explicit instructions and caveats. Pip is the recommended way to install latest version of tensorflow as per tensorflow's installation instructions -- "While the TensorFlow provided pip package is recommended, a community-supported Anaconda package is available."

Here is the code that uses pip to do the installation in a Conda environment:

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

In general, we should be careful while mixing two package managers (conda and pip). So, it is suggested that:

Only after conda has been used to install as many packages as possible should pip be used to install any remaining software. If modifications are needed to the environment, it is best to create a new environment rather than running conda after pip.

For an example, if we would like to install seaborn in the just created env_name environment, we should:

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

Once we check the cloned_env environment is working fine, we can delete the env_name environment.

Latest development for tensorflow installation on anaconda.

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

9 days ago, Anaconda uploaded a new tensorflow v2.3 package. Anaconda3 2020.07 (uses python v3.8) users can easily upgrade to tensorflow v2.3 with the following commands;

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

I have personally tested that the installation worked successfully.

The other answers for this question have now become obsolete.

I was running into the same issue in conda prompt for Python 3.8.5 and fixed it using a Python wheel instead. Here are the steps:

  1. Open conda prompt and install pip if you don't have it already: 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

Note: If you need a CPU specific tensorflow, use this wheel: https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.4.0-cp38-cp38-win_amd64.whl

I just downgraded python to 3.7 as tf is not avialable to 3.8 version also I cannot use virtualenv for code that's why

The only working answer for me is:

conda install -c conda-forge tensorflow

It appears that tensorflow 2.5 on GPU has issues with spyder. So, I made new environment and installed tensorflow gpu as suggested by anaconda. Now I have to use either prompt or jupyter . At least it works

For macos users I suggest create an environment with python 3.7 and install tensorflow there.

You can run these commands too:

conda create -n new_env_name python=3.7
conda activate new_env_name

I had a similar problem in Anaconda Spyder. Here was my solution (In the Anaconda Console):

conda install pip
pip install tensorflow ==2.2.0
Related