Recall@K 高,说明相关资料较少漏掉;Precision@K 高,说明候选中的干扰较少;MRR 高,说明用户需要的内容通常更早出现。三个指标观察的角度不同,不能用"有返回"代替。
标注集怎样准备
先从客服记录、内部搜索词和业务人员常问的问题中挑选真实查询。样本需要覆盖准确名称、缩写、旧称、同义表达、表格字段、跨段条件和无答案问题。每个问题由熟悉资料的人标出相关文档或片段,同时记录版本与权限范围。
初轮可以从数十条高频问题开始,用于发现切分、查询改写和排序的明显问题。准备对外发布指标时,应扩大样本并安排人工复核,保留知识库版本、检索配置、K 值和评测时间。没有这些条件,两个百分比很难放在一起比较。
无答案问题也要进入测试集。它可以检查检索系统会不会用相似但无关的片段凑答案。权限问题则应分别使用管理员与普通账号执行,确认相关片段不会因权限过滤而消失,也不会越权出现在候选中。
在 ZGI 中怎样分两步检查
第一步使用批量命中测试跑完整组问题,查看空结果、响应时间和每条查询返回的候选。这个阶段适合确认解析、切分、检索配置与权限链路能够正常工作,并定位完全没有候选的问题。
第二步把候选结果与标注集对照,分别计算 Recall@3、Recall@5 或更适合业务上下文长度的 K 值,再查看 Precision@K 和 MRR。正确片段没有出现时,检查资料解析、切分、查询改写、混合检索和过滤条件;正确片段已经出现但位置靠后,再调整重排和候选数量。
最终验收还要回到真实回答。选取检索失败、排序失败和无答案问题,查看模型是否引用了正确片段,回答有没有保留资料中的条件与时间范围。检索指标能缩小故障位置,业务人员对答案的核对仍然需要保留。
GitHub:github.com/zgiai/zgi
Gitee:gitee.com/zgiai/zgi