沈毅全栈与 AI

巴黎 • 新加坡 • 上海

RAG Formation · 第 4 课 · 基础与衡量

确立 MVP 基线

运行一次实时评估,用工程师的方式解读报告,而不是只看宣传数字。

$ lesson --status
▸ course RAG Formation
▸ lesson 04 / 16
▸ phase 基础与衡量
▸ status 已完成
● build → measure → learn

独立课程

在这里学习完整课程并检验你的理解。

RAG Formation 的 16 节课程内容已完成。本页包含完整课程内容、本地参考资料和可直接在浏览器中完成的即时练习。

本课的具体收获

学完今天的内容,你会拿到一份脱敏 Meridian Labs 系统全新的实时基线,也能准确说清它证明了什么,以及同样重要的——它没有证明什么。

观看讲解视频

1 · 安全第一:使用隔离演示环境

所有命令都要从演示目录运行,不要从 api 目录运行:

cd demo

演示堆栈完全隔离:服务名、端口、集合、工作区和数据目录各自独立。它只读取演示配置和一个演示 API key 文件。永远不要打印或打开保存密钥的环境文件。

开始之前,再确认以下事项:

  • Docker 正在运行。
  • 演示 API key 文件存在,并且确实包含密钥。
  • 端口 8000 没有被生产项目占用。

2 · 运行基线流程

先运行离线检查:

python3 eval.py verify
python3 test_scoring.py

启动隔离堆栈:

python3 setup_demo.py up

随时可以这样检查状态:

python3 setup_demo.py status

现在为合成语料建立索引:

python3 setup_demo.py ingest

导入不会立即完成——图谱索引和摘要索引都要调用 LLM,所以要留出实际运行时间。如果语料库已经建立索引并且你想保留它,请谨慎使用文档中说明的选项。不要随意清除生产数据。

3 · 先测检索,再测答案

先运行只检索的评估——它完全跳过 LLM 评审:

python3 eval.py run   --mode retrieval   --workspace meridian_demo   --tag lesson-4-retrieval

你会准确看到每个索引在哪些方面发挥作用:

  • 仅向量检索
  • 向量检索加全文检索
  • 向量检索加全文检索加摘要
  • 所有索引,包括近似图谱匹配

4 · 测量生成答案

接下来运行答案评估:

python3 eval.py run   --mode answer   --workspace meridian_demo   --tag lesson-4-answer

这次运行会调用 /api/v1/qa,检查引用和必需关键词,并让评审模型把每个答案分为 correctpartialincorrect。同时还会记录拒答和延迟。

第一次运行时,可以限制样本数量:

python3 eval.py run   --mode both   --workspace meridian_demo   --limit 10   --tag lesson-4-smoke

5 · 像工程师一样阅读报告

报告位于:

demo/reports/

不要脱离定义引用任何数字。记录下面这些内容:

指标你的数值含义
检索并集_____在合并后的索引中找到的全部预期来源
严格准确率_____评审结果为 correct
来源命中率_____最终答案引用了每一个预期来源
拒答准确率_____不可回答问题被正确拒答
幻觉率_____不可回答问题仍然得到答案
延迟 p50 / p95_____典型响应时间和慢尾响应时间

6 · 练习:基线还是过度宣称?

陈述 A:“在 65 道题的 Meridian Labs 评估集上,使用 gpt-4o-mini、topk 5,并在当前工作区运行,严格答案准确率是 70%。”这算是一条扎实的基线陈述吗?

陈述 B:“这个聊天机器人准确率是 70%。”这句话可以写进技术报告吗?

陈述 C:检索并集很高,但严格答案准确率很低。下一步应该查哪里?

企业场景连接

QA 或法规团队无法使用一个既不能解释又不能复现的数字。基线让原型保持诚实:它揭示哪些地方有效、哪些地方无效,也能说明下一次改动是否真的产生了影响。

下一步行动

至少同时运行检索评估和答案评估,然后发给我:

  1. 两份报告的标签。
  2. 检索并集百分比。
  3. 严格答案准确率。
  4. 来源命中率。
  5. 拒答准确率和幻觉率。
  6. 一个你想优先深入排查的失败案例,以及评审理由。

如果 Docker、导入、评审器或某个指标让你困惑,随时提问。 在我们把第 4 课标记完成前,我会帮你理解实时数据。