9. 监控与可观测
9.1 业务指标
核心业务指标
学习相关指标
-
学习完成率:完成学习的学习者占比
- 计算公式:学习完成率 = 完成学习的学习者数 / 总学习者数
- 目标值:≥70%
- 监控频率:每日
-
平均学习时长:学习者平均每天学习时长
- 计算公式:平均学习时长 = 总学习时长 / 学习天数
- 目标值:≥30分钟/天
- 监控频率:每日
-
知识点掌握度:学习者对知识点的平均掌握度
- 计算公式:知识点掌握度 = Σ(各知识点掌握度) / 知识点总数
- 目标值:≥80%
- 监控频率:每周
答疑相关指标
-
问答数量:每日问答总数
- 计算公式:问答数量 = 每日提问数
- 目标值:≥1000次/天
- 监控频率:实时
-
平均响应时间:从提问到获得回答的平均时间
- 计算公式:平均响应时间 = Σ(响应时间) / 问答数量
- 目标值:≤5秒
- 监控频率:实时
-
回答准确率:回答准确的比例
- 计算公式:回答准确率 = 准确回答数 / 总回答数
- 目标值:≥90%
- 监控频率:每日
-
用户满意度:用户对回答的满意度评分
- 计算公式:用户满意度 = Σ(满意度评分) / 评价数量
- 目标值:≥4.5/5.0
- 监控频率:每日
作业批改指标
-
批改数量:每日批改作业总数
- 计算公式:批改数量 = 每日提交作业数
- 目标值:≥500份/天
- 监控频率:实时
-
批改准确率:批改准确的比例
- 计算公式:批改准确率 = 准确批改数 / 总批改数
- 目标值:≥95%
- 监控频率:每日
-
批改效率:平均每份作业的批改时间
- 计 算公式:批改效率 = 总批改时间 / 批改数量
- 目标值:≤10秒/份
- 监控频率:实时
指标监控
监控系统架构
指标采集实现
# 指标采集实现
from prometheus_client import Counter, Histogram, Gauge
# 定义指标
qa_count = Counter('qa_total', 'Total number of Q&A requests')
qa_response_time = Histogram('qa_response_time_seconds', 'Q&A response time')
qa_accuracy = Gauge('qa_accuracy', 'Q&A accuracy rate')
homework_graded = Counter('homework_graded_total', 'Total number of homework graded')
learning_completion_rate = Gauge('learning_completion_rate', 'Learning completion rate')
# 记录指标
def record_qa(question, answer, response_time, accuracy):
"""记录问答指标"""
qa_count.inc()
qa_response_time.observe(response_time)
qa_accuracy.set(accuracy)
def record_homework_grading(homework_id, grading_time):
"""记录作业批改指标"""
homework_graded.inc()
# 记录批改时间等指标
告警机制
告警规则
- 回答准确率告警:当回答准确率<85%时 告警
- 响应时间告警:当平均响应时间>10秒时告警
- 系统可用性告警:当系统可用性<99.9%时告警
- 错误率告警:当错误率>5%时告警
告警配置示例
# Prometheus告警规则
groups:
- name: education_alerts
rules:
- alert: LowQAAccuracy
expr: qa_accuracy < 0.85
for: 5m
labels:
severity: warning
annotations:
summary: "问答准确率低于85%"
description: "当前问答准确率为 {{ $value }},低于目标值85%"
- alert: HighResponseTime
expr: qa_response_time_seconds_p99 > 10
for: 5m
labels:
severity: warning
annotations:
summary: "响应时间过高"
description: "P99响应时间为 {{ $value }}秒,超过10秒阈值"
- alert: SystemDown
expr: up == 0
for: 1m
labels:
severity: critical
annotations:
summary: "系统宕机"
description: "系统已宕机超过1分钟"
9.2 模型指标
模型性能指标
模型准确 率指标
-
回答准确率:模型回答的准确率
- 计算公式:准确率 = 正确回答数 / 总回答数
- 目标值:≥90%
- 评估方法:人工评估、自动评估
-
批改准确率:模型批改的准确率
- 计算公式:准确率 = 正确批改数 / 总批改数
- 目标值:≥95%
- 评估方法:与标准答案对比
模型性能指标
-
响应时间:模型推理时间
- P50响应时间:目标≤500ms
- P95响应时间:目标≤1s
- P99响应时间:目标≤2s
-
吞吐量:每秒处理的请求数
- 目标值:≥100 QPS
- 监控频率:实时
-
资源使用率:GPU、CPU、内存使用率
- GPU使用率:目标≥70%
- CPU使用率:目标≤80%
- 内存使用率:目标≤80%