先这样答
RAG 是一条两段链路,评估必须跟着拆成两侧,混在一起评就说不清问题出在哪。
检索侧评的是「该找到的找到没有」。要有人工标注:一批真实问题,标出知识库里哪些段落是能支撑答案的。指标常用 Recall@k(前 k 条里命中了多少标准段落)、MRR(正确段落排得靠不靠前)。没有标注就评不了检索,所以建评测集是评估的第一步,几十条就能开工,后续滚动补充。
生成侧评的是「答得对不对、是不是依据资料答的」。核心三个:忠实度(答案里的断言能不能从检索到的段落里推出来,防止模型自由发挥)、答案相关性(有没有答到问题上)、引用准确(标注的出处和引用的内容对不对得上)。这三项人工评最准但贵,通行做法是用强模型当裁判批量评,再用人工抽检校准裁判的口径。
工程上可以拿 RAGAS 这类开源评估框架起步,它把忠实度、相关性这些指标做成了可跑的流水线;但框架给的分数只能看趋势,关键版本对比还是要人工把关。
最后补一句评估的落点:指标不是给汇报看的,是给迭代用的。切分改了、换了 Embedding、上了重排,都跑同一套评测集对比,回归有数,才敢上线。
面试官会怎么追问
- LLM 裁判评分不可靠怎么办? 三招:裁判提示词里给出明确评分标准和少量示例;定期抽人工标注和裁判打分对比,偏差大就修裁判提示词;关键决策用多人人工评。
- 评测集多大才够? 起步几十条覆盖主要意图类型就能发现明显问题;要比较细粒度的改动,几百条更稳,重要的是分布贴近真实用户问题。
- 忠实度和准确率是一回事吗? 不是。忠实度是「答案是否忠于资料」,资料本身错了答案照样忠实但不对,所以数据质量要单独把关。
回答的坑
- 只会说「看效果好不好」。要能落到具体指标名和指标两侧的拆分。
- 评完不接动作。面试官想听的是指标怎么驱动迭代:指标改了什么、上线依据是什么。
同系列的题
—— 本题完 ——