知识库检索效果怎么验
知识库要验检索效果,先备一组已知出处的题目,再记下每一题有没有取回那一段原文、取回的是不是已经停用的版本,以及答复在送出前有没有对上引用。题目对上的文件已在索引里、但切段把句子切开,才重切;现行版本还没写进索引,才重建索引。
目录
验检索和搭建、管版本分开
搭建知识库时要定的是哪一批文件可以当准则、谁可以读、现行路径在哪。版本要管的是哪一份档案标成现行、谁可以把旧稿标成停用。这一笔验的是:拿已知出处的题目去查,取回的段落是不是题目上写的那一段现行原文。三件事不要并成「把文件放进去就会答对」。分别见 企业知识库怎么搭建、知识库文件版本怎么管。
权限仍然沿用文件库已经设好的群组。验检索的人用的账号,必须是题目所属目录允许阅读的账号;用一个打不开该目录的账号去测,未取回不能算成检索失败。角色与目录怎样对上,见 企业AI助理如何设定权限。交付范围见 企业知识库与内部助理。
题目、出处和可接受的答要成套
2026年10月21日阅读的 Microsoft Learn:RAG 准备阶段 写明,收集测试查询的产出包含三项:查询,也就是一位正当用户可能提出的问题;上下文,也就是文件里对上该查询的原文,每一段写上页码和实际文字;答案,也就是对该查询有效的回应,可以是文件原文,也可以是从一段或多段上下文改写而来。该页没有刊登日期。问题必须能由文件内容回答。该页并写明,主题专家往往难以一次列全题目,可以用代表性文件产生合成问题,但产出要由主题专家复核,确认问题对得上用途、答案对得上问题。
公司的题目集就用这三项:题目、出处(文件、页码、原文)、可接受的答。没有页码和原文的题,不进这一套。合成题在负责人复核之前,不拿来当验收。该页另写,使用案例的客户或主题专家应作为质量关口,判断文件、题目和答案是否完整、有代表性且正确,并定期复核题目和答案,使它们继续准确反映来源文件。定期的间隔由公司自己定,该页没有给天数。
命中和未命中记在同一本
2026年10月21日阅读的 Microsoft Learn:RAG 信息检索阶段 写明,评估搜索结果时用准备阶段已经收集的两项:查询,以及测试文件里对上该查询的全部文字。该页列出三种做法。Precision at K:在全部搜索结果中,正确辨认为相关项目的百分比,着重结果准不准。Recall at K:该页的用词是,前 K 笔里的相关项目,占「全部可能的 relative items」的百分比,着重覆盖。Mean reciprocal rank:已排序结果里,第一个相关答案的倒数排名的平均,着重第一个相关结果出现的位置。该页没有刊登日期。
该页写明,正面例子希望这些指标尽量接近 1,负面例子——数据本不该答得了的查询——希望尽量接近 0;全部测试查询都要测,正面和负面分别求平均。页面没有另外给一个及格分数。现场记录可以先写人读得懂的一栏:已知出处有没有出现在取回的结果里、若出现则排在第几笔、若没出现则记未命中。要报数字时,再按该页的三种做法计算,并写明 K 是这次记录里的哪一个数。K 由这次测试写明,不从该页抄一个固定值,因为该页没有指定 K。
取回停用版本,不算命中现行
取回的段落若来自已经标成停用的档案,这一题对现行文本记成未命中,并在备注写「取回的是停用版本」加上该版本的标记。不要因为字面相似就改记成命中。现行标记在哪个存放处、谁可以把旧稿标成停用,沿用版本那一篇的写法。题目集里的出处若还指着旧页,先按准备阶段所说,定期把题目和答案改到仍然准确反映来源文件,再重测。
停用版本被取回,修的是索引里留下的旧档,不是把题目改得含糊以便「更容易命中」。负责人先确认存放处上的现行档,再把该档的切段写进索引。旧档从供检索的结果里拿掉或标成不可引用,和版本记录同一天做。两天对不上,下一次测试仍会把旧句当成依据。
送出前对上引用里的原文
2026年10月21日阅读的 Microsoft Learn:RAG 语言模型端到端评估 把 groundedness(有时称为 faithfulness)写成:衡量回应是否完全基于上下文,并验证回应没有使用上下文以外的信息。该页写明,这个指标低,表示语言模型可能输出不准确或没有意义的回应;计算结果低时,应评估是否要补充数据、调整切段策略或切段大小,或调整提示。该页没有刊登日期,也没有规定必须由人签核才算这个指标达标。
送出前的核对是知识库自己的规则:答复写出文件名和段落,负责人打开该段,句子确实在里面,才可以离开草稿。段落里没有这句,答复维持草稿,并在记录写上对不上的那一句。这和搭建时「答复要带路径、对不上就留在草稿」是同一件事,用在已经能量测的题目集上。见 企业知识库怎么搭建。指标可以事后算;送出前这一笔核对不靠指标代替。
切段和重建索引看的不是同一件事
2026年10月21日阅读的 Microsoft Learn:RAG 切段阶段 把切段写成把文件分成大小合适、各自含有语义相关内容的块。该页写明,整份文件或过大的块成本高,可能超出模型的 token 上限,效果也不好;把和查询无关的信息送进模型,可能得到不准确或无关的回应。块太小、不足以回答查询,结果也差,跨在多块上的相关上下文可能取不齐。该页没有刊登日期。
设计与评估指南 把流程写成:切段、为块加上元数据、用嵌入模型向量化、再把块存进搜索索引。现行档的块还没存进索引,或索引里仍只存着停用版本,要做的是把现行档写进索引,而不是先改切段大小。现行档已经在索引里,但取回的块把句子和它所依赖的条件切开,才回到切段,按文件结构重切这一档,再存进索引。检索阶段的向量搜索一节另写明,查询嵌入前要做和切块时相同的清理,并且必须使用为切块做嵌入的同一个模型。该页有一部分配置是针对 Azure AI Search 的说明;同一模型这一点是该节写明的。模型不一致造成的未命中,不靠把段落切短来修。
文件没有写的题,答复应写未找到
准备阶段写明,要同时收集文件答得了的题,和文件没有写到的题。测试时,尤其是测试语言模型时,要确定数据不足以回答时系统怎样回应。该页列出的做法是:说明自己不知道答案,或说明不知道并给一个可能找到更多资料的链接。
题目集里的负面题,预期就是未找到。系统若写出一段上下文里没有的话,这一题记成未命中,即使读起来完整。不把这段话补进文件来迁就错误的答复。若业务上确实要有依据,由该题目的负责人写进现行文件、更新题目集的出处,再重测。在这之前,答复只保留未找到。
没有出处的题不拿来验
题目集里每一行都要有文件、页码和原文。缺了出处,这一题只留在收集表,不拿来计算命中。只有问题、没有可接受的答,同样留在收集表,等负责人写上答案再移入题目集。移入之前不拿它计算命中率。
及格分数、题目数量和模型名称的排序留在公司自己的记录,并注明日期。上述页面没有指定题目要有几则,也没有比较哪一家模型较准。题目集可以用之前,用三件事看:每题是否有出处和可接受的答、命中与否是否连同停用版本一起记、送出前是否对过引用。三件事都在记录上,才用这套题目说检索有没有达到这次要的结果。
