基于Prometheus的模型训练集分布监控
踩坑记录
最近在搭建模型监控平台时,发现训练集分布漂移问题频发却无从下手。经过一周的排查,终于搞定了基于Prometheus的训练集分布监控方案。
核心指标配置
首先需要采集以下关键指标:
# metrics.yml
- name: training_data_distribution
help: "Training data feature distribution"
type: histogram
labels: ["feature_name", "model_version"]
buckets: [0.1, 0.5, 1.0, 2.0, 5.0, 10.0]
告警规则配置
# alerting.yml
- alert: TrainingDistributionDrift
expr: histogram_quantile(0.5, rate(training_data_distribution_bucket[5m])) > 100
for: 3m
labels:
severity: critical
team: ml-engineering
annotations:
summary: "Training data distribution drift detected"
description: "Feature {{ $labels.feature_name }} shows significant distribution change"
实现步骤
- 在训练代码中集成prometheus_client
- 每个batch收集特征分布
- 配置Prometheus抓取目标
- 设置告警规则并验证
避坑指南
⚠️ 切勿使用平均值监控,应使用分位数;⚠️ 告警阈值需根据业务场景动态调整。

讨论