关于 ai-inventory
ai-inventory 是用于 Python 项目的 AI 组件清单技能,可生成并分析 AIBOM,帮助安全、合规和治理审查。它分类模型、数据集、框架、工具和服务,并提供许可证、隐私与模型风险评估。
主要功能
- 01生成 CycloneDX v1.6 格式 AIBOM
- 02识别模型、数据集、框架、工具和服务
- 03评估许可证、数据隐私与模型安全风险
- 04支持保存 JSON 清单
- 05生成合规文档
适用场景
- 01部署前核查 AI 组件与许可证
- 02为 EU AI Act 合规整理材料
- 03审查第三方 AI 组件的数据处理风险
MCP 相关
技能通过 `mcp_snyk_snyk_aibom` 工具生成 AIBOM。README 未说明其作为 MCP 服务向客户端提供的接口。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ snyk/ studio-recipes --skill ai-inventory安装后在 Claude Code 中输入/ai-inventory确认已加载。
详细介绍
AI 组件清单
为 Python 项目生成和分析 AI 物料清单(AIBOM),跟踪 AI 模型、数据集和 ML 框架,以满足安全、合规和治理需求。
核心原则:了解软件中包含哪些 AI 组件。
注意:这是一项实验性功能。目前仅支持 Python 项目。
快速入门
# Step 1: Generate AIBOM for the project
mcp_snyk_snyk_aibom(path="/absolute/path/to/project")
# Step 2: (Optional) Save AIBOM to file for documentation
mcp_snyk_snyk_aibom(
path="/absolute/path/to/project",
json_file_output="/absolute/path/to/output/aibom.json"
)
# Step 3: Verify the returned JSON contains component entries before proceeding
# Step 4: Summarize findings and flag license/risk issues
前提条件
- 包含
requirements.txt、setup.py或pyproject.toml的 Python 项目 - 互联网连接(分析所必需)
- 已启用 Snyk 实验性功能
第 1 阶段:项目验证
目标:确保项目适合生成 AI BOM。
步骤 1.1:验证 Python 项目
检查 Python 项目标识:requirements.txt、setup.py、pyproject.toml、Pipfile 或 .py 文件。
错误 — 不是 Python 项目:如果未找到 Python 标识,请停止并报告:
- 验证路径中是否包含 Python 文件
- 检查是否存在
requirements.txt或pyproject.toml- 此功能仅支持 Python 项目
步骤 1.2:检查 AI/ML 标识
扫描依赖文件,查找已知的 AI/ML 包——常见示例包括 torch、tensorflow、keras、transformers、datasets、scikit-learn、jax、openai、langchain、mlflow 和 wandb。此列表仅供参考;遇到其他 AI/ML 包时,请自行判断。
步骤 1.3:报告不适用的情况
如果未检测到 AI 组件:
## AI Inventory Result
**Project**: /path/to/project
**Status**: No AI components detected
This project does not appear to use AI/ML frameworks. AI BOM generation is not applicable.
第 2 阶段:生成 AIBOM
目标:创建全面的 AI 物料清单。
步骤 2.1:运行 AIBOM 生成
调用 mcp_snyk_snyk_aibom 工具,并提供 Python 项目的绝对路径:
mcp_snyk_snyk_aibom(path="/absolute/path/to/project")
错误 — 网络错误:如果工具无法连接,请报告:
- 检查互联网连接和防火墙(必须允许 HTTPS)
- 几分钟后重试
错误 — 未启用实验性功能:如果访问被拒绝,请报告:
- 联系 Snyk 支持以申请实验性功能访问权限
- 检查组织设置,并确认 CLI 版本支持 AIBOM
步骤 2.2:验证 AIBOM 输出
继续之前,请验证返回的 JSON 是否有效且至少包含一个组件条目。如果响应为空或格式错误,请报告错误,不要继续第 3 阶段。
步骤 2.3:保存输出(可选)
如需将 AIBOM 保存为文件,用于文档编写或下游工具:
mcp_snyk_snyk_aibom(
path="/absolute/path/to/project",
json_file_output="/absolute/path/to/output/aibom.json"
)
第 3 阶段:分析组件
目标:了解并分类经验证的 AIBOM 输出中的 AI 组件。
步骤 3.1:组件类别
AIBOM 会识别五种组件类型:模型、数据集、框架、工具和服务。
步骤 3.2:生成摘要报告
根据实际扫描结果填充以下结构并展示发现:
## AI Component Inventory
**Project**: <project name>
**Scan Date**: <date>
**Format**: CycloneDX v1.6
### Component Summary
| Category | Count |
|-----------|-------|
| AI Models | N |
| Datasets | N |
| Frameworks| N |
| Tools | N |
| **Total** | N |
### AI Models Detected
| Model | Source | License | Risk |
|-------|--------|---------|------|
| <from scan results> | ... | ... | ... |
### Datasets Referenced
| Dataset | Source | License | PII Risk |
|---------|--------|---------|----------|
| <from scan results> | ... | ... | ... |
### Frameworks & Tools
| Component | Version | License |
|-----------|---------|---------|
| <from scan results> | ... | ... |
第 4 阶段:风险评估
目标:识别 AI 组件中的潜在风险。
步骤 4.1:许可证合规性
按风险级别标记组件:低(MIT、Apache)、中(专有 API——审查服务条款)、高(许可证未知或不明确,或仅限研究用途、可能禁止商业使用的条款)。
步骤 4.2:数据隐私问题
标记数据来源或 PII 处理方式不明确的数据集或模型。建议:记录数据来源、审查 PII 处理流程,并验证数据保留政策。
步骤 4.3:模型安全
评估特定于模型的风险:提示注入(基于 LLM 的模型——通过输入验证进行缓解)、模型提取(自定义/微调模型——实施访问控制)、对抗性输入(视觉模型——进行输入验证)以及偏见/公平性(考虑进行偏见测试)。
第 5 阶段:文档
目标:创建符合合规要求的文档。
步骤 5.1:生成合规报告
## AI Compliance Report
**Project**: <project name>
**Generated**: <date>
**Standard**: EU AI Act / Internal Governance
### AI System Classification
- **Risk Level**: [High/Limited/Minimal]
- **Category**: [Classification based on use case]
### Component Inventory
[Summary from Phase 3]
### License Compliance
- All components licensed: Yes/No
- Commercial use permitted: Yes/No
- Attribution required: [list components]
### Data Governance
- Data sources documented: Yes/No
- PII handling reviewed: Yes/No
- Consent verified: Yes/No
### Model Governance
- Model cards available: Yes/No
- Bias testing completed: Yes/No
- Performance benchmarks: Yes/No
### Approval Status
- [ ] Technical review
- [ ] Legal review
- [ ] Ethics review
- [ ] Deployment approved
用例
- 部署前审计:生成 AIBOM → 审查许可证 → 检查数据/PII 处理情况 → 留存文档以备审计
- 法规合规(EU AI Act):生成 AIBOM → 对 AI 系统风险等级进行分类 → 记录功能/局限性 → 创建合规检查清单
- 第三方 AI 审查:生成 AIBOM → 分析许可证 → 评估数据处理情况 → 记录风险和缓解措施
限制
- 仅支持 Python:目前仅支持 Python 项目
- 实验性功能:功能可能会发生变化或存在限制
- 需要网络连接:分析需要互联网连接
- CycloneDX 输出:仅生成 CycloneDX v1.6 格式
- 仅反映特定时点的状态:反映当前状态,更新后需重新生成