向量检索监控是什么
向量检索的监控要覆盖四层:请求层看 QPS、P95 与 P99 延迟、错误率;质量层看抽样召回、评测集回归与分数分布漂移;存储层看索引大小、段或分片数量、待压缩任务;写入层看写入积压与失败重试。与普通服务监控最大的区别是质量层——检索系统可以完全不报错却变差,只有把分数分布和召回回归纳入监控,才能在用户投诉之前发现静默退化。
基本信息
| 请求指标 | QPS、P95 / P99 延迟、错误率 |
|---|---|
| 质量指标 | top1 分数均值与分布、recall@k 回归 |
| 存储指标 | 索引大小、段或分片数量、待压缩任务数 |
| 写入指标 | 写入积压、upsert 失败数 |
| 基线方式 | 固定评测集定期回归,结果写回时序库 |
| 告警依据 | P95 超阈、召回环比下降、待压缩段数超阈 |
典型使用场景
- 上线初期采集基线,两周后才谈告警阈值
- 模型或索引变更后比对指标是否回落
- 容量规划:用索引增长速度推算什么时候需要扩容
- 用户反馈答案变差时,先看质量指标再查数据
- 把评测回归做成定时任务,进入值班例检清单
指标清单
指标清单
retrieval_qps / retrieval_p95_ms / retrieval_p99_ms # 请求层
top1_score_avg(按查询类型分组,观察分布漂移) # 质量层
index_size_bytes / segments_count / pending_compactions # 存储层
write_queue_lag / upsert_errors # 写入层
weekly_eval: recall@10, mrr@10(离线任务写回时序库) # 质量回归指标分层读法
| 层 | 指标 | 异常时的表现 |
|---|---|---|
| 请求层 | QPS、P95 / P99、错误率 | 延迟突增或错误率上升,优先查资源与依赖 |
| 质量层 | top1 分数、recall@k | 服务正常但用户满意度下降,最难定位 |
| 存储层 | 索引大小、段数、待压缩数 | 段数持续增长说明删除写入堆积,检索变慢 |
| 写入层 | 写入积压、失败数 | 数据陈旧,检索结果停留在旧版本 |
分数分布与召回回归能捕捉「无报错但变差」的静默退化,这是向量检索特有的监控重点,也是普通监控体系最容易遗漏的一层。
阈值要从自建基线推导(例如近两周 P95 的分布),照搬默认值会产出大量误报,最终没人再看告警。