How to install tensorflow-gpu==1.11.0 - python

My project needs tensorflow==1.11.0
But when I tried to install it, I got:
pip install tensorflow-gpu==1.11.0
Looking in indexes: http://mirrors.aliyun.com/pypi/simple
ERROR: Could not find a version that satisfies the requirement tensorflow-gpu==1.11.0 (from versions: 1.13.1, 1.13.2, 1.14.0, 1.15.0rc0, 1.15.0rc1, 1.15.0rc2, 1.15.0rc3, 1.15.0, 1.15.2, 1.15.3, 2.0.0a0, 2.0.0b0, 2.0.0b1, 2.0.0rc0, 2.0.0rc1, 2.0.0rc2, 2.0.0, 2.0.1, 2.0.2, 2.1.0rc0, 2.1.0rc1, 2.1.0rc2, 2.1.0, 2.1.1, 2.2.0rc0, 2.2.0rc1, 2.2.0rc2, 2.2.0rc3, 2.2.0rc4, 2.2.0)
ERROR: No matching distribution found for tensorflow-gpu==1.11.0
Plus, I am using py3.7.

Some python versions are incompatible with some versions of Tensorflow. If you very specifically need Tensorflow 1.11.0 then you can probably install it in a Python 3.6 environment.
If you very specifically need Python 3.7, you can probably install Tensorflow 1.13.1 or later.

Related

AWS Codeartifact with upstream pypi not fetching latest version

I have a python Codeartifact repository which has an upstream PyPI repo.
In PyPI a new version of a library (google-auth 2.3.1) was published on the 25th of October, but whenever I try to install it via Codeartifact the latest available version is 2.3.0.
Is there a way to tell Codeartifact that the upstream has newer versions? How long does it takes for Codeartifact to pick up updates in PyPI?
This is the only source I found from AWS which states that this can happen but not how to solve it: https://docs.aws.amazon.com/codeartifact/latest/ug/external-connection.html#external-connection-unavailable
Error message:
ERROR: No matching distribution found for google-authpip3 install google-auth==2.3.1
Looking in indexes: https://aws:****#packages-****.d.codeartifact.eu-central-1.amazonaws.com/pypi/common/simple/
ERROR: Could not find a version that satisfies the requirement google-auth==2.3.1 (from versions: 0.0.1, 0.1.0, 0.2.0, 0.3.0, 0.3.1, 0.3.2, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0, 1.0.0, 1.0.1, 1.0.2, 1.1.0, 1.1.1, 1.2.0, 1.2.1, 1.3.0, 1.4.0, 1.4.1, 1.4.2, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.6.2, 1.6.3, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.12.0, 1.13.0, 1.13.1, 1.14.0, 1.14.1, 1.14.2, 1.14.3, 1.15.0, 1.16.0, 1.16.1, 1.17.0, 1.17.1, 1.17.2, 1.18.0, 1.19.0, 1.19.1, 1.19.2, 1.20.0, 1.20.1, 1.21.0, 1.21.1, 1.21.2, 1.21.3, 1.22.0, 1.22.1, 1.23.0, 1.24.0, 1.25.0, 1.26.0, 1.26.1, 1.27.0, 1.27.1, 1.28.0, 1.28.1, 1.29.0, 1.30.0, 1.30.1, 1.30.2, 1.31.0, 1.32.0, 1.32.1, 1.33.0, 1.33.1, 1.34.0, 1.35.0, 2.0.0.dev0, 2.0.0b1, 2.0.0, 2.0.1, 2.0.2, 2.1.0, 2.2.0, 2.2.1, 2.3.0)
Solution which works for me right now:
create venv if not available python3 -m venv .venv
activate it source .venv/bin/activate
install the package given in the log-statement eg pip install google-authpip3 --no-cache
run poetry again poetry install
if more errors occur, continue with 3)
My assumption is, that the local pip/poetry cache is not up to date. So I force pip to fetch the latest versions

How to include a release candidate (rc) OR the actual version once released in `requirements.txt`

I want to set a dependency in my requirements.txt for tensorflow~=2.5.0. At the time of writing, tensorflow==2.5.0 hasn't been released yet. The latest version available is the release candidate tensorflow==2.5.0rc3. How can I succinctly tell pip to "install the most recent tensorflow 2.5.x version, including release candidates"?
What I've tried so far:
tensorflow~=2.5.0
ERROR: Could not find a version that satisfies the requirement tensorflow~=2.5.0 (from versions: 2.5.0rc0, 2.5.0rc1, 2.5.0rc2, 2.5.0rc3)
ERROR: No matching distribution found for tensorflow~=2.5.0
tensorflow>2.4.1
ERROR: Could not find a version that satisfies the requirement tensorflow>2.4.1 (from versions: 1.13.0rc1, 1.13.0rc2, 1.13.1, 1.13.2, 1.14.0rc0, 1.14.0rc1, 1.14.0, 1.15.0rc0, 1.15.0rc1, 1.15.0rc2, 1.15.0rc3, 1.15.0, 1.15.2, 1.15.3, 1.15.4, 1.15.5, 2.0.0a0, 2.0.0b0, 2.0.0b1, 2.0.0rc0, 2.0.0rc1, 2.0.0rc2, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.1.0rc0, 2.1.0rc1, 2.1.0rc2, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.2.0rc0, 2.2.0rc1, 2.2.0rc2, 2.2.0rc3, 2.2.0rc4, 2.2.0, 2.2.1, 2.2.2, 2.3.0rc0, 2.3.0rc1, 2.3.0rc2, 2.3.0, 2.3.1, 2.3.2, 2.4.0rc0, 2.4.0rc1, 2.4.0rc2, 2.4.0rc3, 2.4.0rc4, 2.4.0, 2.4.1, 2.5.0rc0, 2.5.0rc1, 2.5.0rc2, 2.5.0rc3)
ERROR: No matching distribution found for tensorflow>2.4.1
According to section "Pre-release Versions" in the pip documentation:
If a Requirement specifier includes a pre-release or development version (e.g. >=0.0.dev0) then pip will allow pre-release and development versions for that requirement. This does not include the != flag.
This can be tested on the command line. As Tensorflow 2.5.0 is currently not yet released, we get:
$ pip download tensorflow~=2.5.0
ERROR: Could not find a version that satisfies the requirement tensorflow~=2.5.0 (from versions: 2.5.0rc0, 2.5.0rc1, 2.5.0rc2, 2.5.0rc3)
ERROR: No matching distribution found for tensorflow~=2.5.0
But if we add a pre-release version specifier:
$ pip download tensorflow~=2.5.0rc0
Collecting tensorflow~=2.5.0rc0
Downloading tensorflow-2.5.0rc3-cp39-cp39-win_amd64.whl (422.6 MB)
…
This would install the regular release once it becomes available.

How to know what python version a package is compatible with

I tried to install an old version of a python package and got the Could not find a version that satisfies the requirement... error. I am confident that the package and the specified version do exist, and I have learned that this problem often occurs when the package is incompatible with the python version.
How do I find out what python version I need without installing them all and trying pip install until it works?
You can look up the package on the Python Package Index and scroll down to the "Meta" section in the left sidebar. This shows the Python version required by the package. As you do not specify the package you are looking for, I will use numpy as an example. For the current version of numpy, the following information is listed:
Requires: Python >=3.7
Therefore, you need Python 3.7 or higher to install this version of numpy.
If you are using an older version of Python and need the most recent version of the package that is compatible with that version, you can go to the release history (the second link at the top of the sidebar) and try different versions, scrolling down to the "Meta" section for every version. This is still a manual process, but less work than trying to install every single version.
Note: often, support for older versions is dropped in larger updates (so when either the first or second version number is updated), so you can skip small updates to speed up your search process.
For example, using this process, you can deduce that numpy 1.19.5 is the latest version to support Python 3.6, and numpy 1.16.6 is the latest version to support Python 2.7. At the top of the page, the command to install an older version of a package is shown, for example: pip install numpy==1.16.6.
If you want a more automated of finding this out you can trick pip into showing you. When you try to install a version of a package which doesn't exist pip provides you with a list of packages available.
pip install numpy==missing
In the response we can see all the versions
ERROR: Could not find a version that satisfies the requirement numpy==missing (from versions: 1.3.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.9.1, 1.9.2, 1.9.3, 1.10.0.post2, 1.10.1, 1.10.2, 1.10.4, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.12.0, 1.12.1, 1.13.0rc1, 1.13.0rc2, 1.13.0, 1.13.1, 1.13.3, 1.14.0rc1, 1.14.0, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.14.5, 1.14.6, 1.15.0rc1, 1.15.0rc2, 1.15.0, 1.15.1, 1.15.2, 1.15.3, 1.15.4, 1.16.0rc1, 1.16.0rc2, 1.16.0, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.16.6, 1.17.0rc1, 1.17.0rc2, 1.17.0, 1.17.1, 1.17.2, 1.17.3, 1.17.4, 1.17.5, 1.18.0rc1, 1.18.0, 1.18.1, 1.18.2, 1.18.3, 1.18.4, 1.18.5, 1.19.0rc1, 1.19.0rc2, 1.19.0, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.19.5, 1.20.0rc1, 1.20.0rc2, 1.20.0, 1.20.1, 1.20.2, 1.20.3, 1.21.0rc1, 1.21.0rc2, 1.21.0, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.22.0rc1, 1.22.0rc2, 1.22.0rc3, 1.22.0, 1.22.1, 1.22.2, 1.22.3, 1.22.4, 1.23.0rc1, 1.23.0rc2, 1.23.0rc3, 1.23.0, 1.23.1, 1.23.2, 1.23.3, 1.23.4)
ERROR: No matching distribution found for numpy==missing
If you want to test availability for a version of python which you are not running (in my case version 2.4) then you need to do the following.
pip install --python-version 24 --no-deps --target test-pkg numpy==missing
Note the options --no-deps --target are required for us to run --python-version
ERROR: Could not find a version that satisfies the requirement numpy==missing (from versions: 1.3.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.9.1, 1.9.2, 1.9.3, 1.10.0.post2, 1.10.1, 1.10.2, 1.10.4, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.12.0, 1.12.1)
ERROR: No matching distribution found for numpy==missing
Tested on python version 3.5, pip==20.2.3
Combining this answer and that answer led me to a working solution with Python 3.10.8 (and pip>=2.22):
python -m pip install numpy== --dry-run --python-version 2.4 --no-deps --target foo
Output:
ERROR: Could not find a version that satisfies the requirement numpy== (from versions: 1.3.0, 1.4.1, 1.5.0, 1.5.1, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2, 1.9.0, 1.9.1, 1.9.2, 1.9.3, 1.10.0.post2, 1.10.1, 1.10.2, 1.10.4, 1.11.0, 1.11.1, 1.11.2, 1.11.3, 1.12.0, 1.12.1)
ERROR: No matching distribution found for numpy==
Note that if you are only looking for the latest version (not the whole list) of a package compatible with a given Python version you can also run:
python -m pip install numpy --dry-run --python-version 2.4 --no-deps --target foo
Output:
Collecting numpy
Downloading numpy-1.12.1.zip (4.8 MB)
---------------------------------------- 4.8/4.8 MB 3.6 MB/s eta 0:00:00
Preparing metadata (setup.py) ... done
Would install numpy-1.12.1
The most simpler approach I found for this problem was,
https://pyreadiness.org/3.9
This website gives you the list of packages both supported and not supported by python 3.9 version
If the package is in green then its supported and if its in white then not supported.
Search the page using Control + F.
if you want to check for any other version just change the URL to that specific python version,
e.g. Looking for python 3.8 then the URL will be
https://pyreadiness.org/3.8
This might not be the best approach but for someone looking for just whether a package is supported by a given python version its the easiest approach!

tensorflow error when installing turicreate?

When I install turicreate package, it gives me the following error:
Collecting tensorflow>=2.0.0 (from turicreate)
Could not find a version that satisfies the requirement tensorflow>=2.0.0 (from turicreate) (from versions: 0.12.1, 1.0.0, 1.0.1, 1.1.0rc0, 1.1.0rc1, 1.1.0rc2, 1.1.0, 1.2.0rc0, 1.2.0rc1, 1.2.0rc2, 1.2.0, 1.2.1, 1.3.0rc0, 1.3.0rc1, 1.3.0rc2, 1.3.0, 1.4.0rc0, 1.4.0rc1, 1.4.0, 1.4.1, 1.5.0rc0, 1.5.0rc1, 1.5.0, 1.5.1, 1.6.0rc0, 1.6.0rc1, 1.6.0, 1.7.0rc0, 1.7.0rc1, 1.7.0, 1.7.1, 1.8.0rc0, 1.8.0rc1, 1.8.0, 1.9.0rc0, 1.9.0rc1, 1.9.0rc2, 1.9.0, 1.10.0rc0, 1.10.0rc1, 1.10.0, 1.10.1, 1.11.0rc0, 1.11.0rc1, 1.11.0rc2, 1.11.0, 1.12.0rc0, 1.12.0rc1, 1.12.0rc2, 1.12.0, 1.12.2, 1.12.3, 1.13.0rc0, 1.13.0rc1, 1.13.0rc2, 1.13.1, 1.13.2, 1.14.0rc0, 1.14.0rc1, 1.14.0, 2.0.0a0, 2.0.0b0, 2.0.0b1)
No matching distribution found for tensorflow>=2.0.0 (from turicreate)
which I encountered the same when installing tensorflow 2.0.0.
And I managed to install tensorflow2 with modification to the version(add a 'a0','b0','b1' after '2.0.0') using pip3 install tensorflow==2.0.0a0. However, I still cannot pass the installation of turicreate even with tensorflow2.0.0a0 installed and result in the same 'tensorflow error' shown above.
I am using python 3.6, numpy 1.16.5.
Can you please help me out?
Upgrade pip
# On Linux or macOS:
pip3 install -U pip
# On Windows:
python -m pip3 install -U pip
Install turicreate
pip3 install turicreate
This will solve your problem
I was having the same problem when I tried to install turicreate on the Jupyter Docker image that comes with some data science libraries loaded:
Image: jupyter/scipy-notebook
Packages: pandas, numexpr, matplotlib, scipy, seaborn, scikit-learn, scikit-image, sympy, cython, patsy, statsmodel, cloudpickle, dill, numba, bokeh, sqlalchemy, hdf5, vincent, beautifulsoup, protobuf, and xlrd packages
Error message:
Could not find a version that satisfies the requirement tensorflow>=2.0.0 (from turicreate) (from versions: 0.12.1, 1.0.0, 1.0.1, 1.1.0rc0, 1.1.0rc1, 1.1.0rc2, 1.1.0, 1.2.0rc0, 1.2.0rc1, 1.2.0rc2, 1.2.0, 1.2.1, 1.3.0rc0, 1.3.0rc1, 1.3.0rc2, 1.3.0, 1.4.0rc0, 1.4.0rc1, 1.4.0, 1.4.1, 1.5.0rc0, 1.5.0rc1, 1.5.0, 1.5.1, 1.6.0rc0, 1.6.0rc1, 1.6.0, 1.7.0rc0, 1.7.0rc1, 1.7.0, 1.7.1, 1.8.0rc0, 1.8.0rc1, 1.8.0, 1.9.0rc0, 1.9.0rc1, 1.9.0rc2, 1.9.0, 1.10.0rc0, 1.10.0rc1, 1.10.0, 1.10.1, 1.11.0rc0, 1.11.0rc1, 1.11.0rc2, 1.11.0, 1.12.0rc0, 1.12.0rc1, 1.12.0rc2, 1.12.0, 1.12.2, 1.12.3, 1.13.0rc0, 1.13.0rc1, 1.13.0rc2, 1.13.1, 1.13.2, 1.14.0rc0, 1.14.0rc1, 1.14.0, 2.0.0a0, 2.0.0b0, 2.0.0b1)
No matching distribution found for tensorflow>=2.0.0 (from turicreate)
However, when I took the basic (stripped) Jupyter image, it worked:
Image: jupyter/base-notebook
Packages: git, emacs, jed, nano, tzdata, and unzip
Installation instructions for turicreate:
from __future__ import print_function
import sys
!{sys.executable} -m pip install turicreate
Output:
Successfully installed absl-py-0.9.0 astor-0.8.1 cachetools-4.0.0 coremltools-3.1 gast-0.2.2 google-auth-1.10.0 google-auth-oauthlib-0.4.1 google-pasta-0.1.8 grpcio-1.26.0 h5py-2.10.0 keras-applications-1.0.8 keras-preprocessing-1.1.0 llvmlite-0.30.0 markdown-3.1.1 numba-0.46.0 numpy-1.16.4 opt-einsum-3.1.0 pandas-0.25.3 pillow-6.2.1 prettytable-0.7.2 protobuf-3.11.2 pyasn1-0.4.8 pyasn1-modules-0.2.7 pytz-2019.3 requests-oauthlib-1.3.0 resampy-0.2.1 rsa-4.0 scipy-1.4.1 tensorboard-2.0.2 tensorflow-2.0.0 tensorflow-estimator-2.0.1 termcolor-1.1.0 turicreate-6.0 werkzeug-0.16.0 wrapt-1.11.2
So, I guess the problem is that some of the libraries that you have installed in your environment conflict with turicreate. Perhaps you should try to use the above mentioned Docker image or try to create a virtual environment so you work in isolation (not tested this).
Info on the different Docker images:
https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-scipy-notebook
Turicreate installation instructions where they comment on the virtual environment:
https://github.com/apple/turicreate#installation
Firstly, give try to a latest version of pip pip3 install -U pip, usually, it has less problems than previous.
Otherwise, if above fails, you can try running with pip3 install --no-deps turicreate to get past the cryptic error.
You'll need to install the dependencies manually. All 110 of them.
You can generate a list of them with something along these lines:
import os;
s = os.popen('pip3 freeze turicreate').read()
for q in [x.split('==')[0] for x in s.split('\n')]:
os.system('echo {} >> t.tmp'.format(q)
Then they can be installed with pip install -r t.tmp or for x in $(cat t.tmp); do pip3 install $x; done
I'm not sure how the funtionality related to the tensorflow or any other failed package is affected by this but I've managed to get simple sframes working with this method.
Then I've upgraded the pip and all the libs that weren't working installed without a problem.
Try upgrading pip. Tensorflow 2.0 needs newer versions of pip to be installed.
Personally this worked,
upgrade pip
installed tf2.0
installed turicreate.

Unable to downgrade Tensorflow

I have Tensorflow 2 on my Mac but I need to downgrade it to 1.6.0 because I am using a package that needs that version of Tensorflow. I get the following error:
Collecting tensorflow==1.6.0
Could not find a version that satisfies the requirement tensorflow==1.6.0 (from versions: 1.13.0rc1, 1.13.0rc2, 1.13.1, 1.13.2, 1.14.0rc0, 1.14.0rc1, 1.14.0, 1.15.0rc0, 1.15.0rc1, 1.15.0rc2, 1.15.0rc3, 1.15.0, 2.0.0a0, 2.0.0b0, 2.0.0b1, 2.0.0rc0, 2.0.0rc1, 2.0.0rc2, 2.0.0)
No matching distribution found for tensorflow==1.6.0
What could be the reason?
How are you installing tensorflow? What command are you inputting? Try the below command:
pip install tensorflow==1.6.0

Categories