强制Python使用旧版本xgboost出现VersionConflict错误如何解决
解决方案
- 第一步:清除所有残留的xgboost版本文件
先执行以下代码确认当前Python环境的site-packages路径:
进入输出的对应site-packages目录,删除所有和xgboost相关的文件/文件夹,包括:import site print(site.getsitepackages())- 名为
xgboost的文件夹(当前残留的1.5.0版本实际运行文件) - 所有前缀为
xgboost-的.egg-info、.dist-info文件夹
- 名为
- 第二步:重新安装指定版本xgboost
避免pip指向其他Python环境,使用当前Python解释器绑定的pip执行安装:python -m pip install xgboost==0.90 - 第三步:验证版本正确性
安装完成后执行以下代码确认版本:import xgboost print(xgboost.__version__) - 额外排查项:如果仍加载错误版本,执行以下代码打印Python模块搜索路径:
检查路径列表中是否有其他目录存放了xgboost包(比如当前用户目录下的import sys print(sys.path).local/lib/pythonx.x/site-packages),如果有也删除对应目录下的xgboost相关文件。
不需要再使用
pkg_resources.require指定版本,只要环境内仅存在0.90版本的xgboost,导入时会自动加载对应版本。
内容的提问来源于stack exchange,提问作者kms
相关产品推荐
相关产品推荐

