问题答案不在知识库中时,如何评估模型回答?

考查重点:事实正确与库内证据支持。答案不在库中时,按产品约定补查外部资料或说明缺口;评测分别判断事实是否正确、引用是否支持,区分知识缺失与生成错误

本题目录

参考答案

核心回答

先定义这个产品允许怎样使用库外知识,再把事实正确、证据支持、回答相关和拒答/澄清是否合适分开评估。知识库没有答案时,模型仍可能凭通用知识答对,但不能假装来自内部资料;如果任务要求只能依据知识库,应说明缺口,必要时澄清或补查。

因此不能只看答案流畅,也不能统一奖励“无法回答”。无答案题要检查是否编造事实与引用;有答案题则检查是否过度拒答。

先确认究竟是哪一种无答案

库里确实没有、资料尚未更新或用户无权读取,与“库里有但检索遗漏”不同。测试集应通过人工或独立查询核对可回答性与权限,再分别标注:证据充分、部分充分、需要澄清、资料冲突和确无依据。

线上无法立刻确认库中是否存在时,记录检索轨迹和当前证据范围,不把一次低分检索自动当成全库无答案。

怎样给回答打分

核对关键断言是否真实、是否解决用户问题、是否准确表达不确定,以及引用是否真的支持结论。允许使用通用知识时,另找独立可靠依据验证,并与内部制度、实时业务事实区分;不能用另一模型的自信分数替代查证。

RAG忠实度主要衡量回答与给定上下文是否一致。一个库外正确常识可能不受当前上下文支持,一个错误文档也可能让回答“忠实但不真实”,所以忠实度与事实性应分别看。

拒答也要有用:指出当前缺少的条件、提供已知部分或可行下一步,而不是无差别阻止所有回答。空回答或没有可检查断言时,单独按拒答行为评分,不把指标分母为零自动记满分。

测试和指标怎样组织

同时准备有答案、无答案、近似但条件不符、过时与冲突资料。统计无依据确定作答、虚构引用、错误拒答、合理澄清和必要信息覆盖;保留每项指标的分母与产品策略,不能只汇总一个总分。

调整阈值时同时看漏答与冒答的取舍,在不同问题类型上校准。评审模型可辅助逐断言检查,但需用标注样本和高分失败样例校验;最终改善应体现在独立留出问题上。

常见追问

相似度低于阈值就拒答行吗? 可以作为线索,阈值需按模型与任务验证;低相似不必然没答案,高相似也可能只是主题相近,应结合证据完整性与对象条件判断。

参考资料

  • 国内:JavaGuide:RAG 基础概念:依据 RAG 生成的证据约束,说明正文中库内依据、库外正确常识与无依据猜测需要分开判断。
  • 国内:JavaGuide:RAG 优化:借鉴分层评测与错误定位,说明正文中知识库确无答案和检索遗漏不能混为同类失败。
  • 国内:zero2Agent:容错与可靠性:参考无结果与失败状态的处理,组织正文中澄清、补查和有用拒答的策略。
  • 国外:Anthropic:Reduce hallucinations:依据允许未知与引用核对的要求,说明正文中评估不确定性和无依据确定作答的方法。
  • 国外:Ragas:Faithfulness:忠实度按回答断言是否受检索上下文支持计算,说明它不能独自判断库外知识是否真实或拒答是否合理。

相关面经

4 篇

深信服

Java
校招一面
查看原面经 →
RAG中如果并没有检索到目标chunk但是LLM给出了回答,这个回答无法判断是否正确怎么办?

美团

AI 全栈开发工程师
校招秋招二面
查看原面经 →
如果知识库里没有答案,怎么让模型不乱说

蚂蚁集团

面经合集
查看原面经 →
追问
如果问了一个知识库里没有的问题,系统怎么表现

阿里巴巴

AI 全栈开发工程师
一面
查看原面经 →
上线以后,用户可能问的一个问题文档里没有的,但走了 RAG 以后可能也会有一个回答给他(大模型自己发挥回答),那你怎么去评测他回答的效果?(追问)从算法或其他角度有这种评测的机制吗?(追问)你认为打分的维度可能是什么?

相关题目

4 题