google-deepmind/distrax

Bump Numpy Version

Artur-Galstyan opened this issue · 3 comments

The last commit to requirements/requirements.txt was 9 months ago. Surely, we can bump the numpy version to >1.23, right?

Any updates? Currently I am unable to install distrax using pip due to old Numpy version requirement.

Collecting distrax
  Downloading distrax-0.1.3-py3-none-any.whl (317 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 318.0/318.0 kB 1.9 MB/s eta 0:00:00
Requirement already satisfied: absl-py>=0.9.0 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from distrax) (1.4.0)
Requirement already satisfied: chex>=0.0.7 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from distrax) (0.1.7)
Requirement already satisfied: jax>=0.1.55 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from distrax) (0.4.8)
Requirement already satisfied: jaxlib>=0.1.67 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from distrax) (0.4.7)
Collecting numpy<1.23,>=1.18.0
  Downloading numpy-1.22.4.zip (11.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.5/11.5 MB 14.2 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting tensorflow-probability>=0.15.0
  Using cached tensorflow_probability-0.19.0-py2.py3-none-any.whl (6.7 MB)
Requirement already satisfied: dm-tree>=0.1.5 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from chex>=0.0.7->distrax) (0.1.8)
Requirement already satisfied: toolz>=0.9.0 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from chex>=0.0.7->distrax) (0.12.0)
Requirement already satisfied: ml-dtypes>=0.0.3 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from jax>=0.1.55->distrax) (0.0.4)
Requirement already satisfied: opt-einsum in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from jax>=0.1.55->distrax) (3.3.0)
Requirement already satisfied: scipy>=1.7 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from jax>=0.1.55->distrax) (1.10.1)
Requirement already satisfied: six>=1.10.0 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from tensorflow-probability>=0.15.0->distrax) (1.16.0)
Requirement already satisfied: decorator in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from tensorflow-probability>=0.15.0->distrax) (5.1.1)
Requirement already satisfied: cloudpickle>=1.3 in /home/one/anaconda3/envs/jax/lib/python3.11/site-packages (from tensorflow-probability>=0.15.0->distrax) (2.2.1)
Collecting gast>=0.3.2
  Using cached gast-0.5.3-py3-none-any.whl (19 kB)
Collecting ml-dtypes>=0.0.3
  Downloading ml_dtypes-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (190 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 190.6/190.6 kB 4.7 MB/s eta 0:00:00
  Downloading ml_dtypes-0.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (152 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 152.0/152.0 kB 3.4 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of gast to determine which version is compatible with other requirements. This could take a while.
Collecting gast>=0.3.2
  Downloading gast-0.5.2-py3-none-any.whl (10 kB)
INFO: pip is looking at multiple versions of dm-tree to determine which version is compatible with other requirements. This could take a while.
Collecting dm-tree>=0.1.5
  Using cached dm_tree-0.1.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (152 kB)
INFO: pip is looking at multiple versions of cloudpickle to determine which version is compatible with other requirements. This could take a while.
Collecting cloudpickle>=1.3
  Using cached cloudpickle-2.2.1-py3-none-any.whl (25 kB)
INFO: pip is looking at multiple versions of tensorflow-probability to determine which version is compatible with other requirements. This could take a while.
Collecting tensorflow-probability>=0.15.0
  Using cached tensorflow_probability-0.18.0-py2.py3-none-any.whl (6.6 MB)
  Downloading tensorflow_probability-0.17.0-py2.py3-none-any.whl (6.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.5/6.5 MB 35.5 MB/s eta 0:00:00
  Downloading tensorflow_probability-0.16.0-py2.py3-none-any.whl (6.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.3/6.3 MB 33.1 MB/s eta 0:00:00
  Downloading tensorflow_probability-0.15.0-py2.py3-none-any.whl (5.7 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.7/5.7 MB 46.0 MB/s eta 0:00:00
INFO: pip is looking at multiple versions of numpy to determine which version is compatible with other requirements. This could take a while.
Collecting numpy<1.23,>=1.18.0
  Downloading numpy-1.22.3.zip (11.5 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.5/11.5 MB 1.9 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
INFO: pip is looking at multiple versions of tensorflow-probability to determine which version is compatible with other requirements. This could take a while.
  Downloading numpy-1.22.2.zip (11.4 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.4/11.4 MB 680.2 kB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Downloading numpy-1.22.1.zip (11.4 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.4/11.4 MB 3.6 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Downloading numpy-1.22.0.zip (11.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 11.3/11.3 MB 49.6 MB/s eta 0:00:00
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
  Downloading numpy-1.21.1.zip (10.3 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.3/10.3 MB 20.4 MB/s eta 0:00:00
  Installing build dependencies ... |^canceled
ERROR: Operation cancelled by user

I haven't had any trouble with using a higher numpy version, but your mileage may vary. I haven't made a PR on this, because I believe it's up to DeepMind to decide on this, since they also have to think about their other Jax frameworks. Not sure though :/

Increasing the upper bound of NumPy would make this package play well with the requirements of TensorFlow as well!