安装catboost==1.2.2遇AttributeError: cython_sources错误求解决方案
安装CatBoost 1.2.2时出现AttributeError: cython_sources的解决办法
环境信息
- Python版本:3.12
- 操作系统:Windows 11 Home
尝试执行命令安装catboost==1.2.2:
py -3 -m pip install catboost==1.2.2
安装过程中触发错误,核心原因是:CatBoost 1.2.2的构建依赖conan<=1.59,而该版本conan要求PyYAML<=6.0,但PyYAML 6.0不兼容Python 3.12,编译时抛出AttributeError: cython_sources。
可行解决办法
1. 升级到兼容Python 3.12的CatBoost版本
CatBoost 1.2.2发布时Python 3.12尚未正式推出,后续版本(如1.3及以上)已适配Python 3.12。直接安装最新稳定版:
py -3 -m pip install catboost --upgrade
2. 先安装兼容的PyYAML再强制安装CatBoost 1.2.2
先安装支持Python 3.12的PyYAML版本(如6.0.1+):
py -3 -m pip install PyYAML>=6.0.1
然后忽略依赖冲突安装CatBoost 1.2.2(仅临时应急使用):
py -3 -m pip install catboost==1.2.2 --force-reinstall --no-deps
之后需手动安装CatBoost运行所需的其他依赖(如numpy、pandas等)。
3. 降级Python到3.11版本
Python 3.12的API变化导致旧版PyYAML无法兼容,若必须使用CatBoost 1.2.2,可降级到Python 3.11,再执行原安装命令即可正常完成。
4. 使用预编译wheel包安装
如果能找到适配Windows+Python 3.12的CatBoost 1.2.2预编译wheel文件,直接本地安装:
# 替换为实际下载的wheel文件名 py -3 -m pip install catboost-1.2.2-cp312-cp312-win_amd64.whl
内容的提问来源于stack exchange,提问作者Talha Tayyab
相关产品推荐
相关产品推荐

