62|评测与优化:命中率与引用正确性回归

📅 2026/6/30 15:18:06
62|评测与优化:命中率与引用正确性回归
在上一篇我们的 RAG 问答机器人终于能像模像样地输出带有“参考文献角标”的答案了。你把这个系统发给了公司的 10 个同事内测。半天后群里炸锅了销售小王“我问休假制度它怎么把去年的作废版本翻出来了”财务李姐“我问打车报销上限它说 150 元点开引用链接一看原文写的是 200 元啊它在瞎编”这在 RAG 项目初期是极其正常的。如果你不做量化评测你永远不知道系统是哪里出了毛病。本篇是项目 B 的收官之作我们将把卷 6 讲过的评测理论落地成真实的代码测试集。1. 揪出内鬼到底是“搜错了”还是“编瞎话”RAG 报错只有两种可能必须分开评测否则你不知道该去改哪里的代码检索阶段拉胯命中率低向量数据库根本没把正确的资料捞出来。这时候大模型如果强答必然是胡编。优化方向去改切分 Chunk 的大小、加元数据过滤比如过滤掉旧年份、引入重排模型Reranker。生成阶段拉胯引用正确性低正确的资料明明已经喂给大模型了但它就是视而不见或者断章取义。优化方向去改 System Prompt换个更聪明的基座模型或者把 Temperature 调成 0降低随机性。2. 建立“金标集Golden Dataset”我们要写一个eval_dataset.json里面放 20 个极具代表性的内测问题。每一个问题都必须由人类比如你人工标出“绝对正确的答案”和“必须命中的文档 ID”。[{question:晚上 9 点后打车报销上限是多少,ground_truth_answer:单次上限 200 元。,must_retrieve_chunk_id:chunk_reimburse_2024_012},{question:公司发中秋节月饼吗,ground_truth_answer:抱歉知识库中没有关于中秋节月饼的规定。,must_retrieve_chunk_id:null}]3. 本篇产出RAG 评测集与指标看板定义有了测试集我们就可以写一段 Python 脚本循环把这 20 个问题发给我们的 RAG 系统。然后收集系统的返回结果使用以下三个核心指标进行自动化打分可以使用Ragas或TruLens等开源框架或者直接用 GPT-4 作为裁判来打分。将这三个指标做成一个仪表盘Dashboard每次修改代码后跑一遍分数必须只能升不能降核心指标 1检索命中率 (Context Recall)含义系统捞出来的 Top 5 个 Chunk 中是否包含了金标里的must_retrieve_chunk_id及格线 85%如果不及格别去改 Prompt赶紧去优化你的 Embedding 模型和 Chunk 切分策略核心指标 2引用忠实度 (Faithfulness)含义大模型最后生成的answer是不是 100% 都能从捞回来的 Chunk 中找到依据即有没有夹带私货瞎编。打分法让 GPT-4 当裁判“请对比 Chunk 和 AnswerAnswer 中是否有任何 Chunk 未提及的事实如果有打 0 分。”及格线 95%对幻觉零容忍如果不及格去修改 System Prompt加粗加红警告模型“严禁使用内部知识”。核心指标 3答案相关性 (Answer Relevance)含义大模型的回答有没有解决用户的question是不是在答非所问打分法让 GPT-4 裁判比对系统的answer和金标里的ground_truth_answer。及格线 80%4. 优化闭环Regression Loop当你发现“引用忠实度”只有 70% 时你决定把基座模型从便宜的 Llama-3 换成昂贵的 GPT-4o。换完之后你只需敲一行命令python run_eval.py。5 分钟后新的看板出来了检索命中率85% - 85%没变因为检索逻辑没改。引用忠实度70% - 98%大幅提升模型没幻觉了。你长舒一口气这时候你才可以自信地把新代码合并到主分支Master发布上线。总结与复盘项目 B 收官恭喜你在项目 B个人知识库问答RAG中你亲手搭出了一个工业级的知识引擎[第60篇] 数据接入你学会了用 Markdown 结构切分文档并注入了极其重要的 Metadata元数据。[第61篇] 结构化生成你用 JSON Schema 逼迫大模型交出了带引用角标的答案让每一句话都可被追溯。[第62篇] 评测与优化你告别了玄学调参用“命中率”和“忠实度”的数据看板让系统的每一次迭代都踏踏实实。这套 RAG 架构无论你是给公司做内网知识库还是做智能客服都是绝对的底层通解。下一步去哪儿现在我们的 AI 已经拥有了最强大脑和海量知识。但它依然只是个“会说话的书呆子”。如果用户对它说“去帮我查一下昨天服务器的日志把报错的行数发邮件给研发总监。” 书呆子就懵了。为了让 AI 拥有“手脚”真正替我们去打工接下来的项目 C多步骤自动化助手Agent 工具我们将带你打造一个全自动的赛博黑工