You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

加载pickle模型时未导入sklearn却报ModuleNotFoundError的原因与解决方法

原因及解决方案

错误原因

你通过pickle加载的model.pkl文件是基于scikit-learn(简称sklearn)训练并序列化保存的模型对象。当pickle执行反序列化操作时,需要找到模型类的原始定义——这些定义属于sklearn库,因此即使你的代码没有显式导入sklearn,加载模型的过程也会自动尝试调用sklearn模块,最终触发ModuleNotFoundError。

解决方法

  • 安装scikit-learn库,根据你的环境选择对应命令:
    • 使用pip包管理器:pip install scikit-learn
    • 使用conda环境管理器(如果用Anaconda/Miniconda):conda install scikit-learn
  • 安装完成后,无需在代码中额外导入sklearn(除非后续要调用模型的其他方法),直接运行原代码即可正常加载模型。

内容的提问来源于stack exchange,提问作者Wasif Rehman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 22:42:33