mcpField
M
ml-pipeline-workflow

ml-pipeline-workflow

github.com/wshobson数据与数据库41.9k11.3k 次安装2 周前更新
代码仓库

关于 ml-pipeline-workflow

面向构建可复现机器学习工作流的团队,提供端到端 MLOps 流水线设计指导,涵盖数据准备、训练、验证、部署和监控,并提供编排模式与模板。

主要功能

  1. 01端到端流水线架构
  2. 02数据验证与特征工程
  3. 03训练与实验跟踪
  4. 04模型验证与比较
  5. 05部署与回滚策略
  6. 06DAG 模板与检查清单

适用场景

  1. 01设计可复现的训练工作流
  2. 02自动化模型验证与发布
  3. 03规划金丝雀或蓝绿部署

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/wshobson/agents --skill ml-pipeline-workflow

安装后在 Claude Code 中输入/ml-pipeline-workflow确认已加载。

详细介绍

ML 流水线工作流

从数据准备到模型部署的完整端到端 MLOps 流水线编排。

概述

本技能为构建生产 ML 流水线提供全面指导,覆盖完整生命周期:数据摄取 → 准备 → 训练 → 验证 → 部署 → 监控。

何时使用本技能

  • 从零构建新的 ML 流水线
  • 为 ML 系统设计工作流编排
  • 实现数据 → 模型 → 部署自动化
  • 搭建可复现的训练工作流
  • 创建基于 DAG 的 ML 编排
  • 将 ML 组件集成到生产系统

本技能提供的内容

核心能力
  1. 流水线架构

    • 端到端工作流设计
    • DAG 编排模式(Airflow、Dagster、Kubeflow)
    • 组件依赖关系与数据流
    • 错误处理与重试策略
  2. 数据准备

    • 数据校验与质量检查
    • 特征工程流水线
    • 数据版本管理与血缘追踪
    • 训练/验证/测试集划分策略
  3. 模型训练

    • 训练任务编排
    • 超参数管理
    • 实验跟踪集成
    • 分布式训练模式
  4. 模型验证

    • 验证框架与指标
    • A/B 测试基础设施
    • 性能回归检测
    • 模型对比工作流
  5. 部署自动化

    • 模型服务模式
    • 金丝雀部署
    • 蓝绿部署策略
    • 回滚机制
参考文档

详细指南请参见 references/ 目录:

  • data-preparation.md - 数据清洗、校验与特征工程
  • model-training.md - 训练工作流与最佳实践
  • model-validation.md - 验证策略与指标
  • model-deployment.md - 部署模式与服务架构
资产与模板

assets/ 目录包含:

  • pipeline-dag.yaml.template - 用于工作流编排的 DAG 模板
  • training-config.yaml - 训练配置模板
  • validation-checklist.md - 部署前验证清单

使用模式

基础流水线搭建
# 1. Define pipeline stages
stages = [
    "data_ingestion",
    "data_validation",
    "feature_engineering",
    "model_training",
    "model_validation",
    "model_deployment"
]

# 2. Configure dependencies
# See assets/pipeline-dag.yaml.template for full example
生产工作流
  1. 数据准备阶段

    • 从数据源摄取原始数据
    • 运行数据质量检查
    • 应用特征变换
    • 对处理后的数据集进行版本管理
  2. 训练阶段

    • 加载带版本的训练数据
    • 执行训练任务
    • 跟踪实验与指标
    • 保存训练好的模型
  3. 验证阶段

    • 运行验证测试套件
    • 与基线进行对比
    • 生成性能报告
    • 批准部署
  4. 部署阶段

    • 打包模型产物
    • 部署到服务基础设施
    • 配置监控
    • 验证生产流量

最佳实践

流水线设计
  • 模块化:每个阶段都应可独立测试
  • 幂等性:重新运行阶段应是安全的
  • 可观测性:在每个阶段记录指标
  • 版本管理:跟踪数据、代码与模型的版本
  • 故障处理:实现重试逻辑与告警
数据管理
  • 使用数据校验库(Great Expectations、TFX)
  • 使用 DVC 或类似工具对数据集进行版本管理
  • 记录特征工程变换
  • 维护数据血缘追踪
模型运维
  • 将训练与服务工作基础设施分离
  • 使用模型注册表(MLflow、Weights & Biases)
  • 对新模型实施渐进式发布
  • 监控模型性能漂移
  • 保持回滚能力
部署策略
  • 从影子部署开始
  • 使用金丝雀发布进行验证
  • 搭建 A/B 测试基础设施
  • 设置自动回滚触发器
  • 监控延迟与吞吐量

集成点

编排工具
  • Apache Airflow:基于 DAG 的工作流编排
  • Dagster:基于资产的流水线编排
  • Kubeflow Pipelines:Kubernetes 原生 ML 工作流
  • Prefect:现代数据流自动化
实验跟踪
  • MLflow 用于实验跟踪和模型注册
  • Weights & Biases 用于可视化和协作
  • TensorBoard 用于训练指标
部署平台
  • AWS SageMaker 用于托管 ML 基础设施
  • Google Vertex AI 用于 GCP 部署
  • Azure ML 用于 Azure 云
  • OCI Data Science 用于 Oracle Cloud Infrastructure 部署
  • Kubernetes + KServe 用于云无关的模型服务

渐进式披露

从基础开始,逐步增加复杂度:

  1. 第 1 级:简单的线性流水线(数据 → 训练 → 部署)
  2. 第 2 级:添加验证和监控阶段
  3. 第 3 级:实现超参数调优
  4. 第 4 级:添加 A/B 测试和渐进式发布
  5. 第 5 级:多模型流水线与集成策略

常见模式

批量训练流水线
# See assets/pipeline-dag.yaml.template
stages:
  - name: data_preparation
    dependencies: []
  - name: model_training
    dependencies: [data_preparation]
  - name: model_evaluation
    dependencies: [model_training]
  - name: model_deployment
    dependencies: [model_evaluation]
实时特征流水线
# Stream processing for real-time features
# Combined with batch training
# See references/data-preparation.md
持续训练
# Automated retraining on schedule
# Triggered by data drift detection
# See references/model-training.md

故障排除

常见问题
  • 流水线失败:检查依赖项和数据可用性
  • 训练不稳定:检查超参数和数据质量
  • 部署问题:验证模型产物和服务配置
  • 性能下降:监控数据漂移和模型指标
调试步骤
  1. 检查每个阶段的流水线日志
  2. 在边界处验证输入/输出数据
  3. 单独测试各组件
  4. 检查实验跟踪指标
  5. 检查模型产物和元数据

后续步骤

设置好流水线后:

  1. 探索 hyperparameter-tuning 技能以进行优化
  2. 学习 experiment-tracking-setup 以使用 MLflow/W&B
  3. 查看 model-deployment-patterns 了解服务策略
  4. 使用可观测性工具实现监控

相关技能

  • experiment-tracking-setup:MLflow 和 Weights & Biases 集成
  • hyperparameter-tuning:自动化超参数优化
  • model-deployment-patterns:高级部署策略

评论

支持 Markdown