(grade_prediction_model) syh@syh-HKF-WXX:~/PycharmProjects/grade_prediction_model$ pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting fastapi (from -r requirements.txt (line 1))
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/50/b3/b51f09c2ba432a576fe63758bddc81f78f0c6309d9e5c10d194313bf021e/fastapi-0.115.12-py3-none-any.whl (95 kB)
Collecting uvicorn (from -r requirements.txt (line 2))
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/5f/38/a5801450940a858c102a7ad9e6150146a25406a119851c993148d56ab041/uvicorn-0.34.1-py3-none-any.whl (62 kB)
Collecting pandas (from -r requirements.txt (line 3))
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/44/50/7db2cd5e6373ae796f0ddad3675268c8d59fb6076e66f0c339d61cea886b/pandas-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.1 MB)
Collecting sklearn (from -r requirements.txt (line 4))
Using cached https://pypi.tuna.tsinghua.edu.cn/packages/46/1c/395a83ee7b2d2ad7a05b453872053d41449564477c81dc356f720b16eac4/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.
(grade_prediction_model) syh@syh-HKF-WXX:~/PycharmProjects/grade_prediction_model$
你遇到的错误是关于 sklearn
包的安装问题。错误信息指出 sklearn
PyPI 包已被弃用,你应该使用 scikit-learn
代替。
解决方法:
在你的 requirements.txt
文件中,将 sklearn
替换成 scikit-learn
。你可以用以下命令编辑 requirements.txt 文件:
sed -i 's/sklearn/scikit-learn/' requirements.txt
或者手动编辑 requirements.txt 文件,将第4行的 sklearn
改为 scikit-learn
。
然后重新运行安装命令:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
如果你急需快速解决这个问题但不想修改 requirements.txt,你也可以通过设置环境变量来暂时绕过这个错误:
SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL=True pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
不过,最好的做法还是更新 requirements.txt 文件,使用正确的包名 scikit-learn
。