MLflow
MLflow 是一个用于管理完整的 机器学习生命周期 —— 从实验跟踪和模型版本控制到部署和监控。被全球成千上万的组织使用,MLflow 为机器学习工作流带来结构化和可复现性。在 Clore.ai 的 GPU 云上运行它,可以让你的训练任务旁边拥有一个集中式跟踪服务器。
什么是 MLflow?
MLflow 提供四个核心组件:
跟踪
记录 ML 运行中的参数、指标、产物和代码
项目
将代码打包以实现可复现运行
模型
用于跨框架部署的标准模型格式
模型注册表
带版本控制和生命周期管理的集中式模型存储
支持的框架(内置自动日志记录):
PyTorch、TensorFlow/Keras
Scikit-learn、XGBoost、LightGBM
HuggingFace Transformers
Spark MLlib、statsmodels、Prophet
前提条件
GPU 显存
任意(MLflow 服务器本身仅占用 CPU)
存储
20 GB+(用于产物)
内存
服务器至少需要 4 GB
端口
22(SSH)、5000(MLflow UI)
步骤 1 — 在 Clore.ai 上租用服务器
登录到 clore.ai.
点击 市场.
对于专用跟踪服务器:按 RAM ≥ 8 GB 过滤(GPU 可选)。
对于共置部署:使用你现有的训练实例。
设置 Docker 镜像:
ghcr.io/mlflow/mlflow:latest设置开放端口:
22(SSH)和5000(MLflow UI)。点击 租用.
步骤 2 — 启动 MLflow 跟踪服务器
官方 ghcr.io/mlflow/mlflow 镜像需要覆盖启动命令。
在 Clore.ai Docker 配置中
将 命令 (或 entrypoint 覆盖)设置为:
替代方案:自定义 Dockerfile
步骤 3 — 访问 MLflow UI
打开你的浏览器:
你应该会看到 MLflow Experiments 仪表板。
步骤 4 — 记录你的第一个实验
从远程训练任务连接
在你的训练机器(或另一台 Clore.ai 实例)上,设置跟踪 URI:
基础 PyTorch 实验日志记录
HuggingFace Transformers 自动日志记录
步骤 5 — 使用自动日志记录的 Scikit-learn
步骤 6 — 模型注册表
通过 UI 或 API 注册和管理模型版本:
步骤 7 — 提供模型服务
MLflow 可以将任何已记录的模型作为 REST API 提供服务:
测试已提供服务的模型:
高级配置
PostgreSQL 后端(生产环境)
S3 产物存储
认证(企业版)
在 UI 中比较运行
在以下位置打开 MLflow UI:
http://<clore-host>:<port>从左侧面板选择一个实验
勾选多个运行旁边的复选框
点击 比较 以并排查看指标和参数
使用 图表 选项卡用于可视化比较
故障排查
无法连接到跟踪服务器
解决方案:
检查端口 5000 是否已在 Clore.ai 中开放并转发
验证服务器是否正在运行:
ps aux | grep mlflow测试连通性:
curl http://<clore-host>:<port>/health
产物上传失败
解决方案: 确保产物目录可写:
SQLite 锁定错误(并发写入)
解决方案: 对于多用户设置,切换到 PostgreSQL:
模型注册表未显示
解决方案: 请确认你使用的是一个 --backend-store-uri 支持注册表的后端(SQLite 或 PostgreSQL——而不是仅仅本地路径)。
成本估算
4 核 CPU
仅跟踪服务器
约 $0.05/小时
非常轻量
RTX 3080
共置训练
$0.05–0.19/小时
训练 + MLflow
RTX 4090
高负载训练 + 跟踪
$0.14–0.42/小时
最常见的设置
有用资源
Clore.ai GPU 推荐
💡 本指南中的所有示例都可以部署在 Clore.ai GPU 服务器上。浏览可用 GPU 并按小时租用——无需承诺,拥有完整 root 访问权限。
最后更新于
这有帮助吗?