机器学习模型服务质量监控体系
核心监控指标配置
1. 模型性能指标
- 响应时间(p95): 设置阈值为500ms,超过则触发告警
- 准确率: 监控p95准确率低于0.85时告警
- F1分数: 低于0.80时触发
2. 数据质量指标
- 输入数据分布变化: 使用KS检验,阈值0.1
- 数据漂移检测: 通过特征分布差异监控
- 缺失值率: 超过5%时告警
实施步骤
import prometheus_client as prometheus
from prometheus_client import Gauge, Histogram
# 初始化指标
model_accuracy = Gauge('model_accuracy', 'Current model accuracy')
response_time = Histogram('response_time_seconds', 'Response time')
# 模型推理过程监控
with response_time.time():
prediction = model.predict(input_data)
model_accuracy.set(accuracy_score(y_true, y_pred))
告警配置方案
阈值设置:
- 准确率告警: 5分钟内平均准确率<0.85
- 响应时间: p95>500ms持续10分钟
告警级别:
- P1: 系统不可用,立即通知
- P2: 性能下降,1小时内处理
使用Prometheus + Alertmanager实现自动化告警,配置规则文件:
- name: model-alerts
rules:
- alert: ModelAccuracyDrop
expr: model_accuracy < 0.85
for: 5m
labels:
severity: page

讨论