我有一段使用shap模块的 ML 代码,并输出一些图来显示 ML 结果。
当我python main.py在 Jenkins 中将代码作为文件运行时Execute shell,它运行良好。
jupyter nbconvert notebook.ipynb --ExecutePreprocessor.timeout=None --execute --to html但是,如果我像在 Jenkins中那样创建一个笔记本Execute shell,它总是会说ModuleNotFoundError: No module named 'shap'。
我试过conda forge或pip install包裹,当我检查时,它说requirement is met。
这似乎是一些 IPython 内核问题,但我无法切换所需的 python。
conda env list显示:
base /usr/local/Anaconda3-2018.12-Linux-x86_64
env1 * /var/lib/jenkins/.conda/envs/env1
jupyter kernelspec list显示:
local-venv /var/lib/jenkins/.local/share/jupyter/kernels/local-venv
python3 /var/lib/jenkins/.local/share/jupyter/kernels/python3
test2 /var/lib/jenkins/.local/share/jupyter/kernels/test2
如何设置虚拟环境,以便我可以同时运行python main.py并jupyter nbconvert在 Jenkins 中使用相同的 python 环境?