用于跟踪、可视化和管理机器学习实验、数据集与模型的 Python 库及托管平台。
protectai/modelscan
一款扫描机器学习模型文件的工具,在加载前检测其中隐藏的不安全代码,防范模型序列化攻击。
- Star
- 793
- Fork
- 174
- 未关闭 Issue
- 105
- 最近提交
- 上个月
这是什么?
ModelScan 用于检查机器学习模型文件中在序列化时嵌入的不安全代码。加载基于 pickle 的恶意模型时,攻击代码可能立即执行,进而导致凭据或数据被盗、模型输出被投毒。ModelScan 逐字节读取文件内容并匹配已知的不安全代码特征,因此扫描过程不会执行模型本身。
该工具支持 H5、Pickle 和 SavedModel 格式,覆盖 PyTorch、TensorFlow、Keras、scikit-learn、XGBoost 等使用 pickle、dill、joblib 或 cloudpickle 保存的模型。检测到的问题按 LOW 到 CRITICAL 分级,结果可输出到控制台或导出为 JSON,也可通过设置文件自定义报告格式。
工具可通过 pip 安装,既能在命令行扫描本地模型文件,也能在 Python 代码中调用。退出码可区分无风险、发现问题和扫描出错三种情况,便于接入 CI/CD 流水线。
核心功能
- 01无需加载即可扫描 H5、Pickle 和 SavedModel 格式的模型文件。
- 02覆盖 PyTorch、TensorFlow、Keras、scikit-learn、XGBoost 等框架的模型。
- 03将检测到的不安全代码按 LOW 到 CRITICAL 分级。
- 04支持控制台和 JSON 报告,并可通过设置文件自定义格式。
- 05提供 Python 接口和带退出码的命令行工具,便于脚本和 CI 集成。
适用场景
- 在把第三方或 Hugging Face 上下载的模型加载到开发环境前进行扫描。
- 在发布前检查训练流水线产出的模型,排查供应链篡改。
- 在 CI/CD 中设置部署门禁,阻止存在风险的模型进入生产环境。
快速上手
- 1
从 PyPI 安装 ModelScan
pip install modelscan - 2
扫描本地模型文件
modelscan -p /path/to/model_file.pkl
使用前须知
- 仅支持部分模型格式(H5、Pickle、SavedModel)及基于 Pickle 的格式。
- 扫描 TensorFlow 和 HDF5 模型需要安装额外依赖。
收录于专题
标签
常见问题
- modelscan 是什么?
- 一款扫描机器学习模型文件的工具,在加载前检测其中隐藏的不安全代码,防范模型序列化攻击。 ModelScan 用于检查机器学习模型文件中在序列化时嵌入的不安全代码。加载基于 pickle 的恶意模型时,攻击代码可能立即执行,进而导致凭据或数据被盗、模型输出被投毒。ModelScan 逐字节读取文件内容并匹配已知的不安全代码特征,因此扫描过程不会执行模型本身。
- modelscan 可以免费使用吗?用的什么许可证?
- modelscan 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- modelscan 还在维护吗?
- 半年内有更新。modelscan 最近一次提交是在 2026年9月28日。
- modelscan 适合用来做什么?
- 在把第三方或 Hugging Face 上下载的模型加载到开发环境前进行扫描。 在发布前检查训练流水线产出的模型,排查供应链篡改。 在 CI/CD 中设置部署门禁,阻止存在风险的模型进入生产环境。
- modelscan 怎么安装和运行?
- 从 PyPI 安装 ModelScan: pip install modelscan 扫描本地模型文件: modelscan -p /path/to/model_file.pkl
- 在哪里获取 modelscan?
- 源代码和安装说明在 GitHub 上:https://github.com/protectai/modelscan
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Google Cloud 高级解决方案实验室的课程材料,包含 Google Cloud 上机器学习与生成式 AI 的 Notebook、实验和示例代码。
微软出品的 12 周 24 课初学者 AI 课程,涵盖符号 AI、神经网络、计算机视觉、NLP 和 AI 伦理,配有 PyTorch 与 TensorFlow 代码。
Keras 3 是一个多后端深度学习框架,可运行于 JAX、TensorFlow、PyTorch 之上,OpenVINO 仅用于推理。
用于可视化神经网络、深度学习和机器学习模型结构的查看器,支持 ONNX、PyTorch 等多种格式。
跨平台的机器学习推理与训练加速器,用于运行 ONNX 格式的模型。