关于 ml-pipeline-workflow
面向设计端到端机器学习流水线的团队的 MLOps 工作流指南,涵盖数据准备、训练、验证、部署和监控,并提供编排模式与模板。
主要功能
- 01端到端流水线架构
- 02DAG 编排模式
- 03数据验证与版本管理
- 04训练与实验跟踪
- 05模型验证与比较
- 06部署、渐进发布与回滚模式
适用场景
- 01设计新的 ML 流水线
- 02自动化数据到模型的工作流
- 03构建可复现的训练流程
- 04规划模型渐进式部署
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ hermeticormus/ libreuiux-claude-code --skill ml-pipeline-workflow安装后在 Claude Code 中输入/ml-pipeline-workflow确认已加载。
详细介绍
ML 流水线工作流
编排从数据准备到模型部署的完整端到端 MLOps 流水线。
概述
此技能为构建生产级 ML 流水线提供全面指导,涵盖完整生命周期:数据导入 → 准备 → 训练 → 验证 → 部署 → 监控。
何时使用此技能
- 从头开始构建新的 ML 流水线
- 设计 ML 系统的工作流编排
- 实现数据 → 模型 → 部署自动化
- 设置可复现的训练工作流
- 创建基于 DAG 的 ML 编排
- 将 ML 组件集成到生产系统中
此技能提供的内容
核心能力
-
流水线架构
- 端到端工作流设计
- DAG 编排模式(Airflow、Dagster、Kubeflow)
- 组件依赖关系和数据流
- 错误处理和重试策略
-
数据准备
- 数据验证和质量检查
- 特征工程流水线
- 数据版本控制和溯源
- 训练集/验证集/测试集划分策略
-
模型训练
- 训练任务编排
- 超参数管理
- 实验跟踪集成
- 分布式训练模式
-
模型验证
- 验证框架和指标
- A/B 测试基础设施
- 性能回归检测
- 模型比较工作流
-
部署自动化
- 模型服务模式
- 金丝雀部署
- 蓝绿部署策略
- 回滚机制
参考文档
详细指南请参阅 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
生产工作流
-
数据准备阶段
- 从数据源导入原始数据
- 执行数据质量检查
- 应用特征转换
- 对处理后的数据集进行版本控制
-
训练阶段
- 加载已进行版本控制的训练数据
- 执行训练任务
- 跟踪实验和指标
- 保存训练好的模型
-
验证阶段
- 运行验证测试套件
- 与基线进行比较
- 生成性能报告
- 批准部署
-
部署阶段
- 打包模型产物
- 部署到服务基础设施
- 配置监控
- 验证生产流量
最佳实践
流水线设计
- 模块化:每个阶段都应可独立测试
- 幂等性:重新运行各阶段应安全可靠
- 可观测性:在每个阶段记录指标
- 版本控制:跟踪数据、代码和模型版本
- 故障处理:实现重试逻辑和告警
数据管理
- 使用数据验证库(Great Expectations、TFX)
- 使用 DVC 或类似工具对数据集进行版本控制
- 记录特征工程转换
- 维护数据溯源跟踪
模型运维
- 分离训练和服务基础设施
- 使用模型注册表(MLflow、Weights & Biases)
- 为新模型实施渐进式发布
- 监控模型性能漂移
- 保留回滚能力
部署策略
- 从影子部署开始
- 使用金丝雀发布进行验证
- 实施 A/B 测试基础设施
- 设置自动回滚触发条件
- 监控延迟和吞吐量
集成点
编排工具
- Apache Airflow:基于 DAG 的工作流编排
- Dagster:基于资产的流水线编排
- Kubeflow Pipelines:Kubernetes 原生机器学习工作流
- Prefect:现代数据流自动化
实验跟踪
- 使用 MLflow 跟踪实验和管理模型注册表
- 使用 Weights & Biases 实现可视化与协作
- 使用 TensorBoard 查看训练指标
部署平台
- 使用 AWS SageMaker 提供托管式机器学习基础设施
- 使用 Google Vertex AI 进行 GCP 部署
- 使用 Azure ML 进行 Azure 云部署
- 使用 Kubernetes + KServe 实现云无关的服务部署
渐进式展开
从基础开始,逐步增加复杂度:
- 级别 1:简单的线性流水线(数据 → 训练 → 部署)
- 级别 2:添加验证和监控阶段
- 级别 3:实现超参数调优
- 级别 4:添加 A/B 测试和渐进式发布
- 级别 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
故障排查
常见问题
- 流水线失败:检查依赖项和数据是否可用
- 训练不稳定:检查超参数和数据质量
- 部署问题:验证模型产物和服务配置
- 性能下降:监控数据漂移和模型指标
调试步骤
- 检查各阶段的流水线日志
- 验证边界处的输入/输出数据
- 单独测试各个组件
- 查看实验跟踪指标
- 检查模型产物和元数据
后续步骤
设置好流水线后:
- 查看 hyperparameter-tuning 技能,了解如何进行优化
- 学习 experiment-tracking-setup,了解 MLflow/W&B
- 查看 model-deployment-patterns,了解服务部署策略
- 使用可观测性工具实现监控
相关技能
- experiment-tracking-setup:集成 MLflow 和 Weights & Biases
- hyperparameter-tuning:自动化超参数优化
- model-deployment-patterns:高级部署策略
评论
支持 Markdown