一、RAG应用评估的核心体系构建
(一)三维度量化评估框架
RAG(检索增强生成)系统的性能评估需从检索、生成、系统级三个维度切入,建立覆盖全链路的量化指标体系,避免单一维度优化导致的系统失衡。
1. 检索模块:精准性与效率双驱动
指标名称 | 定义 | 计算方式 | 健康阈值 | 工具链 |
---|---|---|---|---|
Hit Rate@3 | 前3条检索结果包含正确答案的比例 | 正确结果数/总查询数 | ≥80% | LlamaIndex Evaluator |
平均检索时延 | 检索请求的P95延迟 | 秒级统计(单位:ms) | <500ms | Prometheus + Grafana |
上下文相关度 | 人工评分检索内容与问题的相关性 | 1-5分制人工标注 | ≥4.0 | Label Studio + 自定义评分表 |
MRR(平均倒数秩) | 正确答案排名的倒数均值 | 1/排名的平均值(完美为1) | ≥0.65 | TREC eval |
技术实现:通过LlamaIndex的RetrieverEvaluator
类自动计算Hit Rate,结合Prometheus监控检索服务的HTTP延迟指标,实现实时性能追踪。
2. 生成模块:事实性与相关性优先
指标名称 | 检测方式 | 优化目标 | 工具链 |
---|---|---|---|
事实准确率 | 生成内容与权威文档的一致性 | 对比权威源计算准确率 | ≥90% |
幻觉率 | 生成内容中虚构事实的比例 | 人工标注+LLM检测 | ≤5% |
答案相关度 | 生成答案与问题的语义匹配度 | BLEURT/BERTScore评分 | ≥0.85 |
有害内容率 | 违规/偏见内容的比例 | 内容安全API扫描 | 0% |
案例:某医疗RAG系统通过集成SelfCheckGPT,将幻觉率从12%降至3.2%,事实准确率从78%提升至94%。
3. 系统级指标:体验与成本平衡
- 吞吐量(QPS):单GPU实例处理请求数,目标≥50 req/s(A100显卡)。
- 错误率:5xx服务器错误比例,需控制在1%以内。
- 用户满意度(CSAT):通过NPS调研获取,目标≥4.2/5.0。
- 单次查询成本:基于云服务定价计算,目标≤$0.001/次(A100实例)。
(二)数据采集与标注流程
1. 多源数据采集方案
- 用户反馈:在产品界面添加“好评”“差评”按钮,通过前端埋点采集点击数据。
<!-- 前端交互组件 --> <div class="feedback-container"><button id="like-btn" class="btn btn-success">好评 ✔️</button><button id="dislike-btn" class="btn btn-danger">差评 ❌</button> </div> <script>// 发送反馈至后端APIdocument.getElementById('like-btn').addEventListener('click', () => {fetch('/api/feedback', { method: 'POST', body: { type: 'positive' } });}); </script>
- 人工标注:通过Label Studio创建标注任务,由标注员模拟用户提问并标注答案质量,成本约$0.5/样本。
2. 数据管理与分析
- ORM模型设计(Django示例):
from django.db import modelsclass Conversation(models.Model):user_query = models.TextField(verbose_name='用户提问')rag_response = models.TextField(verbose_name='RAG回答')