提问人:user22764962 提问时间:10/19/2023 最后编辑:Ro.oTuser22764962 更新时间:11/14/2023 访问量:73
未找到 LightGBM
LightGBM not found
问:
我在尝试在我的 Python 项目中使用 LightGBM 时遇到了错误。每当我尝试在代码中导入 LightGBM 时,都会收到以下错误:
OSError: dlopen(/Users/hp/opt/anaconda3/envs/MachineLearning/lib/python3.9/site-packages/lightgbm/lib/lib_lightgbm.so, 0x0006): Library not loaded: /usr/local/opt/libomp/lib/libomp.dylib
Referenced from: <3AF1EF0C-311C-31EC-BCE3-679F37ABEE16> /Users/hp/opt/anaconda3/envs/MachineLearning/lib/python3.9/site-packages/lightgbm/lib/lib_lightgbm.so
Reason: tried: '/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/usr/local/opt/libomp/lib/libomp.dylib' (no such file), '/usr/local/lib/libomp.dylib' (no such file), '/usr/lib/libomp.dylib' (no such file, not in dyld cache)
我在 macOS 上名为“MachineLearning”的 conda 环境中工作,我尝试按照各种来源中的建议设置 和 环境变量,但问题仍然存在。
有人可以帮我了解导致此错误的原因并提供解决它的步骤吗?我被困在这一点上,因为我正在尝试将 LightGBM 用于 Streamlit 和 FastAPI 项目。LDFLAGS
CPPFLAGS
环境详细信息:
- Python版本:3.9
- Conda 环境:“机器学习”
- 操作系统:macOS
任何见解或指导将不胜感激。谢谢!
答:
错误表示未安装 OpenMP 库。根据 LightGBM 文档,最好通过brew install lightgbm
评论
pip install lightgbm
lightgbm
brew install lightgbm
lightgbm
默认情况下,Python 包的发行版希望能够在运行时链接到 OpenMP。在链接器将搜索的任何标准路径上,您似乎都没有可用的 OpenMP。lightgbm
由于您已经在环境中工作,因此请使用 / 安装 ,而不是 .这样,您将自动获得 OpenMP 的发行版(conda-forge/lightgbm-feedstock 链接),而无需担心单独安装它。conda
conda
mamba
lightgbm
pip install
conda-forge
运行以下命令以解决您的问题:
# remove pip-installed copy of 'lightgbm' in MachineLearning conda env
source activate MachineLearning
pip uninstall --yes lightgbm
# install conda-forge distribution instead
conda install \
--yes \
--name MachineLearning \
-c conda-forge \
'lightgbm>=4.1.0'
这样一来,您就不需要对环境变量进行任何自定义,例如,并且应该在该环境中的 Python 进程中成功加载。LDFLAGS
lightgbm
conda
如果绝对有必要使用或从源代码构建(例如,自定义构建或使用未发布的版本),则在该 conda 环境中单独安装 OpenMP:pip install lightgbm
lightgbm
conda install \
--yes \
--name MachineLearning \
-c conda-forge \
llvm-openmp
评论