Exit code: 0 Wall time: 0.2 seconds Output:
检索返回的是候选,不是答案.生成层需要判断候选是否覆盖问题,如何在 token 预算内组织证据,哪些命题可由哪些来源支持,以及证据不足时如何不把模型参数中的猜测伪装成文档结论.
职责边界
本页负责:候选去噪,证据打包,生成契约,命题—证据对齐,引用定位,冲突表达和拒答.完整的角色优先级,token 预算,历史压缩,工具结果信任与 Prompt Injection 边界见上下文工程;这里不重复其全文.
本页也不证明来源本身真实.回答可以"忠实于一份错误文档".来源权威性,当前版本和权限见语料治理.
为什么正确候选仍可能生成错误回答
给定问题 ,证据集合 和模型参数 ,生成模型仍按条件分布产生答案:
把正确证据放进上下文只改变条件,不施加逻辑保证.模型仍可能:
- 忽略证据中的否定,单位,时间或例外;
- 把两个来源中的主体,版本或口径错误合并;
- 用参数记忆补齐证据没有说的细节;
- 引用相关段落,却让引用不支持紧邻命题;
- 在证据互相冲突时选择一方而不披露;
- 因位置,长度和干扰文本而未使用关键片段.
因此"上下文准确 → 回答正确"是错误命题.需要分别测证据覆盖,回答正确,命题支持和引用质量.
上下文单元:从裸文本升级为证据包
送给模型的每个证据单元至少包含:
evidence_id: 本次请求内不可混淆的短 ID
source_id + source_version: 权威源和固定版本
locator: 页/节/段/表格行/记录主键
title + date + valid_time: 供消歧与时效判断
content: 未改变语义的片段或明确标注的摘录
trust/authority: 应用定义的来源类别,不是模型猜测
permission_scope: 服务端已验证,通常不把敏感 ACL 明文交给模型
retrieval_trace: 检索与重排分数留在日志,不应被当作事实可信度
retrieval_score 衡量的是某个检索器下的相关性信号,不等于来源权威性,事实正确性或回答置信度.
候选到上下文的决策流程
1 先做确定性检查
- 再次确认授权,租户,有效期和撤回状态;
- 按逻辑来源,版本和位置去重;
- 丢弃空片段,解析异常,只含导航或明显不完整的表格行;
- 把同一条款的标题,定义和例外恢复成可理解的邻接范围;
- 标记来源冲突,时间冲突和同名实体,而不是静默合并.
2 再做证据覆盖检查
把问题分成必须回答的槽位.例如"比较 A 与 B 在 2025 年的收入并说明来源"至少需要 A 的数值与口径,B 的数值与口径,共同时间范围和可打开来源.若缺一方,候选总相似度再高也不算覆盖.
这可以由规则,结构化查询或模型辅助完成,但覆盖判定器自身也要评测.不要让同一个生成模型既自由补齐缺口,又自评"证据充分".
3 在预算内选择多样而非重复的证据
上下文选择是受预算约束的集合问题:
这是工程抽象,不是统一算法. 来自实际模型,提示,历史与输出预留,完整预算见上下文工程.
4 顺序也要实验
把最关键证据固定放在开头并不总是最优,但随机拼接更不可控.Liu 等人的 "Lost in the Middle" 在指定多文档 QA 与键值检索实验中观察到长上下文对中间位置相关信息的使用下降;它提示我们评测位置敏感性,不证明所有模型都遵循同一曲线.Lost in the Middle
可比较:按问题槽位分组,按来源/时间排序,关键证据前置,关键证据前后镜像,以及只保留必要证据.保存实际序列化后的上下文快照.
生成契约
自然语言提示之外,运行时应尽量使用结构化输出和验证.一个可测试契约可要求:
{
"answer": "...",
"claims": [
{"text": "...", "evidence_ids": ["E2"], "status": "supported"}
],
"conflicts": [],
"abstention": {"is_abstained": false, "reason_code": null}
}
工程要求:
- 外部证据按应用契约视为数据;模型外的授权,工具策略,参数校验与输出验证实施强隔离;
- 只允许引用服务端提供的
evidence_id; - 关键数字,日期,主体和条件逐命题绑定证据;
- 推断必须标"由证据推得",不能伪装成原文直述;
- 证据冲突时列出各方与版本,不自行挑选"更顺眼"的答案;
- 没有覆盖时输出固定拒答码,而不是写一段委婉猜测;
- 服务端验证 schema,证据 ID,权限与引用定位,不能只靠模型遵守.
引用是可定位关系,不是装饰
6.1 三个不同问题
- 引用有效性:ID 能否解析到本次允许访问的源版本和位置?
- 引用正确性:被引证据是否支持紧邻命题?
- 引用完整性:需要证据的重要命题是否都有支持?
引用正确不等于答案正确:一份来源可能过时或错误.引用完整也不等于简洁:大量重复引用可能掩盖缺失的关键证据.
ALCE 把端到端检索,生成和引用作为共同评测对象,并区分流畅性,正确性与引用质量;其论文在指定数据集和模型上的结果也显示当时系统仍有明显引用覆盖缺口.ALCE 论文
6.2 稳定定位
公开网页的行号和标题会变化.优先保存:
- 固定源版本或抓取时间;
- 页码,节名,段落锚点,表格行/列或数据库主键;
- 原始范围的内容哈希;
- 可供授权用户打开的链接;
- 展示时由服务端把
evidence_id渲染成引用,不让模型生成任意 URL.
如果只能引用动态页面,应在 UI 显示"访问时间/版本未知",并允许用户查看本次使用的受控摘录.
6.3 命题—证据矩阵
对答案拆出原子命题 ,令 表示证据 支持命题 .可以据此计算有支持命题比例,但"支持"判定可能来自人工,NLI 或 LLM judge,必须报告判定器和不确定性.
| 命题类型 | 是否通常需要引用 |
|---|---|
| 从语料读取的事实,数字,日期,定义 | 是 |
| 多来源比较与归纳 | 每个关键分项及推断链都需要 |
| 明确标出的工程建议 | 引用依据;同时标为建议而非来源原话 |
| 常识性连接词或回答结构 | 通常不需要 |
冲突不是噪声
证据冲突时先判断:
- 是否是不同时间或版本;
- 是否是不同实体,地区,指标分母或统计口径;
- 是否有权威层级或更正/撤回关系;
- 是否只是解析错误;
- 当前问题是否允许并列呈现差异.
无法消解时,输出"来源 A(版本/日期)称...;来源 B 称...;现有证据不足以确定",并引用两边.不得用检索分数决定事实真伪.
拒答与降级
8.1 拒答原因要可诊断
建议区分:
| 原因码 | 含义 | 可选下一步 |
|---|---|---|
OUT_OF_SCOPE |
不在已批准语料或任务范围 | 改问范围内问题或使用其他工具 |
NO_EVIDENCE |
没召回可用证据 | 改写查询,扩大来源或人工搜索 |
PARTIAL_EVIDENCE |
只覆盖部分槽位 | 回答已支持部分并明确缺口 |
CONFLICTING_EVIDENCE |
来源冲突且无法消解 | 展示冲突并请求时间/口径 |
STALE_OR_WITHDRAWN |
只有过期/撤回版本 | 等待更新或转人工 |
NOT_AUTHORIZED |
调用者无权访问 | 不透露是否存在敏感文档 |
UNSAFE_INPUT |
检索内容或请求触发安全边界 | 进入安全处理流程 |
SYSTEM_FAILURE |
检索/权限/模型依赖不可用 | 失败关闭,重试或转人工 |
"没有权限"和"没有文档"在用户界面上可能需要相同模糊响应,避免存在性泄漏;内部日志仍要区分.
8.2 不要用单一相似度阈值冒充置信度
拒答可以组合候选覆盖,来源状态,重排间隔,答案命题支持,冲突和任务风险,但阈值必须在留出集调校.检索相似度因查询和模型而变,不能直接当回答概率.
在可回答与不可回答样本上报告:
- 可回答问题的回答准确率与错误拒答率;
- 不可回答问题的正确拒答率与错误作答率;
- 风险加权成本,而不只报总准确率;
- 阈值变化下的覆盖—风险曲线.
SQuAD 2.0 原论文把不可回答问题加入阅读理解评测,并要求系统判断何时无答案;它不是 RAG 生产基准,但说明"回答正确"和"识别无答案"需要同时评测.SQuAD 2.0
8.3 部分回答
对低风险任务,可返回"证据支持的部分 + 明确缺失项";对医疗,法律,财务执行等高风险任务,是否允许部分回答由产品与专业政策决定.模型不能自行扩大授权.
生成后的验证
至少做下面的确定性验证:
- JSON/schema 与字段长度;
- 引用 ID 都来自本次授权证据;
- 引用 URL 由服务端映射,禁止任意协议;
- 数字,日期,单位和实体是否能在对应证据中定位;
- 拒答时不得同时输出未经支持的答案;
- 敏感字段,秘密和内部权限元数据不得出现在输出;
- 输出被下游执行前经过独立授权与参数校验.
命题支持判定可用第二模型辅助,但它是有误差的测量工具.RAGAS 论文提出无需人工参考答案的一组自动指标;当前官方实现的 faithfulness 会先拆陈述再用模型判定上下文蕴含.自动化适合扩大回归覆盖,不能替代带人工标注的校准集.RAGAS 论文;RAGAS 官方实现
典型失败模式
| 失败 | 症状 | 修复方向 |
|---|---|---|
| 证据堆积 | 回答被无关片段带偏 | 提高精排,覆盖选择与去重,不只缩短 prompt |
| 引用漂移 | 引用相关但不支持具体句子 | 原子命题对齐,缩小证据范围,服务端验证 |
| 旧知识覆盖新证据 | 模型坚持参数记忆 | 明确证据优先契约,冲突测试,换模型/解码策略 |
| 合并口径 | 不同年份/单位被并成一个结论 | 在证据包保留时间和单位,结构化比较 |
| 过度拒答 | 有证据也不回答 | 分析覆盖判定器,阈值和不可答训练分布 |
| 冒险作答 | 无证据时继续猜 | 固定原因码,风险加权阈值,拒答回归集 |
| 位置敏感 | 换顺序答案改变 | 位置消融,减少噪声,分步综合 |
| 间接注入 | 文档文字改变模型规则或诱导工具 | 外部内容标为数据,隔离工具权限,见下一页 |
可复现实验
11.1 数据集
构建四类样本:可直接回答,多证据/比较,部分证据,不可回答/冲突.每条保存必需证据 ID,允许的等价答案,关键命题,应拒答原因和风险等级.
11.2 消融
固定检索候选,比较:
- 原始 top-k 拼接;
- 去重与邻接恢复;
- 槽位覆盖选择;
- 不同证据顺序;
- 加入结构化 claim/citation 输出;
- 加入生成后验证与拒答门.
分别报告答案任务指标,命题支持,引用正确/完整,冲突披露,拒答混淆矩阵,输出 token,P95 延迟与解析失败率.每次运行固定模型快照,提示版本,证据顺序,解码参数和上下文序列化.
11.3 人工审查样本
自动判定器至少用一批双人标注样本校准.记录分歧,裁决原则与 judge 版本;否则"faithfulness 上升"可能只是评审模型变化.
上线检查表
- 每个证据单元有固定版本,位置和请求内 ID.
- 检索分数没有被当作来源可信度或回答概率.
- 上下文选择覆盖问题槽位,并去除重复和无授权内容.
- 关键数字,日期,主体,条件和推断逐命题绑定证据.
- 引用由服务端解析,用户可打开获准访问的原文位置.
- 来源冲突不会被静默合并或按相似度裁决.
- 不可回答,部分证据,冲突,过期,无权限和系统故障有独立原因码.
- 拒答阈值在留出集按风险校准,不使用万能相似度阈值.
- 生成后做 schema,引用,敏感信息与执行权限验证.
- 自动 judge 已用人工样本校准,版本变化会触发重评.
一手资料怎样约束生成协议
- Lewis et al., Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, 2020.
- Liu et al., Lost in the Middle, 2023/2024.
- Gao et al., Enabling Large Language Models to Generate Text with Citations (ALCE), 2023.
- Rajpurkar et al., Know What You Don't Know: Unanswerable Questions for SQuAD, 2018.
- Es et al., RAGAS, 2023.
- RAGAS, 官方实现.
逐命题验证的完整走查
14.1. 从回答文本得到命题
假设回答为「A 制度自 2026 年 4 月起允许远程审批, 单笔超过 10 万元仍需线下复核」. 这句话至少拆成两个命题: 生效时间与远程审批许可, 以及金额阈值与复核方式. 若第一条来自修订通知, 第二条来自实施细则, 只在句末放一个引用无法表示支持范围. 输出协议可以让模型在每个事实子句后标证据 ID, 服务端再合并连续使用同一来源的标记.
命题切分不能丢掉限定语.「允许远程审批」和「自 2026 年 4 月起允许远程审批」含义不同;「超过 10 万元」中的比较方向和单位也属于命题. 自动切分器可生成候选, 关键样本仍需人工校准. 粒度过粗时一条证据只能支持其中一半, 粒度过细则让引用密度过高.
14.2. 支持矩阵怎样判
对每个命题与引用证据, 先做确定性字段检查, 再做语义支持检查. 版本、生效时间、实体 ID 和数值单位可以由结构字段判断. 语义检查区分直接陈述、多证据推出、仅主题相关和明确矛盾. 多跳结论允许一组证据共同支持, 推导步骤仍要可复算.
例如 写修订版的生效时间, 写修订版增加远程审批, 两者共同支持第一条命题. 若 只写「大额申请需复核」而没有阈值, 它不能完整支持第二条. 检查器输出缺失字段, 可以触发补检索或将回答改成证据能够承担的较弱表述.
拒答校准与部分回答
15.1. 混淆矩阵
设真实可答性为 , 系统决策为 . 是错误拒答, 是无据回答. 两类错误成本通常不同, 阈值应在业务验证集上按代价选择. 只报告拒答准确率会掩盖系统把大部分问题都拒掉的退化.
可答性标签绑定语料快照. 今天无答案的问题在新文档进入后可能可答. 回归集保留历史快照, 既测当前行为, 也确认旧索引不会混入新知识. 权限导致的不可答还要避免通过措辞暴露隐藏来源存在.
15.2. 部分支持怎样表达
比较问题可能只有一方证据, 多条件问题可能只找到部分字段. 系统可以回答已支持部分, 同时明确缺少哪一项, 无需在完整回答与整句拒答之间二选一. 部分回答的每个事实仍需引用, 未确认槽位保持空缺.
部分回答同时评测已回答命题的精确率和所需槽位覆盖. 为追求覆盖而猜缺失字段会降低支持率;过度保守则降低覆盖. 风险—覆盖曲线比单一答案相似度更能反映产品取舍.
来源更新后的引用
16.1. 引用打开后应看到什么
引用链接应定位到实际支持区间, 不只打开文档首页. PDF 定位页和区域, 网页定位标题与段落锚点, 数据库结果显示查询快照和相关记录. 证据片段可为检索做规范化, 展示时仍回到原始排版, 方便发现表头丢失或 OCR 错误.
回答生成后, 来源可能更新或删除. 审计记录保存当时版本的受控引用, 当前界面提示来源已有新版本. 已撤回内容不能继续通过公开链接访问, 合规审计则按保留策略访问历史快照. 两类权限分开处理.
16.2. 缓存与版本
缓存回答需要验证来源版本. 缓存键包含语料或证据版本, 文档变更事件使相关缓存失效. 只按查询文本缓存会让旧引用在新版本上线后继续出现. 时效敏感问题还要把有效时间纳入条件.
引用验证结果也不能无限缓存. verifier 或来源版本变化后应重新计算. 服务端保留命题、证据 ID 和验证器版本, 使后续抽查能够复现当时判定.
17. 流式输出与验证顺序
17.1. 先验证还是先展示
流式输出降低首 token 延迟, 也可能把尚未验证的事实直接展示. 高风险系统可以先生成结构化草稿, 完成命题—证据检查后再渲染;另一种做法是按句缓存, 引用通过后发送. 两种方案都增加等待, 需要与风险目标一起评测.
若允许即时流式, 界面要区分生成中与已验证状态, 验证失败后不能悄悄改写已经展示的事实. 请求 trace 保存原始输出、修订动作和最终文本. 未验证文本不能直接成为工具参数.
17.2. 验证失败后的动作
无效引用由服务端拒绝;局部命题缺证据时, 可以删除该句、降低断言或触发补检索;关键结论缺证据则整体拒答. 动作选择写入规则, 不让生成模型自由忽略 verifier.
补检索使用缺失命题和原查询共同构造请求, 避免只围绕模型刚生成的错误事实搜索. 新证据进入后重新运行完整支持检查, 旧的通过结果也要确认未被冲突证据推翻.
18. 多轮引用维护
上一轮引用不能默认在下一轮仍然有效. 新问题可能改变时间、实体或权限, 文档也可能更新. 对话状态保存证据身份, 每轮根据当前请求重新判断. 用户说「刚才第二条」时, 系统解析到历史命题与来源, 仍执行当前权限检查.
对话摘要可以保留已确认事实与来源, 不能把未验证内容写成长期记忆. 证据更新后, 摘要中的旧事实标记失效并触发重新检索. 多轮 RAG 与记忆系统通过版本接口连接.
每轮回答保存实际使用的证据, 后续回指才能落到同一版本. 只保存自然语言摘要会丢失这一对应关系.
命题级验证把回答质量落到可观察关系上. 每次运行保存回答命题、引用位置、支持判断和拒答理由, 后续模型更新才能在同一证据包上复算差异. 命题—证据支持矩阵
把回答拆为命题 , 证据为 , 定义矩阵 . 命题 有支持当至少一组证据联合蕴含它, 同时不存在未解决的高优先级冲突. 单个片段主题相关只对应 neutral, 不能算支持.
例子中三个命题为“额度 800 元”“仅正式员工”“4 月生效”, 两份证据分别支持前两项和第三项. 支持矩阵的列覆盖为 [1,1,1], 引用完整. 若第一份证据只写“员工”, 第二命题应为 neutral; 模型把它扩成“正式员工”时, 答案可能碰巧正确, 引用 precision 仍下降.
支持覆盖按重要性加权: . 引用 precision 为有引用命题中真正受支持的比例. 两者分别惩罚漏引与错引, 不能用“答案含引用”一个布尔值替代.
拒答的风险校准
系统在回答与拒答间选择, 可令误答成本 , 误拒成本 . 若估计可回答概率为 , 回答期望损失为 , 拒答为 , 因而当 时回答. 高风险任务 , 阈值自然接近 1.
若误答成本 9、误拒成本 1, 阈值为 0.9. 校准集上预测 0.9 的样本若只有 70% 真正可答, 直接使用会产生过多误答. 可靠性图、Brier score 与分问题类型的 precision-recall 曲线用于选择阈值, 新语料域上线后重新校准.
冲突不是普通低置信. 两份有效权威来源分别支持相反命题时, 即使检索和支持分都高, 系统也应陈述来源、时间和适用范围, 或请求能够消解冲突的条件. 把两分数平均成中等置信再回答会隐藏真实分歧. 命题切分与 NLI 误差
命题切分要保留量词、否定、比较对象和条件. “上海正式员工自 4 月起可报销 800 元”可以拆为主体范围、生效时间和额度, 但三者共享同一适用关系. 若拆成“上海”“4 月”“800 元”三个短语, 任意主题片段都可能被误判支持.
NLI 验证器判断证据是否蕴含命题, 训练域通常是短句, 面对表格、法规和多段联合证据会漂移. 一段证据写“外包由供应商承担”, 命题“外包不可报销”可能需要业务规则才能推出; 验证器若只做词面匹配会判 neutral, 若过度常识推理又可能判错 entailment.
校准集按单段直接支持、多段联合支持、缺条件、反向否定和数值单位切片. 对高风险命题, NLI 只作筛查, 低置信或冲突进入更强 judge 或人工复核. judge 不得使用证据外知识补全支持链.
引用覆盖与正确性的联合指标
对命题权重 , 覆盖 , 正确性 . 调和平均 同时惩罚漏引和错引, 仍需单独报告 C、P, 因为相同 F 可来自不同风险.
四个命题权重 3、3、2、1, 三个有引用, 权重和为 8, 其中真正受支持的权重为 5. 覆盖 , 正确性 , 联合 F 约 0.735. 只统计“3/4 命题有引用”会忽略核心权重与错引.
引用可解析性是第三层. 链接存在但版本错误, 支持判断也无效. 评测顺序为定位成功、版本匹配、证据支持、重要命题覆盖. 每层保留分母, 避免失效链接被后续 judge 当成无支持而丢失根因.
Selective prediction 的风险—覆盖曲线
模型按可回答分数从高到低接受样本, 覆盖率为回答比例, 风险为已回答样本中的错误率. 随阈值降低, 覆盖上升且风险通常上升. 系统选择满足风险上限的最大覆盖点, 而非固定追求最高准确率.
一百个问题按分数排序, 前 40 个错 2 个, 风险 5%、覆盖 40%; 前 70 个错 8 个, 风险约 11.4%; 全答错 20 个, 风险 20%. 若业务要求风险不超过 10%, 工作点在 40 到 70 之间, 需要在验证集逐阈值搜索并在独立测试集确认.
完整拒答案例: 用户问当前药物剂量, 候选只有旧指南和成人剂量, 且问题对象是儿童. 检索相关性高, 证据组缺当前版本与儿童条件, 可回答分数低于阈值. 系统说明当前材料只覆盖旧版成人剂量, 不提供数值, 请求当前儿科指南或转向专业渠道. 它不引用旧剂量后再加模糊免责声明, 因为数字一旦出现就可能被误用.
从回答到支持矩阵的完整走查
问题是“上海正式员工今年设备额度多少, 何时提交”. 回答草稿含四个命题: P1 地区为上海, P2 对象为正式员工, P3 额度 800 元, P4 30 日内提交. 证据 E1 是上海补充政策, 支持 P1/P3; E2 是适用范围, 支持 P2; E3 是流程页, 支持 P4, 但页面版本早于今年.
初始矩阵对 P1、P2、P3 为 support, P4 因版本问题为 neutral. 引用覆盖四项都有链接, 表面为 100%, 正确支持只有三项. 验证器删除 P4 的断言或改写为“当前材料未确认提交期限”, 同时保留 E3 作为历史说明会误导读者, 因而不作为当前命题引用.
若检索补回今年流程 E4, 新矩阵支持 P4, 回答可以恢复完整. 这次二次检索由具体缺口“当前提交期限”触发, 查询包含年份与流程类型, 而非重新搜索整个原问题. trace 保存草稿、失败命题、补充查询、E4 与修订结果, 形成可复算修复链.
NLI 的联合证据边界
两段证据分别写“上海额度比全国增加 300 元”和“全国额度为 500 元”, 联合可推出 800, 任一单段都不蕴含. 单段 NLI 会判两个 neutral. 处理方式可以先做证据组合, 让 judge 检查算术关系; 或由确定性计算器产生 800 并把两段共同引用.
反例是让 LLM 自由拼接两个相近数字. 一段是税前额度 500, 一段是含税上限增加 300, 口径不同不能相加. 联合验证先对齐实体、单位、时间和度量定义, 再执行推导. “能够算出”不代表“允许相加”.
验证误差分为假支持与假拒绝. 假支持会放行无据命题, 高风险更严重; 假拒绝会删除正确答案, 降低覆盖. 阈值按代价选择, 并在数值、否定、多段、表格切片分别校准. 总体准确率无法替代风险切片.
风险—覆盖的部署走查
验证集一千题按可回答分数排序. 阈值 0.9 回答 400 题、错 12, 风险 3%; 阈值 0.8 回答 650、错 39, 风险 6%; 阈值 0.7 回答 820、错 82, 风险 10%. 业务上限 5% 时, 0.9 满足而 0.8 超标, 可以在两者之间搜索最大覆盖点.
测试集必须独立确认. 在新来源上使用 0.9 后回答 400 题却错 32, 风险升到 8%, 表示校准漂移. 系统临时提高阈值或限制新来源, 收集标签后重新校准. 阈值属于模型、语料和任务版本组合, 不应写成永久常数.
拒答质量也单独评价. 合格拒答指出缺少哪类证据、当前材料支持到哪里和可执行下一步, 同时不泄露无权来源. 只输出“无法回答”虽然风险低, 可能造成过度拒答; 编造缺失原因则会误导. 人工标注拒答理由与实际缺口是否一致.
部分回答位于回答与拒答之间. 四个独立命题中三个有支持, 可以回答三个并标出缺口; 若缺失的是适用人群, 它会改变全部数值, 应整体拒答. selective prediction 因而可以在命题级和回答级各设门槛, 聚合规则由任务契约规定.
命题切分的可复算协议
原句“自 2026 年 4 月起, 上海正式员工购买办公设备每年最多报销 800 元”包含时间、地区、主体、动作、周期、上限六个成分. 最小命题可以保持关系为“上海正式员工的年度办公设备报销上限为 800 元, 生效时间为 2026 年 4 月”. 把六个成分拆成六条会丢失它们属于同一规则的约束.
标注时先识别谓词与论元, 再决定可独立核验边界. 并列句可以拆, 条件从句通常随主结论保留. 模型切分结果与人工集比较边界 F1, 还要检查关键限定词保存率. 边界 F1 高但经常漏“仅”“不超过”仍不可用于高风险验证.
回答中“额度提高到 800 元, 因为公司鼓励居家办公”包含事实和因果解释. 证据若只给额度, 前半支持、后半 neutral. 不拆分会让验证器在整体句上含糊打分; 拆成两个命题可以删除无据因果而保留额度.
支持矩阵的聚合边界
对联合证据组 , 支持函数是 , 不是各单段分数平均. 两段分别提供全国额度 500 和上海增加 300, 联合支持 800; 平均两个 neutral 分不会自动变 entailment. 组合器需要显式算术或关系规则, 并验证单位与时间一致.
相反, 两段各自支持命题但来源冲突时也不能取平均. 当前政策支持 800, 已撤回旧版支持 500, 正确集合先按有效期排除旧版. 若问题询问变化, 两段分别支持历史与当前子命题, 回答保留时间轴. 支持聚合始终受任务条件约束.
验证器输出三分类概率时, 可以把 support=0.7 当筛查信号, 不能直接当事实概率. 在校准集上检查 0.7 桶真实支持率, 并按数值、否定、表格、多段切片. 高风险阈值同时要求低冲突概率和完整版本元数据.
Risk-coverage 的成本选择
风险上限并非唯一策略. 若误答、误拒和人工复核成本分别为 10、1、2, 对每个阈值计算 . 某阈值回答 700、错 35、拒答 300, 成本 650; 更高阈值回答 500、错 10、拒答 500, 成本 600, 后者虽然覆盖低却总代价更小.
允许人工复核时, 可以把中间分数区间送审. 高分自动回答, 低分自动拒答, 中间段人工处理. 例如分数大于 0.9 回答、小于 0.6 拒答、其余复核, 需要同时测复核量和周转时间. 高峰期复核容量不足时, 中间段应保守拒答, 不能自动降低回答阈值.
部署后监控覆盖和风险的共同漂移. 覆盖突然上升可能是阈值配置变化, 也可能是模型过度自信; 若同期人工抽样错误率上升, 立即回退校准器. 只监控拒答率无法区分能力提升与风险放宽.
拒答案例进入回归集时保存缺失槽位. 后续语料补齐儿童指南, 相同问题应从拒答变为有据回答; 若仍拒答, 检查召回和校准. 反过来, 指南过期或撤回后应重新拒答. 拒答不是永久标签, 它依赖语料快照与查询时间.