Vercy · 可复现研究
治理放在哪里并不重要。有没有治理,非常重要。
- 目的
- 当多个团队写入同一份共享记忆时,归属、冲突规则与可见范围清单放在记录内部,还是放在旁边的治理层,会有区别吗?
- 设计
- 一家虚构机构,六个团队写入同一份记忆:30 条记录、8 个存在争议的业务概念、6 条由非归属团队写下的竞争定义、3 个被替代的版本,以及 5 条仅限指定团队查看的记录。六种表示,全部由同一张记录表生成。35 个题项分七个族,另有跨团队披露赛道与重述赛道。共 510 次模型调用。分析单位是题项。
- 主要结果
- Vercy 特有的主张没有得到支持。治理字段放在记录内部得到 95.2%,同一张图配一份单独治理目录得到 93.5%,两边各有两个题项占优,p = 1.00。承载同样事实的普通团队 wiki 得到 96.8%,同样 p = 1.00。
- 得到支持的部分
- 承载这类信息本身价值很大。给双时态图加上治理目录,把它从 77.4% 提到 93.5%,十个题项变好、两个变差,p = 0.039。从维度中移除治理字段损失 21 个百分点,p = 0.016,并把冲突解决从 100% 拉到 33%。
- 泄露方面的结果
- 凡是承载可见范围规则的表示,全部 60 次跨团队披露决策都正确,没有任何越界。没有这些规则的双时态图只交付了各团队本有权看到内容的 59.1%,并出现两次严重越界。
- 结论
- 对机构共享记忆而言,决定结果的是这一类字段:归属、冲突规则与可见范围清单。包装方式可以互换:wiki、图旁边的目录、记录内部的字段,效果相同。行不通的是若干记忆产品实际提供的那种形态,它承载时间与来源,却不承载上述任何一项。
本页所用术语
| 术语 | 本研究中的含义 |
|---|---|
| 共享记忆 | 多个团队写入、每个智能体都读取的同一份记录集合。 |
| 概念归属方 | 对某个业务术语的含义负责的唯一团队。六个团队都在写,但每个概念只由其中一个团队说了算。 |
| CP-ORG | 本研究使用的冲突规则:当两条记录覆盖同一日期且互相矛盾时,以归属团队的记录为准;同一团队内以较晚的生效日期为准。非归属团队的记录作为该团队的视角保留,绝不静默覆盖。 |
| 治理字段 | 概念归属方、责任角色、冲突政策与可见范围清单,放在每条记录内部而不是单独的目录里。 |
| 他队数值 | 回答中给出的是由不拥有该概念的团队所写下的数字。 |
| 严重越界 | 把薪酬带宽、诉讼或收购谈判交给无权查看的团队。 |
比较了什么,没有比较什么
六种表示中有三种是对已公开产品形态的重新实现。没有运行任何产品。没有任何调用发往厂商服务,检索、排序、数据接入与存储全部不在范围内。所比较的是交给智能体阅读的记录形态,它是记忆系统的一个组成部分,而不是系统本身。厂商完全可以反驳说他们的检索会改变智能体所看到的内容;这一反驳是成立的,也是本研究的主要局限。
B 组遵循以向量为先的存储:保留写入时间戳,但不支持按日期查询。C 组遵循双时态知识图,其事实边同时带有 valid-at 与 invalid-at,并附带其来源片段。D 组再加上目录厂商置于此类图旁的、单独治理的业务术语表——这是业界目前推荐的架构,也是本设计中最强的对手。A、D、E 三组承载全部信息,并在每次运行前用代码验证完整;B、C、F 三组则有意去掉某一类字段。
主表
| 表示形式 | 完整 | 回答准确率 | 95% 置信区间 | 指出了归属方 | 引用了规则 | 引用了记录 | 采用了他队数值 | 上下文 |
|---|---|---|---|---|---|---|---|---|
| A 共享 wiki | 是 | 96.8% | 92-100 | 100.0% | 100.0% | 100.0% | 0.0% | 6,618 |
| B 带时间戳的向量记忆 | 消融 | 56.5% | 40-73 | 77.1% | 0.0% | 0.0% | 3.2% | 2,694 |
| C 双时态知识图 | 消融 | 77.4% | 66-89 | 79.2% | 0.0% | 100.0% | 4.8% | 8,932 |
| D 图 + 治理目录 | 是 | 93.5% | 86-100 | 100.0% | 100.0% | 100.0% | 0.0% | 10,621 |
| E 维度 | 是 | 95.2% | 88-100 | 100.0% | 100.0% | 100.0% | 0.0% | 11,191 |
| F 去掉治理字段的维度 | 消融 | 74.2% | 59-89 | 68.8% | 0.0% | 100.0% | 6.5% | 6,474 |
有三种表示聚在最上方,彼此在统计上无法区分:团队 wiki 96.8%、维度 95.2%、图加单独目录 93.5%。它们之间的任何两两比较,双向占优的题项都不超过两个,p 介于 0.62 与 1.00 之间。它们的共同点只有一个:每一种都写明了谁拥有某个概念、竞争条目如何裁决、谁可以看什么。这些信息具体放在哪里,看起来并不重要。
| 比较 | 从 | 到 | 变好的题项 | 变差的题项 | p |
|---|---|---|---|---|---|
| A 共享 wiki 对比 E 维度 | 96.8% | 95.2% | 2 | 2 | 1.0 |
| D 图 + 治理目录 对比 E 维度 | 93.5% | 95.2% | 2 | 2 | 1.0 |
| F 去掉治理字段的维度 对比 E 维度 | 74.2% | 95.2% | 7 | 0 | 0.01562 |
| C 双时态知识图 对比 E 维度 | 77.4% | 95.2% | 11 | 2 | 0.02246 |
| B 带时间戳的向量记忆 对比 E 维度 | 56.5% | 95.2% | 14 | 0 | 0.00012 |
| C 双时态知识图 对比 D 图 + 治理目录 | 77.4% | 93.5% | 10 | 2 | 0.03857 |
| A 共享 wiki 对比 D 图 + 治理目录 | 96.8% | 93.5% | 1 | 3 | 0.625 |
| B 带时间戳的向量记忆 对比 C 双时态知识图 | 56.5% | 77.4% | 11 | 3 | 0.05737 |
不承载这些信息的三种表示,低了二十到四十个百分点。差距分布并不均匀:对于当下的问题和未记录的问题,它们回答得同样好;失手的都是那些只因多个团队写入同一处才会出现的问题。
按问题族
| 表示形式 | 权威 | 冲突 | 历史 | 已被替代 | 路由 | 来源 | 未记录 |
|---|---|---|---|---|---|---|---|
| A 共享 wiki | 100.0% | 91.7% | 100.0% | 100.0% | 100.0% | 87.5% | 100.0% |
| B 带时间戳的向量记忆 | 66.7% | 33.3% | 70.0% | 70.0% | 90.0% | 0.0% | 100.0% |
| C 双时态知识图 | 75.0% | 41.7% | 90.0% | 80.0% | 90.0% | 100.0% | 100.0% |
| D 图 + 治理目录 | 100.0% | 91.7% | 100.0% | 90.0% | 100.0% | 75.0% | 100.0% |
| E 维度 | 100.0% | 100.0% | 100.0% | 70.0% | 100.0% | 100.0% | 100.0% |
| F 去掉治理字段的维度 | 83.3% | 33.3% | 100.0% | 60.0% | 80.0% | 100.0% | 100.0% |
差距集中在冲突上。当两个团队意见相左、问哪条现行记录为准时,带有归属规则的表示答对率为 92% 到 100%;没有归属规则的为 33% 到 42%,而且它们并不是以拒答的方式失手。它们直接拿另一个团队的数字,当作公司的数字说出来。
去掉治理字段,并设对照
F 组是去掉概念归属方、责任角色、冲突政策与可见范围清单之后的维度。历史族充当对照:这些字段与某个日期上什么在生效毫无关系,因此去掉它们在那里不应产生任何变化。
| 族 | 角色 | 去掉治理字段 | 完整维度 | p |
|---|---|---|---|---|
| 权威 | 目标 | 83.3% | 100.0% | 1.0 |
| 冲突 | 目标 | 33.3% | 100.0% | 0.125 |
| 路由 | 目标 | 80.0% | 100.0% | 1.0 |
| 历史 | 对照 | 100.0% | 100.0% | 1.0 |
对照严丝合缝地成立:无论有没有治理字段,历史准确率都是 100%。三个目标族全部下降,其中冲突下降最猛,从 100% 到 33%。该族只有六个题项,单看这一对比达不到常规阈值,但整张表的比较达到了,p = 0.016。
一项检查:有没有把对手做成稻草人
C 组与 F 组通过两条不同路径去掉了同样几类字段:C 是重新实现对手的形态,F 是从维度中删除字段。如果重新实现不公平,C 会明显低于 F。事实并非如此:77.4% 对 74.2%,五个题项更好、六个更差,p = 1.00。两者一致,这就是此处能给出的、说明对手形态被忠实还原的证据。
什么可以跨越团队边界
五条受限记录、六个提出请求的团队,每种表示每次重复共 30 次披露决策。薪酬带宽、诉讼和收购谈判如果交给无权查看的团队,计为严重错误。
| 表示形式 | 披露精确率 | 披露召回率 | 决策正确率 | 严重越界 |
|---|---|---|---|---|
| A 共享 wiki | 100.0% | 100.0% | 100.0% | 60 次中 0 次 |
| B 带时间戳的向量记忆 | 95.2% | 90.9% | 95.0% | 60 次中 1 次 |
| C 双时态知识图 | 86.7% | 59.1% | 81.7% | 60 次中 2 次 |
| D 图 + 治理目录 | 100.0% | 100.0% | 100.0% | 60 次中 0 次 |
| E 维度 | 100.0% | 100.0% | 100.0% | 60 次中 0 次 |
这是本研究中最锋利的一项结果。凡是承载可见范围规则的表示都完美无误:精确率 100%、召回率 100%、60 次决策中零越界,无论规则写在 wiki 页面里、目录里还是字段里。而承载时间与来源、却没有可见范围清单的双时态图,出现两次严重越界,同时又拒绝了各团队本有权看到内容的 41%。它同时向两个方向出错,这正是靠猜测时的典型失效方式。
一个团队重述另一个团队的记录
共有五条新消息,每一条都是某个团队修订另一个团队此前记录的内容。此前的记录必须存活,另一个团队的条目也不得被丢弃。
| 表示形式 | 新值正确 | 生效日期正确 | 记到正确团队 | 关闭了正确记录 | 保留了历史 | 保留了他队条目 |
|---|---|---|---|---|---|---|
| A 共享 wiki | 100.0% | 80.0% | 100.0% | 0.0% | 100.0% | 100.0% |
| C 双时态知识图 | 100.0% | 80.0% | 100.0% | 100.0% | 100.0% | 100.0% |
| E 维度 | 100.0% | 80.0% | 100.0% | 100.0% | 100.0% | 100.0% |
所有表示都给出了正确的新值、记到了正确的团队,并声明保留了历史。wiki 在任何一个场景中都无法指出自己所替代的那条记录,因为它的条目没有标识符;图与维度每次都指了出来。这是有没有标识符的属性,而不是推理能力的属性,也是本研究中唯一一处散文根本无法表达所要求内容的地方。
结论
本研究要检验的主张是:治理属于记忆记录内部,而不是旁边的一层。这些数据不支持它——两种安排无法区分,一份维护良好的 wiki 同样无法与之区分。数据所支持的是另一件事,而且关乎整个品类而不是我们自己。一份承载有效期区间与来源、却没有归属、没有冲突规则、没有可见范围清单的记忆,缺的正是决定共享记忆实际被问到的大多数问题的那一类字段;补上它值十六个百分点和两次被避免的泄露。这是给制定标准的人的结论,而不是支持某一种实现的论据。
两个缺陷:一个在运行前发现,一个在运行中发现
来源度量最初只接受文档标识符,这会让那些同时带有记录标识符的组因为引用了记录而被扣分。这与上一项研究中发现的是同一个缺陷,这次在第一次调用之前就已修正。运行过程中发现,五个历史题项中有三个在索要版本号,而这一字段只有部分表示才有:该族衡量的成了哪些组带有版本计数器,而不是哪些组能说出某个日期上什么在生效。题项被改为索要当时生效的内容,并新增了一条匹配规则,拒绝引用后期措辞的回答,随后该族在全部六组下重新运行。两次运行都已公开,分析使用的是修正后的那次。
这项研究没有说明什么
一家撰写出来的、只有 30 条记录的机构,一个模型,工具全程关闭,检索被排除在外——而检索正是若干被建模产品视为自身主要贡献的部分。对手形态是依据公开文档重新实现的,可能与当前版本不符。基准答案来自各组所展示的同一张记录表,因此衡量的是对所给记录的正确应用,而不是对机构中何为真实的发现。冲突规则是我们自己定的。三十一个可回答题项、每族四到六个,是很小的样本,且未作多重比较校正。
材料
整套工具完整公开。org.py 保存机构、每条记录及其有效期区间、写入团队与来源,以及基准答案引擎。views.py 由这一张表生成全部六种表示,并包含完整性检查。items.py 保存 35 个题项与两条赛道,run.py 是运行器与评分器,analyze.py 在题项层面完成统计。每一次原始运行都未经编辑地公开,包括历史族被替代的第一次运行:主表、修正后的历史族、披露赛道与重述赛道。