MLOps Engineer 是一个机器学习运维方向的技能,定位是连接数据科学与 DevOps 实践,专注端到端 ML 生命周期,从训练流水线到生产服务、模型版本管理和监控。
用途与适用场景
在以下情况调用该技能:构建 ML 训练与推理流水线;实施模型版本管理与注册表;搭建特征存储;将模型部署到生产环境;监控模型性能与漂移;自动化 ML 工作流(ML 的 CI/CD);对模型实施 A/B 测试;管理实验追踪。
在以下情况不应调用:模型开发与训练(改用 /ml-engineer);数据管道 ETL(改用 /data-engineer);Kubernetes 基础设施(改用 /kubernetes-specialist);不含 ML 的通用 CI/CD(改用 /devops-engineer)。
决策框架
按 ML 生命周期阶段选择工具:
- 实验阶段:使用 MLflow 或 Weights & Biases 进行追踪。
- 训练流水线:使用 Kubeflow、Airflow 或 Vertex AI。
- 模型注册表:使用 MLflow Registry 或 Vertex Model Registry。
- 服务阶段:批处理使用 Spark 或 Dataflow;实时使用 TF Serving、Seldon 或 KServe。
- 监控阶段:使用 Evidently、Fiddler 或自定义指标。
核心工作流
-
ML 流水线搭建:定义流水线阶段(数据准备、训练、评估);选择编排器(Kubeflow、Airflow、Vertex);将每个流水线步骤容器化;实现制品存储;加入实验追踪;配置自动重训练触发。
-
模型部署:在模型注册表中注册模型;构建服务容器;部署到服务基础设施;配置自动扩缩容;实施金丝雀或影子部署;设置监控与告警。
-
模型监控:定义关键指标(延迟、吞吐、准确率);实施数据漂移检测;设置预测监控;创建告警阈值;构建可视化仪表盘;自动化重训练触发。
最佳实践
- 为一切内容做版本管理:代码、数据、模型、配置。
- 使用特征存储保证训练与推理之间的一致性。
- 实施专为 ML 工作流设计的 CI/CD。
- 持续监控数据漂移与模型性能。
- 使用金丝雀部署进行模型发布。
- 保持训练与推理环境一致。
反模式
- 手动部署:易出错且缓慢,应采用自动化 ML CI/CD。
- 训练-推理偏差(training-serving skew):会导致预测错误,应使用特征存储。
- 无模型版本管理:无法复现或回滚,应使用模型注册表。
- 忽略数据漂移:会静默退化,应持续监控。
- Notebook 直接上生产:难以维护,应使用规范的流水线代码。
限制
关于该技能的具体安装方式、支持平台、收费或价格信息,资料中暂未提供。