端到端答案分数无法说明错误发生在哪里, 也无法覆盖权限、删除和新鲜度. 生产评测需要沿证据链分层: 语料覆盖、召回、重排、上下文、生成、引用与任务结果分别保留指标, 再通过运行记录连接起来.
离线评价矩阵
语料层看解析成功、版本正确、权限完整和删除残留. 检索层看 recall@k、MRR、nDCG 与延迟. 生成层看答案正确、忠实、引用支持与拒答校准. 端到端层按业务任务评估完成率和风险.
自动评审模型适合扩大覆盖, 但需要人工标注集校准. 评审提示、模型版本和解析规则都是实验配置. 分数变化先检查评审器漂移, 再判断被测系统变化.
可靠性硬约束
权限泄漏、删除失败和引用到错误版本不能与普通质量指标平均. 这些项目采用零容忍测试或明确错误预算. 输入文档中的提示注入也要与工具权限隔离, 防止检索内容改变系统行为.
质量指标回答系统有多好, 硬约束回答系统是否允许上线. 两者采用不同门槛.
生产观测
每次请求记录追踪 ID、语料与索引版本、查询分支、候选、重排、最终上下文、模型配置、回答、引用、耗时和成本. 敏感正文按权限与保留策略处理, 不能为了调试复制到不受控日志.
线上反馈要连接具体运行. 点赞或改写只是弱信号; 引用点击、无结果查询、重复改写和人工纠错能提供更具体线索. 新反馈先进入评测集和误差簇, 再驱动改动.
发布和回退
语料、检索器、重排器、提示和模型分别版本化. 新版本通过离线门槛后灰度, 观察质量、延迟、错误和成本. 回退必须恢复相互兼容的索引与模型配置, 同时继续执行最新权限撤回.
分层评测与自动评审给出评价设计, 可观测性、安全与发布连接线上运行与治理.
端到端答案分数告诉系统是否成功, 却不告诉失败发生在哪里. RAG 同时依赖语料快照、检索、上下文选择和生成, 每层都需要自己的输入、输出与指标. 线上运维还要处理索引延迟、模型限流、缓存、权限变化和版本回滚. 评测结构应与运行数据流一致, 这样离线结论才能进入发布门禁.
评测样本记录查询、调用者数据域、语料快照、相关证据、答案和可答性. 运行记录再加入索引、模型、提示和参数版本. 如果语料快照没有固定, 同一查询的答案变化无法归因;如果只保存最终回答, 也无法重现候选和上下文.
五层指标
语料层测解析、索引新鲜度、删除残留和授权;检索层测 Recall@k、MRR、nDCG 与证据集合覆盖;上下文层测覆盖、冗余、冲突和 token;生成层测答案正确、命题支持、引用与拒答;系统层测延迟、成本、失败率与可用性.
这些指标不能平均成一个总分. 权限错误与删除残留是硬门, 不允许被答案质量抵消. Recall 提升若让 P99 超预算, 需要回到候选规模和重排配置. 自动 judge 用于快速回归, 仍需人工校准集监控漂移.
Trace 与发布
请求 trace 保存查询和改写、各路候选、融合与重排、最终证据、模型输入输出、引用和拒答原因. 敏感正文可保存受控快照引用和哈希. 错误出现后, trace 应能回答正确证据是否存在、在哪一层被丢掉、生成器是否看见以及引用为何通过验证.
发布门禁分为安全硬门、质量回归门和资源预算门. 新版本依次经过离线配对、影子运行和逐步放量. 回滚组合包括语料、解析器、切分器、embedding、索引、重排器、生成模型、提示和缓存. 删除与权限变更不随普通版本回滚撤销.
安全与攻击面
间接提示注入把恶意指令藏进可检索文档. 系统必须把文档作为数据, 工具调用继续由独立权限控制. 语料投毒通过重复页面、关键词填充和伪造来源影响排序;越权探测利用结果数量、延迟或拒答差异推断文档存在;资源攻击则制造极长查询、宽过滤和反复检索.
红队样本进入固定回归集, 覆盖恶意文档、冲突来源、删除文档、跨租户查询与极端长度. 安全测试与质量评测共享 trace, 发布判定保持独立. 修复提示注入不能以降低权限隔离为代价.
具体页面
分层评测、观测与发布 给出指标公式、切片方式、自动 judge 校准、线上仪表和事故定位流程. 它把 BEIR、KILT 与 RAGAS 放回各自适用层, 避免用一个框架替代完整评测.
后续若增加专门的安全评测、成本建模或索引运维方法, 都进入这条路线. 共同前提是请求级 trace 和版本化资产, 各叶子只展开不同故障面.
评测数据的结构
每个样本包含查询、调用者可见域、语料快照、相关证据集合、答案、可答性和风险等级. 多跳问题允许多个等价证据集合, 比较问题记录每个对象的必需槽位. 训练、调参和测试按时间、来源或查询簇隔离.
人工标注保留分歧. 相关性、事实支持和答案质量是不同任务, 标注说明分别定义. 自动 judge 在人工校准集上报告一致性, 模型或提示变化后重新校准. 评测框架提供执行工具, 不替代标签定义.
线上观测与回放
请求 trace 串起语料、检索、上下文和生成. 每层保存版本、输入、输出、耗时和停止原因. 敏感正文可以保存受控快照引用与哈希, 仍要保证授权审计能够复现. 抽样 trace 回流到错误切片和回归集.
仪表按分层指标与查询切片展示. 总成功率之外, 监控索引消费位点、少于 的结果、重排超时、上下文截断、无效引用和拒答比例. 分布变化与服务故障使用不同告警, 避免把新查询类型误判成组件宕机.
发布、回滚与安全
硬门覆盖权限、删除、敏感信息和引用有效性;回归门覆盖召回、证据集合、答案支持和拒答;预算门覆盖延迟、token 和成本. 版本先离线配对, 再影子查询和逐步放量. 每次发布记录完整组件组合.
回滚包含语料快照、解析切分、embedding、索引、重排器、生成模型、提示和缓存. 删除与权限事件在所有版本上继续生效, 不能因回滚恢复撤回内容. 蓝绿索引切换前后使用同一探针验证.
安全测试包括间接提示注入、语料投毒、排序操纵、越权探测和资源耗尽. 文档只作为数据, 工具调用保持独立授权. 每条降级路径同样执行安全硬门, 不以服务可用性换权限正确性.
故障分层
索引消费落后、候选不足、重排超时、上下文截断、生成限流和引用验证失败使用不同状态码. 端到端失败可以同时包含多个状态, trace 保留发生顺序. 告警指向最早失效层, 并关联同一请求的上下游影响.
数据分布变化与服务故障分开. 新语言、新实体或更长查询会改变质量指标, 却不一定表示组件异常;错误率、超时和资源饱和则属于运行状态. 仪表同时展示输入切片与系统容量, 避免把一种变化解释成另一种.
演练与恢复
定期演练索引损坏、外部搜索不可用、模型限流和缓存污染. 每条降级路径都有固定回归, 确认权限与删除硬门仍然执行. 恢复后对积压索引事件检查消费位点, 不以进程启动成功代替数据一致.
事故复盘保存受影响的语料和组件版本、请求切片、触发时间、检测与恢复路径. 修复转化为自动探针或回归样本. 对有副作用的工具请求不自动重放, RAG 问答缓存则按证据版本决定是否可以重建.
数据保留与审计
请求 trace 可能包含用户问题、内部文档和模型输出, 保存期限按数据类别设置. 调试样本进入评测集前需要脱敏与重新授权, 不能因为已经出现在日志中就默认允许长期训练. 来源正文可以只保存受控快照引用和哈希.
审计事件记录谁在什么时间访问了哪个证据版本、使用了哪套模型和权限快照. 普通质量分析看到聚合指标, 只有授权调查才能读取敏感正文. 日志系统本身执行租户隔离和删除传播.
自动 judge 的输入也属于外部处理路径. 若使用第三方模型, 需要确认数据发送范围、保留策略和区域要求. 高敏感数据可以使用本地评估器或人工审核, 不因评测便利扩大数据边界.
运行基线
上线前记录冷启动与热缓存两种延迟, 正常流量和峰值并发, 索引构建和增量更新资源. 基线同时包含质量与系统数据, 后续优化才能判断是否把成本转移到其他层.
容量计划根据查询长度、候选数、重排序列和输出 token 建模. 平均值用于成本估计, P95/P99 用于容量和超时. 限流按租户与高成本路径配置, 避免单个宽查询占满重排或生成队列.
运行基线在主要组件升级后重测. 硬件、驱动和框架版本也记录, 因为相同模型参数在不同批量与内核下会产生不同延迟. 论文中的吞吐数字不能替代本系统压测.