MLOps 的CI/CD VS DevOps 的CI/CD
一、MLOps(机器学习运维) :MLOps =DevOps +DataOps +ModelOps
使用MLOps应用到端到端、全生命周期的数据+AI/ML运营模型,可以看做是“数据驱动业务”与“AI模型落地”两大流程的集成视图
万能作业流水线
Organize(管数据)---->Engineer(做特征)---->Science(建模型)--->Deploy(上线)→ Analyze(看效果)
可应用的业务场景:
1.制造业质量监测
采集MES传感器-->实时流式处理--->训练缺陷分类模型--->部署在边缘网关--->产线大屏报警
2.零售智能补货
POS交易数据(Batch)------>特征聚合 → 销量时序模型 → 每日自动输出补货建议到 ERP。
二、传统的ML交付 vs MLOps 交付
传统ML交付:手动jupyter---->手动打包--->手动部署--->人工监控
(一次部署2-4周)(数据/模型/代码版本错位,无法复现)
MLOps交付:Git Push触发流水线--->自动训练----> 自动评测--->灰色法棍
(一天内部署N次) (任意版本三元组可秒级还原)
三、DevOps CI/CD 对于测试人员必备
阶段 | 功能 | 工具 |
代码提交阶段(Pre-CI) | 本地钩子 Pre-commit | pre-commit 框架 + black 、flake8 、pytest |
持续集成阶段(CI) | 自动单元测试 | GitHub Actions / GitLab CI / Jenkins |
代码覆盖率门禁 | pytest-cov + codecov | |
静态代码扫描 | SonarQube 、SpotBugs 、ESLint | |
安全扫描(SAST/DAST) | safe( python)、npm audit 、ZAP | |
制品构建阶段(Build) | 容器镜像冒烟测试 | docker build--->Docker run--->curl/health |
部署阶段(CD) | 多环境自动部署 | Argo CD / GitLab CD / Jenkins X |
数据库 Schema 迁移验证 | Flyway / Liquibase + 自写校验 SQL | |
测试加速阶段(CI-Test) | 并行 UI 自动化 | playwright test --workers=8 |
契约测试(Consumer-Driven Test | Pact JS / Spring Cloud Contract | |
性能基线测试 | Gatling / k6 | |
上线后阶段(Post-CD) | 生产可观测性断言 | PromQL + Grafana |
自动回滚与复盘 | Argo Rollouts + Flagger + ChatOps |
四、MLOps CI/CD vs DevOps CI/CD架构
DevOps CI/CD:完全开源,任选 Jenkins/GitLab CI/GitHub Actions 就能用
MLOps CI/CD:也已开源成熟,MLflow+Kubeflow+DVC+Evidently+Feast 组合就能实现“数据-模型-代码”三元组持续交付