指南
有系统与没有系统时的人
一个为人提供建议的 AI 系统,只有在人们借助它做出更好的决定时才算好。一个 90% 的时候都正确的系统仍可能让用户变得更差:如果他们在它出错的地方照着做,在过去会思考的地方不再思考。oloproof human-ai report 从一份记录人们决定的文件中回答两个问题:显示系统输出时,人们是否比不显示时决定得更好?他们又是如何依赖它的?
研究
把同样的用例交给几个人。每个人在显示系统输出的情况下决定一部分用例,在不显示的情况下决定其余用例,划分按人随机选择,顺序随机。划分必须是随机的,或者每种条件下都用整套用例:由本人、由系统或按难度选择的划分会让答案以区间无法覆盖的方式出错,而 Oloproof 无法在文件中看出这一点。每个人独自决定;讨论用例的团队算作一个人。每个用例都有一个独立确定的参考答案。有两种设计会被决定,它们回答不同的问题。交叉设计:每个人在一种条件下看每个用例一次,所以答案是输出对一个决定的作用。前后对照设计:每个人先独自决定一个用例,看到输出后再决定一次,所以答案是有输出的第二次查看对比没有输出的第一次查看,这把输出的作用和再看一次的作用混在了一起。在这种设计中,不看输出的决定必须在前;显示相反顺序的文件会被指出。每个用例在每种条件下由两个不同的人各决定一次的文件被称为稀疏设计,它会被描述,但从不被决定。
每个决定写一行,格式为带表头的 CSV 或 JSONL:
| 列 | 内容 |
|---|---|
| case | 用例的 ID |
| reviewer | 做出决定的人 |
| condition | with(显示了输出)或 without |
| decision | 此人的决定;未记录决定时为空 |
| reference | 该用例的正确答案 |
| ai_output | 系统给出的内容,用于 with 输出的行 |
| started_at, decided_at | 可选:ISO 8601 时间或秒数,用于计算决定所需时间 |
决定、参考答案和输出在去掉首尾空格后按文本比较,所以每个标签只用一种写法。用 oloproof init --example human-ai 复制示例:由八个人分诊的三十条索赔,取自一个带种子的生成器。
oloproof human-ai check decisions.csv
oloproof human-ai report decisions.csv
oloproof human-ai gate decisions.csv --policy policy.yamlcheck 读取文件并说明它能回答什么。report 给出每一项度量,不做任何决定。gate 判定策略的每条规则,PASS 时退出码为 0,FAIL 为 1,INSUFFICIENT_EVIDENCE 为 3,MANUAL_REVIEW 为 4。每个命令都接受 --json。文件在你的机器上读取,从不存储或发送。
有减去没有
主要答案是按人取平均:每个人在显示输出时的准确率减去他自己在不显示时的准确率。无论决定了多少用例,每个人只算一次,所以少数承担大部分工作的人无法掩盖输出对其他所有人的作用。如果研究中的人是从将要使用系统的人中抽取的,答案就是关于这些人的,并且针对研究中的用例;对其他用例,只在它们与这些用例相似的程度上成立。
区间是 Oloproof 用于每个有界平均值的区间,应用于每个人的增益。它不对增益如何分布做任何假设:如果五个人中有一个跟着系统出错,区间也会把这考虑在内。在任何人数下,每一侧都以声明的置信度成立,所以最低门槛被运气通过的频率不会超过它所说的。代价是宽度:六个人时,在 -1 到 1 的尺度上区间宽约 1.2,十个人时约 0.8,少于大约四十个人时,除非增益很大,规则很少能做出决定。当区间宽于 0.5 时,报告会说明该研究无法决定一个有用的门槛,以及大约需要多少人。把每个决定都当作独立的区间会窄得多(覆盖网格测得它包含真实值的比例最低只有 39%,而声明的是 95%)。缺失的决定在下界中按有输出时判错填补,在上界中按有输出时判对填补,所以无论缺失的决定是什么,区间都成立,报告还会显示估计值在两种填补之间的范围。
此方法已于 2026年11月3日通过独立审计被接纳,条件如上:各人独自决定、随机分组,以及在前后对比研究中先做不看输出的决定。基于 accuracy_difference 的规则判定为 PASS、FAIL 或 INSUFFICIENT_EVIDENCE。它至少需要两个在两种条件下都做过决定的人;少于此数时,规则读作 INSUFFICIENT_EVIDENCE。
依赖
每个比率都统计决定;它的分母说明统计的是哪些。
| 比率 | 统计 | 分母 |
|---|---|---|
| agreement | 与系统输出相同的决定 | 有输出的决定 |
| over_reliance | 同意系统的决定 | 系统出错时的决定 |
| correct_override | 与参考答案一致的决定 | 系统出错时的决定 |
| harmful_override | 与系统不同的决定 | 系统正确时的决定 |
| accuracy_with, accuracy_without | 与参考答案一致的决定 | 该条件下的决定 |
| system_accuracy | 输出与参考答案一致的用例 | 有输出的用例 |
每个比率都使用 Oloproof 对所有比率采用的精确区间,缺失的决定按两种方向填补。该区间假设决定相互独立。当一个人或一个用例在某个比率的分母中出现不止一次(任何真实研究都是如此),该比率会被报告,基于它的规则读作 MANUAL_REVIEW:重复出现的人会让区间过窄,Oloproof 不会据此做决定。
决定所需时间是每种条件下秒数的中位数,附带区间,只报告,从不用于门禁。
策略
confidence: 0.95
rules:
- id: people-decide-better
metric: accuracy_difference
minimum: 0.0
- id: few-follow-a-wrong-suggestion
metric: over_reliance
maximum: 0.5每条规则指定一个指标和一个门槛。最小值规则在区间下界等于或高于门槛时通过,在上界低于门槛时失败;最大值规则与之对称。其他情况都是 INSUFFICIENT_EVIDENCE。
这无法告诉你的
- 它代表的是研究中的人所抽取自的人群,针对与研究中类似的用例。受过不同训练的人,或因为喜欢该系统而被选中的人,是另一个人群。
- 前后对照研究衡量的是有输出的第二次查看对比没有输出的第一次查看,而不是输出本身。
- 知道自己正在被研究的人,可能比工作时更仔细地核查系统。
- 参考答案被视为正确。如果它们来自同一批人,或来自系统本身,研究衡量的是一致性,而不是准确率。
- 尚未支持从托管的审阅队列读取决定:请把它们导出为上面的文件。