Skip to content

Errors installing Python dependencies #380

@Vidminas

Description

@Vidminas

Dear Dynabench team,

Attempting to set up Dynabench locally, I followed the instructions at: https://github.com/mlcommons/dynabench/blob/main/docs/start.md
I'm using Windows 10 with miniconda3 and MSVC 2022 Build Tools for C/C++.
I ran:

conda create -n dynabench python=3.7
conda activate dynabench
pip install -r requirements.txt

At the step of installing requirements, I encountered several errors:

  1. An error about the sklearn dependency: The 'sklearn' PyPI package is deprecated, use 'scikit-learn' rather than 'sklearn' for pip commands.
Full output
(base) PS C:\Users\Vidminas\GitHub\dynabench> conda activate dynabench
(dynabench) PS C:\Users\Vidminas\GitHub\dynabench> pip install -r .\requirements.txt
Collecting git+https://github.com/facebookresearch/dynalab.git (from -r .\requirements.txt (line 19))
  Cloning https://github.com/facebookresearch/dynalab.git to c:\users\vidminas\appdata\local\temp\pip-req-build-_r1ar5zc
  Running command git clone --filter=blob:none --quiet https://github.com/facebookresearch/dynalab.git 'C:\Users\Vidminas\AppData\Local\Temp\pip-req-build-_r1ar5zc'
  Resolved https://github.com/facebookresearch/dynalab.git to commit bf6addb37129c57ef85042502702af27a266a0cc
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting augly>=0.1.10
  Downloading augly-1.0.0-py3-none-any.whl (24.3 MB)
     ---------------------------------------- 24.3/24.3 MB 6.3 MB/s eta 0:00:00
Collecting aiohttp
  Downloading aiohttp-3.8.6-cp37-cp37m-win_amd64.whl (326 kB)
     ---------------------------------------- 326.9/326.9 kB 9.9 MB/s eta 0:00:00
Collecting bottle
  Downloading bottle-0.13.4-py2.py3-none-any.whl (103 kB)
     ---------------------------------------- 103.8/103.8 kB 5.8 MB/s eta 0:00:00
Collecting cheroot
  Downloading cheroot-10.0.1-py3-none-any.whl (104 kB)
     ---------------------------------------- 104.8/104.8 kB 5.9 MB/s eta 0:00:00
Collecting PyJWT>=2.0.0
  Using cached PyJWT-2.8.0-py3-none-any.whl (22 kB)
Collecting numpy
  Downloading numpy-1.21.6-cp37-cp37m-win_amd64.whl (14.0 MB)
     ---------------------------------------- 14.0/14.0 MB 12.3 MB/s eta 0:00:00
Collecting pymysql
  Downloading PyMySQL-1.1.1-py3-none-any.whl (44 kB)
     ---------------------------------------- 45.0/45.0 kB 2.2 MB/s eta 0:00:00
Collecting sagemaker
  Downloading sagemaker-2.229.0-py3-none-any.whl (1.5 MB)
     ---------------------------------------- 1.5/1.5 MB 19.5 MB/s eta 0:00:00
Collecting six
  Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)
Collecting SQLAlchemy==1.3.23
  Downloading SQLAlchemy-1.3.23-cp37-cp37m-win_amd64.whl (1.2 MB)
     ---------------------------------------- 1.2/1.2 MB 9.8 MB/s eta 0:00:00
Collecting torch
  Downloading torch-1.13.1-cp37-cp37m-win_amd64.whl (162.6 MB)
     ---------------------------------------- 162.6/162.6 MB 4.6 MB/s eta 0:00:00
Collecting transformers
  Downloading transformers-4.30.2-py3-none-any.whl (7.2 MB)
     ---------------------------------------- 7.2/7.2 MB 10.9 MB/s eta 0:00:00
Collecting werkzeug
  Downloading Werkzeug-2.2.3-py3-none-any.whl (233 kB)
     ---------------------------------------- 233.6/233.6 kB 7.0 MB/s eta 0:00:00
Collecting boto3==1.24.56
  Downloading boto3-1.24.56-py3-none-any.whl (132 kB)
     ---------------------------------------- 132.5/132.5 kB 7.6 MB/s eta 0:00:00
Collecting yoyo-migrations
  Downloading yoyo_migrations-9.0.0-py3-none-any.whl (49 kB)
     ---------------------------------------- 49.0/49.0 kB 2.6 MB/s eta 0:00:00
Collecting pandas==1.3.0
  Downloading pandas-1.3.0-cp37-cp37m-win_amd64.whl (10.0 MB)
     ---------------------------------------- 10.0/10.0 MB 7.4 MB/s eta 0:00:00
Collecting sacrebleu>=2.0.0
  Downloading sacrebleu-2.4.2-py3-none-any.whl (106 kB)
     ---------------------------------------- 106.7/106.7 kB 3.1 MB/s eta 0:00:00
Collecting sklearn
  Downloading sklearn-0.0.post12.tar.gz (2.6 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [15 lines of output]
      The 'sklearn' PyPI package is deprecated, use 'scikit-learn'
      rather than 'sklearn' for pip commands.

      Here is how to fix this error in the main use cases:
      - use 'pip install scikit-learn' rather than 'pip install sklearn'
      - replace 'sklearn' by 'scikit-learn' in your pip requirements files
        (requirements.txt, setup.py, setup.cfg, Pipfile, etc ...)
      - if the 'sklearn' package is used by one of your dependencies,
        it would be great if you take some time to track which package uses
        'sklearn' instead of 'scikit-learn' and report it to their issue tracker
      - as a last resort, set the environment variable
        SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL=True to avoid this error

      More information is available at
      https://github.com/scikit-learn/sklearn-pypi-package
      [end of output]

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

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

Replacing sklearn with scikit-learn in requirements.txt did the trick.

  1. Latest versions of spacy and numpy require Python >= 3.9.
Full output
(dynabench) PS C:\Users\Vidminas\GitHub\dynabench> pip install -r .\requirements.txt
Collecting git+https://github.com/facebookresearch/dynalab.git (from -r .\requirements.txt (line 18))
  Cloning https://github.com/facebookresearch/dynalab.git to c:\users\vidminas\appdata\local\temp\pip-req-build-ksrm46ax
  Running command git clone --filter=blob:none --quiet https://github.com/facebookresearch/dynalab.git 'C:\Users\Vidminas\AppData\Local\Temp\pip-req-build-ksrm46ax'
  Resolved https://github.com/facebookresearch/dynalab.git to commit bf6addb37129c57ef85042502702af27a266a0cc
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Collecting augly>=0.1.10
  Using cached augly-1.0.0-py3-none-any.whl (24.3 MB)
Collecting aiohttp
  Using cached aiohttp-3.8.6-cp37-cp37m-win_amd64.whl (326 kB)
Collecting bottle
  Using cached bottle-0.13.4-py2.py3-none-any.whl (103 kB)
Collecting cheroot
  Using cached cheroot-10.0.1-py3-none-any.whl (104 kB)
Collecting PyJWT>=2.0.0
  Using cached PyJWT-2.8.0-py3-none-any.whl (22 kB)
Requirement already satisfied: numpy in c:\users\vidminas\.conda\envs\dynabench\lib\site-packages (from -r .\requirements.txt (line 6)) (1.21.5)
Collecting pymysql
  Using cached PyMySQL-1.1.1-py3-none-any.whl (44 kB)
Collecting sagemaker
  Using cached sagemaker-2.229.0-py3-none-any.whl (1.5 MB)
Requirement already satisfied: six in c:\users\vidminas\.conda\envs\dynabench\lib\site-packages (from -r .\requirements.txt (line 9)) (1.16.0)
Collecting SQLAlchemy==1.3.23
  Using cached SQLAlchemy-1.3.23-cp37-cp37m-win_amd64.whl (1.2 MB)
Collecting torch
  Using cached torch-1.13.1-cp37-cp37m-win_amd64.whl (162.6 MB)
Collecting transformers
  Using cached transformers-4.30.2-py3-none-any.whl (7.2 MB)
Collecting werkzeug
  Using cached Werkzeug-2.2.3-py3-none-any.whl (233 kB)
Collecting boto3==1.24.56
  Using cached boto3-1.24.56-py3-none-any.whl (132 kB)
Collecting yoyo-migrations
  Using cached yoyo_migrations-9.0.0-py3-none-any.whl (49 kB)
Collecting pandas==1.3.0
  Using cached pandas-1.3.0-cp37-cp37m-win_amd64.whl (10.0 MB)
Collecting sacrebleu>=2.0.0
  Using cached sacrebleu-2.4.2-py3-none-any.whl (106 kB)
Requirement already satisfied: scikit-learn in c:\users\vidminas\.conda\envs\dynabench\lib\site-packages (from -r .\requirements.txt (line 19)) (1.0.2)
Collecting sentencepiece
  Using cached sentencepiece-0.2.0-cp37-cp37m-win_amd64.whl (991 kB)
Collecting spacy
  Using cached spacy-3.8.2.tar.gz (1.3 MB)
  Installing build dependencies ... error
  error: subprocess-exited-with-error

  × pip subprocess to install build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [87 lines of output]
      Ignoring numpy: markers 'python_version >= "3.9"' don't match your environment
      Collecting setuptools
        Using cached setuptools-68.0.0-py3-none-any.whl (804 kB)
      Collecting cython<3.0,>=0.25
        Using cached Cython-0.29.37-py2.py3-none-any.whl (989 kB)
      Collecting cymem<2.1.0,>=2.0.2
        Using cached cymem-2.0.11-cp37-cp37m-win_amd64.whl
      Collecting preshed<3.1.0,>=3.0.2
        Using cached preshed-3.0.10.tar.gz (15 kB)
        Installing build dependencies: started
        Installing build dependencies: finished with status 'done'
        Getting requirements to build wheel: started
        Getting requirements to build wheel: finished with status 'done'
        Installing backend dependencies: started
        Installing backend dependencies: finished with status 'done'
        Preparing metadata (pyproject.toml): started
        Preparing metadata (pyproject.toml): finished with status 'done'
      Collecting murmurhash<1.1.0,>=0.28.0
        Using cached murmurhash-1.0.13-cp37-cp37m-win_amd64.whl
      Collecting thinc<8.4.0,>=8.3.0
        Using cached thinc-8.3.2.tar.gz (193 kB)
        Installing build dependencies: started
        Installing build dependencies: finished with status 'error'
        error: subprocess-exited-with-error

        pip subprocess to install build dependencies did not run successfully.
        exit code: 1

        [47 lines of output]
        Ignoring numpy: markers 'python_version >= "3.9"' don't match your environment
        Collecting setuptools
          Using cached setuptools-68.0.0-py3-none-any.whl (804 kB)
        Collecting cython<3.0,>=0.25
          Using cached Cython-0.29.37-py2.py3-none-any.whl (989 kB)
        Collecting murmurhash<1.1.0,>=1.0.2
          Using cached murmurhash-1.0.13-cp37-cp37m-win_amd64.whl
        Collecting cymem<2.1.0,>=2.0.2
          Using cached cymem-2.0.11-cp37-cp37m-win_amd64.whl
        Collecting preshed<3.1.0,>=3.0.2
          Using cached preshed-3.0.10.tar.gz (15 kB)
          Installing build dependencies: started
          Installing build dependencies: finished with status 'done'
          Getting requirements to build wheel: started
          Getting requirements to build wheel: finished with status 'done'
          Installing backend dependencies: started
          Installing backend dependencies: finished with status 'done'
          Preparing metadata (pyproject.toml): started
          Preparing metadata (pyproject.toml): finished with status 'done'
        Collecting blis<1.1.0,>=1.0.0
          Using cached blis-1.0.2.tar.gz (3.6 MB)
          Installing build dependencies: started
          Installing build dependencies: finished with status 'error'
          error: subprocess-exited-with-error

          pip subprocess to install build dependencies did not run successfully.
          exit code: 1

          [7 lines of output]
          Collecting setuptools
            Using cached setuptools-68.0.0-py3-none-any.whl (804 kB)
          Collecting cython>=0.25
            Using cached Cython-3.0.12-cp37-cp37m-win_amd64.whl (2.7 MB)
          ERROR: Ignored the following versions that require a different python version: 1.22.0 Requires-Python >=3.8; 1.22.1 Requires-Python >=3.8; 1.22.2 Requires-Python >=3.8; 1.22.3 Requires-Python >=3.8; 1.22.4 Requires-Python >=3.8; 1.23.0 Requires-Python >=3.8; 1.23.1 Requires-Python >=3.8; 1.23.2 Requires-Python >=3.8; 1.23.3 Requires-Python >=3.8; 1.23.4 Requires-Python >=3.8; 1.23.5 Requires-Python >=3.8; 1.24.0 Requires-Python >=3.8; 1.24.1 Requires-Python >=3.8; 1.24.2 Requires-Python >=3.8; 1.24.3 Requires-Python >=3.8; 1.24.4 Requires-Python >=3.8; 1.25.0 Requires-Python >=3.9; 1.25.1 Requires-Python >=3.9; 1.25.2 Requires-Python >=3.9; 1.26.0 Requires-Python <3.13,>=3.9; 1.26.1 Requires-Python <3.13,>=3.9; 1.26.2 Requires-Python >=3.9; 1.26.3 Requires-Python >=3.9; 1.26.4 Requires-Python >=3.9; 2.0.0 Requires-Python >=3.9; 2.0.1 Requires-Python >=3.9; 2.0.2 Requires-Python >=3.9; 2.1.0 Requires-Python >=3.10; 2.1.1 Requires-Python >=3.10; 2.1.2 Requires-Python >=3.10; 2.1.3 Requires-Python >=3.10; 2.2.0 Requires-Python >=3.10; 2.2.0rc1 Requires-Python >=3.10; 2.2.1 Requires-Python >=3.10; 2.2.2 Requires-Python >=3.10; 2.2.3 Requires-Python >=3.10; 2.2.4 Requires-Python >=3.10; 2.2.5 Requires-Python >=3.10; 2.2.6 Requires-Python >=3.10; 2.3.0 Requires-Python >=3.11; 2.3.0rc1 Requires-Python >=3.11; 2.3.1 Requires-Python >=3.11; 3.1.0 Requires-Python >=3.8; 3.1.0a1 Requires-Python >=3.8; 3.1.0b1 Requires-Python >=3.8; 3.1.0rc1 Requires-Python >=3.8; 3.1.0rc2 Requires-Python >=3.8; 3.1.1 Requires-Python >=3.8; 3.1.2 Requires-Python >=3.8; 68.1.0 Requires-Python >=3.8; 68.1.2 Requires-Python >=3.8; 68.2.0 Requires-Python >=3.8; 68.2.1 Requires-Python >=3.8; 68.2.2 Requires-Python >=3.8; 69.0.0 Requires-Python >=3.8; 69.0.1 Requires-Python >=3.8; 69.0.2 Requires-Python >=3.8; 69.0.3 Requires-Python >=3.8; 69.1.0 Requires-Python >=3.8; 69.1.1 Requires-Python >=3.8; 69.2.0 Requires-Python >=3.8; 69.3 Requires-Python >=3.8; 69.3.0 Requires-Python >=3.8; 69.3.1 Requires-Python >=3.8; 69.4 Requires-Python >=3.8; 69.4.0 Requires-Python >=3.8; 69.4.1 Requires-Python >=3.8; 69.4.2 Requires-Python >=3.8; 69.5.0 Requires-Python >=3.8; 69.5.1 Requires-Python >=3.8; 70.0.0 Requires-Python >=3.8; 70.1.0 Requires-Python >=3.8; 70.1.1 Requires-Python >=3.8; 70.2.0 Requires-Python >=3.8; 70.3.0 Requires-Python >=3.8; 71.0.0 Requires-Python >=3.8; 71.0.1 Requires-Python >=3.8; 71.0.2 Requires-Python >=3.8; 71.0.3 Requires-Python >=3.8; 71.0.4 Requires-Python >=3.8; 71.1.0 Requires-Python >=3.8; 72.0.0 Requires-Python >=3.8; 72.1.0 Requires-Python >=3.8; 72.2.0 Requires-Python >=3.8; 73.0.0 Requires-Python >=3.8; 73.0.1 Requires-Python >=3.8; 74.0.0 Requires-Python >=3.8; 74.1.0 Requires-Python >=3.8; 74.1.1 Requires-Python >=3.8; 74.1.2 Requires-Python >=3.8; 74.1.3 Requires-Python >=3.8; 75.0.0 Requires-Python >=3.8; 75.1.0 Requires-Python >=3.8; 75.2.0 Requires-Python >=3.8; 75.3.0 Requires-Python >=3.8; 75.3.1 Requires-Python >=3.8; 75.3.2 Requires-Python >=3.8; 75.4.0 Requires-Python >=3.9; 75.5.0 Requires-Python >=3.9; 75.6.0 Requires-Python >=3.9; 75.7.0 Requires-Python >=3.9; 75.8.0 Requires-Python >=3.9; 75.8.1 Requires-Python >=3.9; 75.8.2 Requires-Python >=3.9; 75.9.0 Requires-Python >=3.9; 75.9.1 Requires-Python >=3.9; 76.0.0 Requires-Python >=3.9; 76.1.0 Requires-Python >=3.9; 77.0.1 Requires-Python >=3.9; 77.0.3 Requires-Python >=3.9; 78.0.1 Requires-Python >=3.9; 78.0.2 Requires-Python >=3.9; 78.1.0 Requires-Python >=3.9; 78.1.1 Requires-Python >=3.9; 79.0.0 Requires-Python >=3.9; 79.0.1 Requires-Python >=3.9; 80.0.0 Requires-Python >=3.9; 80.0.1 Requires-Python >=3.9; 80.1.0 Requires-Python >=3.9; 80.2.0 Requires-Python >=3.9; 80.3.0 Requires-Python >=3.9; 80.3.1 Requires-Python >=3.9; 80.4.0 Requires-Python >=3.9; 80.6.0 Requires-Python >=3.9; 80.7.0 Requires-Python >=3.9; 80.7.1 Requires-Python >=3.9; 80.8.0 Requires-Python >=3.9; 80.9.0 Requires-Python >=3.9
          ERROR: Could not find a version that satisfies the requirement numpy<3.0.0,>=2.0.0 (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.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6)
          ERROR: No matching distribution found for numpy<3.0.0,>=2.0.0
          [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.
        [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.
      [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.

Deleting the environment and creating a new one with conda create -n dynabench python=3.9 fixed these.

  1. Building blis, one of the dependencies of spacy was failing due to it trying to build with clang, which isn't installed on my system.
Output snippet
Building wheel for blis (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for blis (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [36 lines of output]
      BLIS_COMPILER? None
      C:\Users\Vidminas\AppData\Local\Temp\pip-build-env-04mqabnz\overlay\Lib\site-packages\setuptools\dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated.
      !!

              ********************************************************************************
              Please consider removing the following classifiers in favor of a SPDX license expression:

              License :: OSI Approved :: BSD License

              See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
              ********************************************************************************

      !!
        self._finalize_license_expression()
      running bdist_wheel
      running build
      running build_py
      creating build\lib.win-amd64-cpython-39\blis
      copying blis\about.py -> build\lib.win-amd64-cpython-39\blis
      copying blis\benchmark.py -> build\lib.win-amd64-cpython-39\blis
      copying blis\__init__.py -> build\lib.win-amd64-cpython-39\blis
      creating build\lib.win-amd64-cpython-39\blis\tests
      copying blis\tests\common.py -> build\lib.win-amd64-cpython-39\blis\tests
      copying blis\tests\test_dotv.py -> build\lib.win-amd64-cpython-39\blis\tests
      copying blis\tests\test_gemm.py -> build\lib.win-amd64-cpython-39\blis\tests
      copying blis\tests\__init__.py -> build\lib.win-amd64-cpython-39\blis\tests
      copying blis\cy.pyx -> build\lib.win-amd64-cpython-39\blis
      copying blis\py.pyx -> build\lib.win-amd64-cpython-39\blis
      copying blis\cy.pxd -> build\lib.win-amd64-cpython-39\blis
      copying blis\__init__.pxd -> build\lib.win-amd64-cpython-39\blis
      running build_ext
      Build options win32 msvc
      BUILD ARCH: x86_64
      [environment variables redacted]
      [COMMAND] C:\Program Files\LLVM\bin\clang.exe -c C:\Users\Vidminas\AppData\Local\Temp\pip-install-ar6uktoa\blis_cd6aac2a61a4449ab1974279a83fa25d\blis\_src\config\bulldozer\bli_cntx_init_bulldozer.c -o C:\Users\Vidminas\AppData\Local\Temp\tmpxbtdkpgp\bli_cntx_init_bulldozer.o -O3 -std=c99 -D_POSIX_C_SOURCE=200112L -DBLIS_VERSION_STRING="0.7.0" -DBLIS_IS_BUILDING_LIBRARY -Iinclude\windows-x86_64 -I.\frame\3\ -I.\frame\ind\ukernels\ -I.\frame\3\ -I.\frame\1m\ -I.\frame\1f\ -I.\frame\1\ -I.\frame\include -IC:\Users\Vidminas\AppData\Local\Temp\pip-install-ar6uktoa\blis_cd6aac2a61a4449ab1974279a83fa25d\blis\_src\include\windows-x86_64
      error: [WinError 2] The system cannot find the file specified
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for blis

I found a similar issue here: explosion/spaCy#13658 (comment) and figured there would be pre-built binaries for another Python version. Deleting the environment and recreating one with conda create -n dynabench python=3.12 caused other issues with numpy, so I went back to Python 3.9 and pinned the spacy version to 3.7.5 (based on advice from https://stackoverflow.com/questions/78587280/python3-9-how-to-find-a-compatible-spacy-version). This worked and finally all the dependencies installed without errors.

So, in summary, the changes were:

  1. Using Python 3.9 instead of 3.7 for the virtual environment
  2. Changing sklearn to scikit-learn in requirements.txt
  3. Changing spacy to spacy==3.7.5 in requirements.txt

If I use Docker Compose instead, I can see the Dockerfile already uses Python 3.9, and the pip install -r api/requirements.txt --no-cache-dir runs without errors. I think it's because installing sklearn doesn't show an error but just a warning on some distributions and building the wheel for blis isn't an issue on the Linux Docker container.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions