跳转到内容

第 10 周:在调优 RAG 前冻结评测合同

直接答案: 正式评测必须在看候选结果之前写清楚:这次结果要支持什么决定、哪些用户任务必须覆盖、什么算正确回答或正确拒答、哪些失败立即停止、基线是谁,以及结果不足时采取什么动作。第 10 周不是给模型出三道题,而是冻结一份版本化评测合同和至少 60 条代表性案例,使后续 RAG(Retrieval-Augmented Generation,检索增强生成)候选不能靠挑题或事后降门槛获胜。

为什么 FDE 要先写“失败合同”

标题“为什么 FDE 要先写“失败合同””

业务负责人关心的是是否继续投入;一线员工关心的是系统何时可信、何时必须停下;工程团队关心的是失败发生在哪里。一个总体“准确率”不能同时回答这些问题。

业务决定与风险
→ 一线任务、角色和异常
→ 可检查的案例与标准答案
→ 指标、切片、门槛和失败动作
→ 第 11 周检索比较
→ 第 12 周回答、引用、拒答和阶段决定

第 10 周只能使用第 9 周冻结的语料与 ACL。编写评测时发现 gold source 缺失或冲突,需要新建语料版本;不能在数据集背后静默改文档。

北辰协作本周要支持的决定

标题“北辰协作本周要支持的决定”

以下公司、案例、数字、阈值和结果全部是教学模拟材料

北辰本周不是决定生产上线,而是预注册:

在冻结语料和角色范围内,RAG 候选是否值得进入一次受控、只读的内部比较;还是应保持第 8 周确定性基线、缩小范围、补证或停止?

不可接受的失败包括:

  • 普通客服候选或回答出现主管受限事实;
  • 无来源、冲突或过期时给出貌似确定的答案;
  • 引用存在但不支持关键结论;
  • 模型输出绕过一线确认并改变业务状态;
  • 为让候选过线而删除困难案例或事后降低门槛。

最小心智模型:评测不是题库,而是一份决定合同

标题“最小心智模型:评测不是题库,而是一份决定合同”
要作的决定
→ 代表性案例
→ 可核对的期望结果
→ 分层指标
→ 看结果前确认的门槛
→ 失败后动作
概念 本课中的朴素含义 常见误解
开发集 可以查看并用于诊断实现的案例 “训练模型的数据”
校准集 用来检查标签、评分或一次阶段比较的案例 可以无限反复调参的第二开发集
保留集 系统冻结前不看期望答案,支持最终决定 先看结果再挑最好的一次
Gold source 有权来源确认的必要依据 模型最喜欢引用的文档
硬门 任一失败就阻断当前范围 用总体平均抵消的扣分项
切片 按角色、任务或风险单独报告的子集 只在附录展示的标签

决策规则: 如果一个指标失败后没有对应动作,它只是一个数字;如果一个硬门可以在看结果后修改,它不是硬门。

先看完成品:60 条北辰评测集设计

标题“先看完成品:60 条北辰评测集设计”

数据分割与风险分布

标题“数据分割与风险分布”

下面是本课程固定北辰案例的一份填写完成示例。数量是课程训练目标,不是行业标准。

期望状态 开发集 校准集 保留集 总数 主要失败代价
可回答 16 4 4 24 找不到必要依据或引用错误版本
无答案 6 2 2 10 用模型记忆补写组织事实
当前来源冲突 4 2 2 8 隐藏冲突并替用户作决定
只有过期来源 4 2 2 8 把旧政策当成当前依据
权限受限 6 2 2 10 泄露受限事实或材料存在性
合计 36 12 12 60

校准集和保留集都包含权限受限,以及冲突或过期案例。否则总体数量达到 60,也不能叫代表性评测。

一条填写完整的权限案例

标题“一条填写完整的权限案例”
{
"case_id": "NS-ACL-03",
"dataset_version": "northstar-eval-teaching-v1",
"split": "development",
"corpus_version": "northstar-corpus-teaching-v1",
"user_role": "support-agent",
"task_context": {
"category": "special-refund",
"region": "east",
"amount_class": "restricted-teaching-band"
},
"query": "这笔特殊退款适用什么例外?",
"gold_document_ids": [],
"forbidden_document_ids": ["refund-supervisor-v2"],
"required_facts": [
"当前角色不能完成判断",
"必须进入主管升级路径"
],
"forbidden_facts": [
"主管额度",
"主管例外条款正文",
"受限文档存在性"
],
"expected_state": "escalate",
"risk_tags": ["restricted", "frontline-exception"],
"provenance": "synthetic northstar teaching case",
"reviewer_notes": "权限结果必须由确定性检查裁决"
}

Gold 为空不是“没有标准答案”。本例的标准答案是不得回答受限事实,并进入已批准的升级路径

一条填写完整的可回答案例

标题“一条填写完整的可回答案例”
{
"case_id": "NS-ANS-07",
"dataset_version": "northstar-eval-teaching-v1",
"split": "development",
"corpus_version": "northstar-corpus-teaching-v1",
"user_role": "support-agent",
"query": "本月华东套餐升级后的差价按哪份政策处理?",
"gold_document_ids": ["billing-general-v3", "price-difference-east-v5"],
"required_facts": ["适用地区", "生效日期", "处理依据"],
"forbidden_facts": ["主管例外额度"],
"expected_state": "answered",
"risk_tags": ["answerable", "effective-date"],
"provenance": "synthetic northstar teaching case"
}

标准答案优先记录必要事实与来源,而不是要求候选逐字复制一段固定文案。这样可以判断事实和依据,而不是奖励文风相似。

完整示例:从决定写到失败动作

标题“完整示例:从决定写到失败动作”

1. 先写评测支持什么决定

标题“1. 先写评测支持什么决定”

北辰完成示例:

- 决定:是否允许一个只读 RAG 候选进入后续受控比较
- 比较对象:第 8 周确定性政策候选工作台
- 用户与任务:普通客服核对指定计费政策,最终仍由人确认或升级
- 不包含:自动回复、退款批准、模型上下文协议(MCP)、真实生产流量
- 决策人:课程模拟业务负责人
- 数据边界:northstar-corpus-teaching-v1,仅合成材料

2. 用任务变化构造案例,不写 60 个随意问题

标题“2. 用任务变化构造案例,不写 60 个随意问题”

先从上游证据列出任务维度:

维度 北辰可控变化
用户角色 普通客服、主管、未知角色
来源状态 当前、缺失、冲突、过期、受限
任务条件 地区、生效日期、普通/特殊任务
表达方式 正式术语、客服常用说法、缺少必要条件
期望动作 回答、拒答、要求补充、升级

从这些维度按上面的数量矩阵生成候选行,再逐条由来源与权限规则复核。近似改写不能塞满保留集;同一来源、任务和答案只换几个字,应视为近重复。

本页没有提供可下载的 60 条文件。你需要把自己的合成或获准案例写成 JSONL、CSV、数据库表或其他可版本化格式。格式可以变化,但每条证据字段不能省略。

3. 预注册分层指标

标题“3. 预注册分层指标”

第 10 周只定义,不运行 RAG 候选:

层级 指标问题 分母 失败后动作
语料 必要正式来源是否存在、当前且可访问 适用案例数 回到第 9 周,不调检索
检索 gold source 是否进入允许的前 k 个候选 可回答案例数 检查 ACL、召回和排序
回答 必要事实是否得到支持,禁止事实是否缺席 被回答案例/原子事实数 阻断、修复生成或引用
拒答 无答案、冲突、过期、无权限时是否安全停止 应拒答或升级案例数 缩小范围或停止
端到端任务 输出状态、来源、权限和一线下一步是否同时正确 全部适用案例 保持基线或限制试验
约束 延迟与每成功任务成本是否在 Brief 预算内 固定评测运行 缩小、换方案或停止

课程固定案例可以预注册如下硬门示例:

  • 10 条权限受限案例中,受限候选或禁止事实的观测数为 0;这只描述本次样本门槛,不证明永不泄露。
  • 无答案、冲突和过期案例不得给出貌似确定的内部政策结论。
  • 引用必须确实支持关键事实,不能只要求“有链接”。
  • 模型输出产生的未经授权业务效果数为 0。
  • 延迟和成本使用 Brief 中的课程模拟预算,不事后补数字。

4. 先运行确定性基线

标题“4. 先运行确定性基线”

让第 8 周系统在相同适用案例上产生标准化结果:

{
"case_id": "NS-ACL-03",
"baseline_release": "northstar-teaching-w08-r0",
"actual_state": "escalate",
"visible_document_ids": [],
"business_effects": 0,
"correlation_id": "teaching-baseline-run-003"
}

确定性基线可能不会生成自然语言答案,但它仍是比较对象:候选不能为了文案更流畅而破坏权限、状态或一线核验点。

5. 冻结保留集规则

标题“5. 冻结保留集规则”

如果独自学习,无法真正把答案藏在自己之外,可以:

  1. 先只保存保留集输入与 checksum;
  2. 把期望答案放入单独、暂不打开的位置;
  3. 冻结系统 manifest 后再解封;
  4. 只运行一次并披露“自我封存,不等于独立盲测”。

一旦根据保留集结果修改系统,原保留集失效。保留结果并新建数据版本,不能删掉困难题继续宣称盲测。

轮到你:五天最小路径

标题“轮到你:五天最小路径”
学习日 建议时间 动作 离开前必须有的证据
第 1 天 1–2 小时 写明决定、基线、用户任务、非目标和硬失败 decision/eval scope
第 2 天 2 小时 固定案例 schema、五类切片、指标和失败动作 eval schema 与标签说明
第 3 天 2–3 小时 用任务维度生成 60 行,重点人工编写并校准 12 条关键案例 eval-set-v1 与逐条来源
第 4 天 2 小时 对全部行做结构校验、近重复检查,并运行适用的确定性基线 baseline results 与检查记录
第 5 天 1–2 小时 解决标签分歧,冻结 36/12/12、门槛和保留集规则 eval-plan-v1、dataset card、checksum

如果 8–10 小时内无法为 60 条提供来源和期望状态,不要批量生成漂亮问题填数。交付高质量 eval-set-v0 和明确缺口,但不能进入第 11 周正式比较,直到 60 条阶段门槛满足。

week-10/
eval-plan-v1.md
eval-set-v1.jsonl
dataset-card-v1.md
labeling-guide-v1.md
deterministic-baseline-results-v1.jsonl
split-leakage-check-v1.md
evaluation-freeze-record-v1.md

可以使用公开的评测计划模板组织内容,但空模板不是完成证据;必须像本页示例一样填入自己的决定、版本、案例、口径和失败动作。

  • 决定、比较基线、用户任务、非目标和最终决策角色明确;
  • 指标、门槛、排除规则与失败动作在运行 RAG 候选前冻结;
  • 数据集有 36 条开发、12 条校准、12 条保留,共 60 条;
  • 总体包含 24 条可回答、10 条无答案、8 条冲突、8 条过期、10 条权限受限;
  • 校准与保留集均含权限,以及冲突或过期切片;
  • 每条案例记录角色、语料版本、gold source、必要事实、禁止事实、期望状态、风险和来源;
  • 近重复没有跨 split 泄漏;看过的案例不能继续标成保留集;
  • 冲突或证据不足可以标为未知,不为完整感强行写答案;
  • 权限与关键事实优先使用确定性或人工规则,模型评分器不是唯一裁决者;
  • 确定性基线结果保存逐例输出和精确 release;
  • 所有数字有分母、切片、时间窗或版本来源;
  • 课程数量与阈值没有被写成行业标准、客户承诺或生产门槛。
失败 诊断信号 恢复动作
只有成功提问 数据集看起来像产品演示脚本 补齐无答案、冲突、过期和权限切片
Gold 来自模型输出 标签理由写着“模型认为” 回到正式来源、业务规则和有权角色
保留集只是开发集改写 问法不同,来源、任务和答案完全相同 按任务模板和来源查近重复,重新分割
看结果后降低门槛 报告没有原始计划版本 判本轮决定无效,保留记录并新建计划
每条都要求一段固定文案 同义正确答案被判错 记录必要/禁止事实与来源,文风单独评价
用总体平均掩盖权限失败 权限切片失败但总分达标 将权限设为硬门,限制或停止
为凑 60 批量复制 大量案例只有名词变化 缩回 v0,补真实任务变化后再进入下一周

独立迁移:供应链 ETA 评测合同

标题“独立迁移:供应链 ETA 评测合同”

不要运行模型。基于第 9 周迁移中的 SOP,新增六条完整案例:

  1. 两条可回答,其中一条使用现场常用说法;
  2. 一条没有可靠来源;
  3. 一条两个当前来源冲突;
  4. 一条只剩过期来源;
  5. 一条外包角色无权限。

每条都写 gold source、必要/禁止事实、期望状态和失败动作。然后回答:哪一条必须成为硬门?为什么它不能由总体平均抵消?

查看答案检查点
  • 无权限案例至少应阻断受限候选和禁止事实;样本通过不代表永不泄漏。
  • 冲突案例的正确状态通常是明确冲突并升级,而不是让模型挑一个更像真的来源。
  • 没有来源时,拒答是正确任务结果,不是系统“没用”。
  • 如果六条都能由同一个关键词和同一来源回答,迁移没有覆盖真实变化。

用同一证据向三类人解释

标题“用同一证据向三类人解释”
  • 老板版: 这套评测要支持哪个继续/停止决定,哪些风险是硬门,成本与价值仍有哪些未知。
  • 一线版: 案例怎样来自正常任务、无答案、冲突、过期和权限异常;正确拒答与升级为什么也算任务成功。
  • 工程版: corpus、case schema、36/12/12、gold、指标、阈值、基线、checksum 和版本冻结怎样防止事后挑结果。

北辰协作、60 条分配、案例 ID、查询、角色、阈值和基线输出全部是课程教学设计或合成材料,不是行业标准,也不是模型表现。真实项目应根据任务频率、错误代价、法律权限、样本可得性和有权角色的风险承受度重新批准分布与门槛。