我有一段使用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 环境?