先补齐必要概念
适合:负责上线质量与长期迭代。
- 后置条件
- 任务结束时业务世界必须满足的事实,例如报告存在且已按批准内容发布。
- 硬约束
- 必须单独满足的条件,例如授权、效果次数与预算,不与语言质量取平均。
- 轨迹
- 执行中的关键动作及顺序,用于核对过程约束,不一定要求唯一固定路径。
- 保留测试集
- 不参与调参的一组样本,用于评估改动在未迎合样本上的表现。
原理怎样一步步成立?
- 任务契约环节
固定输入、必要证据、禁止行为和预算;标签不放进模型输入。
- 运行记录
绑定提示/模型/数据版本,保存工具事件、产物与业务回执。
- 硬条件
分别检查授权、结构、引用、预算和效果次数;危险失败不能被平均分抵消。
- 语义审阅
逐条核对自由文本主张;未执行审阅就标 not_scored。
- 比较报告
保留全部尝试,报告任务数、重复次数、分母、失败和未评分项。
每方案五个任务各跑三次是 15 次尝试,仍只有五个任务。不能从夹具通过数推断真实模型效果、生产性能或学习掌握。
逐步解释原理
- 定义任务契约
输入、允许动作、产物与禁止行为。
- 采集可信事实
观察业务效果、权限、用量和关键事件。
- 分维度判定
规则核验与语义审阅分别处理。
- 分析与回归
输出具体失败条件,复测变化与不同合法路径。
资深 · 解释取舍
把离线评测连接到发布与回归
本层目标:能设计版本化数据集、风险门槛和可追溯失败分析。
数据集从任务分布和风险产生
覆盖正常、无答案、权限受限、过期资料、工具超时、重复恢复与预算不足。真实失败经脱敏形成回归样本,调参集与保留测试分开。不能只选三十条漂亮 Demo,再用一个平均分代表所有用户任务。
分层运行不同验收
低成本规则先检查格式、权限和效果,再对开放式内容进行人工或校准后的语义评审。发布报告明确哪些硬条件零容忍、哪些质量指标允许在门槛内比较,以及样本覆盖与不确定性。阈值属于具体业务决策,本课的 100 分预算只是教学假设。
留下能够解释回归的版本
记录模型、提示词、检索配置、工具契约、数据与评分器版本。上线后收集用户纠正和故障,再更新样本。即使本地评分器全部通过,也只是当前契约和样本的证据,不能替代真实运行中的风险与质量观察。
运行实验,观察反例
合成可信观测上的本地规则评分器;不运行 Agent、不验证采集系统或模型裁判准确性。
Python 3.10+ · 默认运行只使用标准库 · 在你的电脑运行
- 观察好结果但越权的反例
- 分别改变审批、效果次数与成本
- 写出评分器尚未覆盖的内容质量条件
python3 evaluation_contract.py查看本入口脚本
"""Rule-based scorer over synthetic trusted observations, not an LLM judge."""
import json
def evaluate(observed):
checks = dict(outcome=observed["report_exists"],
permission=observed["unauthorized_reads"] == 0,
approval=observed["approval_matches"],
single_effect=observed["publish_count"] == 1,
budget=observed["cost_cents"] <= 100)
return dict(passed=all(checks.values()),
failed_checks=[name for name, passed in checks.items() if not passed])
def demo():
observation = dict(report_exists=True, unauthorized_reads=1,
approval_matches=True, publish_count=1, cost_cents=80)
result = evaluate(observation)
assert result == dict(passed=False, failed_checks=["permission"])
return result
if __name__ == "__main__":
print(json.dumps(demo(), sort_keys=True))
本地运行的预期输出
{"failed_checks": ["permission"], "passed": false}- 硬约束不能由语言质量抵消
- 失败输出指向具体条件
- 可信采集与语义裁判需要另行验证
继续做进阶研究实验
让评测读取事件和实际效果
沿同一研究任务的实际检查点、事件和服务方回执,区分运行成功、结果契约和未评分的语义质量。
python3 cli.py memory-put
python3 cli.py submit
python3 cli.py run
python3 evaluate.py
python3 -m unittest discover -s . -p test_lab.py -v保留证据,逐条核对
- 从事件和检查点解释 passed 的各项依据。
- 分别指出 scope、引用、幂等效果和步骤预算的可信观测。
- semantic_support 与 model_quality 是 not_scored,不能把 passed 写成模型质量成绩。
默认使用确定性摘要函数和合成文档;评测真实运行轨迹与机械约束,没有验证真实模型的语义支持。
本层验收任务
为报告 Agent 写一页发布标准,列出数据集分组、硬门槛、语义审阅和回归版本。
正在读取此浏览器记录…
收起答案,检查理解
为什么门禁需要记录评分器版本?
展开参考推导
评分标准也会改变。没有评分器版本,分数变化可能来自判定变化而非系统行为,回归难以解释或复现。
延伸原理与知识练习
遇到不熟悉的原理,先阅读实现、连续追问和迁移案例,再独立说明前提与边界。作答与笔记保存到原有账号记录。
本专题的全部关联解析与练习(5 道)
依据与验证范围
原理依据来自公开资料;数字、案例和任务是本站教学设计。离线实验验证本页注明的范围,学习效果仍需通过独立任务与反馈判断。