06-AI工作流引擎
本章深入探讨 AI 基础设施中的工作流引擎和 MLOps 数据管理,包括流水线编排、数据版本控制、实验跟踪和模型注册等核心能力。
目录
01-工作流引擎概述
- 为什么需要工作流引擎
- 主流工作流引擎对比
- 工作流引擎架构设计
- 常见工作流模式
- Kubernetes 集成实践
02-Kubeflow-Pipelines
- KFP 架构与组件
- KFP v2 SDK 开发
- Pipeline 定义与编排
- 高级特性(缓存、分布式训练)
- 生产部署最佳实践
03-Argo-Workflows
- Argo Workflows 架构
- Workflow 模板详解
- 高级 DAG 模式
- Artifact 管理
- 监控与可观测性
04-数据版本管理
- 数据版本管理挑战
- DVC 深度实践
- LakeFS 数据湖版本管理
- Delta Lake 表格版本管理
- 工具选择指南
05-实验跟踪与模型注册
- 实验跟踪系统架构
- MLflow 深度实践
- 自建模型注册中心
- 审批流程与血缘追踪
- 生产集成方案
核心概念
工作流引擎
工作流引擎负责编排和执行机器学习流水线,核心功能包括:
- DAG 编排:定义任务依赖关系
- 资源调度:分配计算资源
- 状态管理:跟踪执行状态
- 故障恢复:处理失败和重试
数据版本管理
在 ML 项目中管理数据版本的关键能力:
- 版本追踪:记录数据变更历史
- 分支合并:支持并行实验
- 血缘追踪:数据来源追溯
- 增量存储:节省存储成本
实验跟踪
记录和管理 ML 实验的系统:
- 参数记录:超参数和配置
- 指标追踪:训练和评估指标
- Artifact 存储:模型、数据、图表
- 实验对比:版本间差异分析
模型注册
生产级模型管理中心:
- 版本管理:模型版本控制
- 阶段转换:Staging → Production
- 审批流程:变更控制
- 血缘追踪:模型来源追溯
技术栈
┌─────────────────────────────────────────────────────────────┐
│ 应用层 │
│ 训练任务 │ 推理服务 │ 数据处理 │ 特征工程 │
├─────────────────────────────────────────────────────────────┤
│ 编排层 │
│ Kubeflow Pipelines │ Argo Workflows │ Airflow │ Prefect │
├─────────────────────────────────────────────────────────────┤
│ 数据管理层 │
│ DVC │ LakeFS │ Delta Lake │ Pachyderm │
├─────────────────────────────────────────────────────────────┤
│ 实验跟踪层 │
│ MLflow │ Weights & Biases │ Neptune │ 自建方案 │
├─────────────────────────────────────────────────────────────┤
│ 存储层 │
│ S3/MinIO │ PostgreSQL │ Redis │ Kafka │
└─────────────────────────────────────────────────────────────┘
学习路径
工作流概述 ──► KFP ──► Argo ──► 数据版本 ──► 实验跟踪
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
引擎对比 SDK开发 DAG模式 DVC/LakeFS MLflow
架构设计 Pipeline Artifact Delta Lake 模型注册
关键技能
学完本章,你将掌握:
工作流编排
- 设计 ML 流水线架构
- 使用 KFP/Argo 构建 Pipeline
- 实现复杂工作流模式
数据版本管理
- 配置和使用 DVC
- 部署 LakeFS 数据湖
- Delta Lake 时间旅行
实验管理
- MLflow 实验跟踪
- 模型版本管理
- 审批流程设计
生产集成
- K8s 原生工作流
- CI/CD 集成
- 监控告警
实践项目
端到端 ML Pipeline
- 数据预处理 → 训练 → 评估 → 部署
- 使用 Kubeflow Pipelines 编排
- 集成 MLflow 实验跟踪
数据版本管理系统
- DVC + Git 工作流
- 特征存储版本管理
- 训练数据快照
模型注册中心
- 自建模型注册服务
- 审批流程实现
- 血缘追踪系统