ray-project / tune-sklearn

A drop-in replacement for Scikit-Learn’s GridSearchCV / RandomizedSearchCV -- but with cutting edge hyperparameter tuning techniques.
https://docs.ray.io/en/master/tune/api_docs/sklearn.html
Apache License 2.0
465 stars 52 forks source link

Installation fails on Python 3.11/Windows #283

Open amotl opened 10 months ago

amotl commented 10 months ago

Dear Maintainers,

first things first: Thanks a stack for conceiving this package.

We have been tripped at https://github.com/pycaret/pycaret/pull/3814 / https://github.com/pycaret/pycaret/pull/3815#issuecomment-1793897533 when adding Python 3.11 to the CI/GHA configuration of PyCaret, and came up with a snippet to reproduce the issue.

docker run -it --rm --platform=windows/amd64 python:3.11
pip install tune-sklearn

The problem is apparently at this spot?

ERROR: Could not find a version that satisfies the requirement numpy==1.21.3

With kind regards, Andreas.

Full error output

Collecting tune-sklearn
  Obtaining dependency information for tune-sklearn from https://files.pythonhosted.org/packages/43/10/bb45f851c5e7324cfe711336099a99db79100a8f8f9aceb58c5693ecf
106/tune_sklearn-0.4.6-py3-none-any.whl.metadata
  Using cached tune_sklearn-0.4.6-py3-none-any.whl.metadata (11 kB)
Collecting numpy>=1.16 (from tune-sklearn)
  Obtaining dependency information for numpy>=1.16 from https://files.pythonhosted.org/packages/82/0f/3f712cd84371636c5375d2dd70e7514d264cec6bdfc3d7997a4236e9f9
48/numpy-1.26.1-cp311-cp311-win_amd64.whl.metadata
  Using cached numpy-1.26.1-cp311-cp311-win_amd64.whl.metadata (61 kB)
Collecting ray[tune]>=2.0.0 (from tune-sklearn)
  Obtaining dependency information for ray[tune]>=2.0.0 from https://files.pythonhosted.org/packages/14/39/a148348a92d8ec27ca92d07923ce95b28d4be320a3803f95b46dd
2d04987/ray-2.8.0-cp311-cp311-win_amd64.whl.metadata
  Using cached ray-2.8.0-cp311-cp311-win_amd64.whl.metadata (13 kB)
Collecting scikit-learn (from tune-sklearn)
  Obtaining dependency information for scikit-learn from https://files.pythonhosted.org/packages/4e/ba/ce9bd1cd4953336a0e213b29cb80bb11816f2a93de8c99f88ef0b446a
d0c/scikit_learn-1.3.2-cp311-cp311-win_amd64.whl.metadata
  Downloading scikit_learn-1.3.2-cp311-cp311-win_amd64.whl.metadata (11 kB)
Collecting scipy (from tune-sklearn)
  Obtaining dependency information for scipy from https://files.pythonhosted.org/packages/81/d7/d2537d51efb692d0c411e64267ba349e7668d40f5bc73cefe78ccd650dcd/sci
py-1.11.3-cp311-cp311-win_amd64.whl.metadata
  Downloading scipy-1.11.3-cp311-cp311-win_amd64.whl.metadata (60 kB)
     ---------------------------------------- 60.4/60.4 kB 1.6 MB/s eta 0:00:00
Collecting click>=7.0 (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for click>=7.0 from https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a322
9/click-8.1.7-py3-none-any.whl.metadata
  Using cached click-8.1.7-py3-none-any.whl.metadata (3.0 kB)
Collecting filelock (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for filelock from https://files.pythonhosted.org/packages/81/54/84d42a0bee35edba99dee7b59a8d4970eccdd44b99fe728ed912106fc781/
filelock-3.13.1-py3-none-any.whl.metadata
  Using cached filelock-3.13.1-py3-none-any.whl.metadata (2.8 kB)
Collecting jsonschema (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for jsonschema from https://files.pythonhosted.org/packages/ce/aa/d1bd0b5ec568a903cc3ebcb6b096ab65c1d971c8a01ca3bf3cf788c3c64
6/jsonschema-4.19.2-py3-none-any.whl.metadata
  Using cached jsonschema-4.19.2-py3-none-any.whl.metadata (7.9 kB)
Collecting msgpack<2.0.0,>=1.0.0 (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for msgpack<2.0.0,>=1.0.0 from https://files.pythonhosted.org/packages/b4/3d/c8dd23050eefa3d9b9c5b8329ed3308c2f2f80f65825e9ea
4b7fa621cdab/msgpack-1.0.7-cp311-cp311-win_amd64.whl.metadata
  Using cached msgpack-1.0.7-cp311-cp311-win_amd64.whl.metadata (9.4 kB)
Collecting packaging (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for packaging from https://files.pythonhosted.org/packages/ec/1a/610693ac4ee14fcdf2d9bf3c493370e4f2ef7ae2e19217d7a237ff42367d
/packaging-23.2-py3-none-any.whl.metadata
  Using cached packaging-23.2-py3-none-any.whl.metadata (3.2 kB)
Collecting protobuf!=3.19.5,>=3.15.3 (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for protobuf!=3.19.5,>=3.15.3 from https://files.pythonhosted.org/packages/72/eb/a07cc36ed9b119062886935a8371da8a977dda30b19c
f57fe9162589b6f7/protobuf-4.25.0-cp310-abi3-win_amd64.whl.metadata
  Using cached protobuf-4.25.0-cp310-abi3-win_amd64.whl.metadata (541 bytes)
Collecting pyyaml (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for pyyaml from https://files.pythonhosted.org/packages/b3/34/65bb4b2d7908044963ebf614fe0fdb080773fc7030d7e39c8d3eddcd4257/Py
YAML-6.0.1-cp311-cp311-win_amd64.whl.metadata
  Using cached PyYAML-6.0.1-cp311-cp311-win_amd64.whl.metadata (2.1 kB)
Collecting aiosignal (from ray[tune]>=2.0.0->tune-sklearn)
  Using cached aiosignal-1.3.1-py3-none-any.whl (7.6 kB)
Collecting frozenlist (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for frozenlist from https://files.pythonhosted.org/packages/39/16/72d9ccd30815d0b37218348f053be37bc3d14288ac192a794a39990ac28
e/frozenlist-1.4.0-cp311-cp311-win_amd64.whl.metadata
  Using cached frozenlist-1.4.0-cp311-cp311-win_amd64.whl.metadata (5.3 kB)
Collecting requests (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for requests from https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/
requests-2.31.0-py3-none-any.whl.metadata
  Using cached requests-2.31.0-py3-none-any.whl.metadata (4.6 kB)
Collecting pandas (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for pandas from https://files.pythonhosted.org/packages/db/3e/db3e98911b5da217d1e3f85b6e091448cb8f8be674bdaff3c0ec0dd855e0/pa
ndas-2.1.2-cp311-cp311-win_amd64.whl.metadata
  Downloading pandas-2.1.2-cp311-cp311-win_amd64.whl.metadata (18 kB)
Collecting tensorboardX>=1.9 (from ray[tune]>=2.0.0->tune-sklearn)
  Obtaining dependency information for tensorboardX>=1.9 from https://files.pythonhosted.org/packages/44/71/f3e7c9b2ab67e28c572ab4e9d5fa3499e0d252650f96d8a3a03e
26677f53/tensorboardX-2.6.2.2-py2.py3-none-any.whl.metadata
  Using cached tensorboardX-2.6.2.2-py2.py3-none-any.whl.metadata (5.8 kB)
Collecting pyarrow<7.0.0,>=6.0.1 (from ray[tune]>=2.0.0->tune-sklearn)
  Using cached pyarrow-6.0.1.tar.gz (770 kB)
  Installing build dependencies ... error
  error: subprocess-exited-with-error

  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [12 lines of output]
      Ignoring numpy: markers 'python_version < "3.8"' don't match your environment
      Ignoring numpy: markers 'python_version == "3.8"' don't match your environment
      Ignoring numpy: markers 'python_version == "3.9"' don't match your environment
      Collecting cython>=0.29
        Obtaining dependency information for cython>=0.29 from https://files.pythonhosted.org/packages/30/ca/d68432adc1bf90b450c4d9aaf7cbadae50bca0cad1686b19764
98abe2eca/Cython-3.0.5-cp311-cp311-win_amd64.whl.metadata
        Using cached Cython-3.0.5-cp311-cp311-win_amd64.whl.metadata (3.2 kB)
      ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.2
1.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11
      ERROR: Could not find a version that satisfies the requirement numpy==1.21.3 (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.0, 1.13.1,
1.13.3, 1.14.0, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.14.5, 1.14.6, 1.15.0, 1.15.1, 1.15.2, 1.15.3, 1.15.4, 1.16.0, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.16.6,
1.17.0, 1.17.1, 1.17.2, 1.17.3, 1.17.4, 1.17.5, 1.18.0, 1.18.1, 1.18.2, 1.18.3, 1.18.4, 1.18.5, 1.19.0, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.19.5, 1.20.0, 1.20.1,
1.20.2, 1.20.3, 1.21.0, 1.21.1, 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, 1.23.5, 1.24.0r
c1, 1.24.0rc2, 1.24.0, 1.24.1, 1.24.2, 1.24.3, 1.24.4, 1.25.0rc1, 1.25.0, 1.25.1, 1.25.2, 1.26.0b1, 1.26.0rc1, 1.26.0, 1.26.1)
      ERROR: No matching distribution found for numpy==1.21.3

      [notice] A new release of pip is available: 23.2.1 -> 23.3.1
      [notice] To update, run: python.exe -m pip install --upgrade pip
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

[notice] A new release of pip is available: 23.2.1 -> 23.3.1
[notice] To update, run: python.exe -m pip install --upgrade pip

References

This is probably the same issue?