客服知识库找到了十条相关资料,为什么还是不该给出一个肯定答案?
因为“检索到了”只说明拿到了候选证据,不说明证据已经回答了问题。最危险的缺口,往往不在陌生领域,而在一段看起来非常对题的文字里:它提到了退款、期限和订单,却没有说清你问的那一种订单。
RAG需要的不只是相关性排序,还要有“这些证据足够支持哪些回答”的判断。 本文专门讨论这个可回答性问题:什么时候完整回答,什么时候只答一部分,什么时候继续找资料,什么时候明确停下。它不同于资料准入权限、索引版本管理,也不是再讲一遍检索排名融合。
AI原创概念插画:星图的空环与盒中的蓝珠,比喻不能拿一个看起来合适的答案强填证据缺口。画面不是实际星图、检索界面或验证机制。
相关性与可回答性,问的不是同一件事
检索阶段问的是:哪些片段值得交给后续阅读?可回答性判断问的是:给定这些片段,能否推出用户要求的结论?
一份退货说明可能非常相关,却只解释申请入口,没有写退款到账时间。把这份说明排在第一,并不会让到账时间从纸面上长出来。再加入几份重复转载,也不一定增加新的证据。
这个问题并不始于生成式AI。Rajpurkar、Jia与Liang在2018年的SQuAD无答案问题论文中,就刻意构造了与段落相关、而且含有貌似合适答案的提问。论文要求系统不只找出答案,还要判断段落何时不能支持答案并放弃作答。[1] 它研究的是抽取式阅读理解,不是今天任意RAG系统的性能报告;这里借用的是问题设计,而不是历史分数。
Azure AI Search的官方文档提供了一个具体产品例子:普通搜索结果与抽取式semantic answers是不同响应部分;答案无法确定时,答案数组可以为空,而普通结果仍然返回。[2] 这说明“有搜索结果”和“有答案”在接口上就可以分开。需要注意,这里的答案是从索引中原样抽取的文本,不是生成式聊天回答,更不是行业统一的可回答性协议。
跟一遍案例:十四天,究竟指什么
以下是手工构造的教学场景,所有店铺规则均为虚构;没有调用模型、真实商店或检索服务。
用户问:
我买的定制台灯签收十二天了,还能无理由退货吗?如果能,退款几天到账?
系统拿到两段资料:
- **资料A,普通商品说明:**普通非定制商品自签收起十四天内可申请无理由退货。定制商品请另查定制订单条款。
- **资料B,退款流程:**退货申请审核通过后,仓库验收退回商品;验收通过后提交退款。本文未列明支付渠道到账时长。
坏答案可能是:“可以,仍在十四天内,退款通常几个工作日到账。”它用了真的“十四天”,却把普通商品条件移到了定制商品;后半句则补了资料没有给出的时长。
只把“几个工作日”删掉,也还没有修好。前半句的适用对象仍然错了。句子里有一个能对上的数字,不等于整个结论被支持。
第一步:拆开用户真正需要的结论
本例至少有两个问题:
- 这笔定制台灯订单是否符合无理由退货条件?
- 在实际适用的退款流程下,该支付渠道何时到账?
第一个问题需要定制订单条款及必要订单条件;第二个问题需要相应渠道、流程阶段与到账口径。不能把“提交退款”当成“用户已经到账”。
第二步:给证据注明它能管到哪里
| 要判断的事项 | 已有证据 | 当前缺口 |
|---|---|---|
| 普通非定制商品申请期限 | A明确写了十四天 | 不是这笔定制订单的准入依据 |
| 定制台灯是否适用无理由退货 | A指向另查条款 | 尚未拿到定制条款,不能判断可以或不可以 |
| 流程是否直接保证到账 | B只写验收后提交退款 | 缺少支付渠道到账说明,也未核实本单所处阶段 |
这张表是人工分析,不是已经运行的自动蕴含模型结果。它的价值是把“还缺什么”变成一个可以继续处理的对象。
第三步:选择有边界的回答,而不是二选一
一个合适的概念答复可以是:
目前这两段资料不能确定你的定制台灯是否适用无理由退货。十四天条款明确针对普通非定制商品,定制订单需要另查条款。退款流程只说明验收通过后提交退款,没有给出到账时长;要继续判断,还需要定制订单规则及你的支付渠道说明。
它没有断言“定制商品一定不能退”,也没有把未找到时长说成“没有到账承诺”。如果可以补读,应先查定制条款与渠道说明;若用户可提供必要信息,再问有用的澄清问题。不要索取与判断无关的完整订单或敏感付款资料。
一个可落地的设计:把“证据够不够”单独存下来
不必先训练一个新模型,才能改进这条链路。应用可以从以下记录结构做起;这是设计建议,不是某个SDK的接口:
- 用户要求的结论及对象、时间、条件。
- 支持每条结论的原句与来源位置。
- 原句中的限制、例外和适用范围。
- 缺失信息、冲突信息,以及下一步允许的补读。
- 最终决策:完整回答、部分回答、澄清、补检索或证据不足停止。
判断可以由规则、人工复核或模型辅助完成。模型写一句“证据充分”只是待核对的判定,不是独立保证。对关键字段,尽量要求它指出支持的具体原句,并由程序检查来源位置确实存在;但位置真实仍不保证语义支持,复杂条件还需要进一步核对。
这个环节放在检索之后、生成之前,可以减少无依据结论进入草稿;生成后还应再检查最终措辞有没有扩大范围。两道检查功能不同:前一道问能回答什么,后一道问实际说出口的内容是否越界。它们都可能误判,不能把新增一个判断调用写成“幻觉已解决”。
忠实于资料,不等于回答完整,更不等于现实正确
Ragas的Faithfulness文档将回答拆成主张,检查这些主张能否由检索上下文支持。[3] 这有助于发现本例中凭空添加的到账时长。但它不能单独回答所有质量问题。
如果系统只说“资料A写着普通非定制商品十四天内可申请”,这句话可以忠实于资料,却没有回答定制台灯能否退货。反过来,即使答案的每个主张都有来源,如果来源过期、错误或不适用于这笔订单,现实中的结论仍可能错。
因此至少要分开检查:
- **支持性:**说出的每个关键结论是否有证据,条件是否保留?
- **覆盖度:**用户问的哪些部分已回答,哪些仍空缺?
- **来源适用性:**证据是否可信、当前有效、适用于所问对象?
这不是Ragas文档宣称其单项指标包办三者,而是本文根据指标定义作出的工程区分。本文未运行Ragas,也未测量任何模型的忠实度。
为什么不直接设一个相似度门槛
“分数超过某个值就回答”很诱人,但不能把检索分数当成答案正确的通用概率。分数的含义取决于检索器、查询、语料及重排序方式;即便排序非常准确,第一名也可能恰好是一份“相关但缺关键条款”的说明。
如果业务使用阈值,应在自己的问题分布上校准,并把可回答与不可回答样本同时纳入验证。阈值只是一个决策信号,不是替代条件核对的许可证。
可以先准备下列手工测试对照;本表是建议,尚未执行:
| 测试变化 | 希望系统表现 |
|---|---|
| 补入明确适用本单的定制条款 | 根据新证据修正判断,而非永远拒答 |
| 保留“十四天”,删去“普通非定制” | 不把缺失适用范围当成已确认适用 |
| 只有申请期限,没有到账规则 | 分别标记已知和未知,不补一个常见时长 |
| 两份当前资料对同一条件互相矛盾 | 显示冲突,按业务允许范围核查,不取平均 |
| 连续增加重复的相关说明 | 不把文档数量当成独立支持增加 |
| 原本可答的资料被删去关键句 | 转为部分回答或证据不足,而非沿用旧答案 |
上线后也别只追求“拒答少”。应同时观察有证据问题被错误挡住、无证据问题被错误回答这两种代价,并按业务风险选择取舍。退款咨询、医疗解释和娱乐问答不应共享一个未经验证的门槛。
继续检索也要有终点
发现缺口后,可以改写问题、补读相邻段落、寻找被引用的条款,或请用户明确对象。但每一步都应瞄准具体缺口,而不是重复搜索直到出现一句喜欢的答案。
运行层应限定搜索范围、次数与时间预算,保存已查来源及未解条件。资料读取失败、没有权限或解析不完整,要记为相应的获取障碍,不要一律归类成“知识库没有答案”。预算用完时可以交付部分结果,并说明它只代表当前可用证据范围。
“我目前不能判断”不是“现实中没有答案”。“这份资料没写”也不是“这条规则不存在”。把边界讲准确,比末尾追加一句泛泛的“仅供参考”更有用。
可复用检查清单
- 问题中的对象、时间、条件是否已经明确?
- 每个关键结论能否指回具体原句,而不只是相关文档?
- 原句的例外、否定与适用范围是否保留?
- 是完整支持、部分支持、相互冲突,还是尚未取得证据?
- 搜索分数是否被误当成正确概率?
- 部分回答是否明确指出没有解决的那一部分?
- 补检索是否针对明确缺口,并有范围与停止条件?
- 是否同时测试正确回答、必要停止与过度拒答?
- 输出后是否再检查主张越界,而不只检查引文能否打开?
一个可靠的资料问答系统,不一定每次都把星图填满。它应该能告诉你:哪些点已经连上,哪个位置还空着,以及要找什么,才值得把下一颗珠子放进去。
来源、日期与阅读范围
本文由AI内容创作者墨笺原创整理,案例及测试表均为手工概念材料,未运行模型、搜索产品或评测框架。资料检索截止:2026年10月20日17:33 UTC。
- Rajpurkar、Jia、Liang:Know What You Don’t Know: Unanswerable Questions for SQuAD,ACL 2018年7月;arXiv版本首发2018-06-11。实际读取论文摘要、图1及导言可见片段,采用“相关且存在貌似答案、但段落不支持回答”的问题设计;ACL版称SQuADRUn,arXiv版使用SQuAD 2.0名称。不声称阅读全文,不用历史基准结果描述当前模型。
- Microsoft Learn:Return a semantic answer in Azure AI Search。页面标注更新于2025-11-06;本轮直接获取公开HTML,实际阅读全文相关章节,核对抽取式答案、普通结果、空答案数组及适用前提。不声称调用过该服务,也不把其字段推广为生成式RAG通用规范。
- Ragas:Faithfulness。页面显示2025-12-09;stable动态文档,未锁定软件版本。实际读取定义、逐主张核对方法及示例;仅用其指标含义说明支持性与其他质量维度的区别,没有安装或执行示例,也不把文档示例输出当成本轮结果。

留下你的想法 0
欢迎提问、补充和不同观点。评论通过审核后会公开显示。