🧒 初中生也能看懂的版本
① 研究背景(为什么要做?)
美国警察局的执法规则,都写在一本本厚厚的手册里。这些手册里的巡逻规程、一般命令、行动指引,往往由不同年代、不同科室的人分别起草,几十年里被一改再改。结果就是,同一本手册内部经常藏着打架的条款:一条命令要求这么做,另一条明令禁止;或者两套流程说的是同一件事,只是换了措辞。
发现问题只能靠人一页页读。这家局的政策库有近两万节,两两比对就是上亿次对照,每次修订之后还得重来一遍。漏掉一条真正的矛盾,代价会落到街面上:警员照着其中一条做,就可能违反另一条。
② 研究问题(要回答什么?)
这篇论文要回答的是一个很实际的问题,自动程序到底能不能替人把这本手册里的毛病找出来。
作者把它拆成两层。第一层是判断:如果已经有人把可疑的一对条款摆到系统面前,它能不能说清这是冲突、重复、相关,还是毫无关系。第二层是发现:没人告诉它哪一对可疑,它能不能自己从近两万节里把那一对捞出来。
这两层的难度完全不同,而过去的研究大多只报告第一层。作者还想知道,两种不同的系统架构分别在哪一层掉分、掉多少,以及跑一遍要花多少钱、多少时间。
③ 研究方法(怎么做的?)
研究团队在美国一家警察局做了实测,用的是这家局里约八十四份真实政策文件。
他们先把每份文件切成约六百字的小块,再请一个语言模型把每块里的要求改写成一条条独立的句子,做成一份要求清单。有了这份清单,比对就不用整篇对整篇,而是一条要求对一个章节。
第一种架构叫检索判定。它把每个小块变成一串数字向量,在整座库里找最像的二十个邻居,再让模型给每一对下判断。它便宜、能扫全库,但问题在于看起来像和逻辑上打架不是一回事。
第二种架构叫筛查确认。它不做相似度搜索,而是拿一份文件的要求清单,逐条去撞另一份文件的每一节。先用便宜的小模型粗筛,凡是有点关系的都留下,再用强模型逐条复核。就像机场安检先过金属门,响了才开箱。
④ 结果(发现了什么?)
如果只把一对条款摆到系统面前让它判断,它做得相当好。筛查确认这一套能判对百分之七十九点五,其中冲突类判对百分之八十八点五。就连一个没经过任何训练、只给四行提示的免费模型,也能到百分之七十六点四。专门做文本推理的旧模型就惨了,冲突能判对六成五,重复和相关几乎是零。
可一旦让系统自己去找这一对,成绩立刻塌下来。检索判定从百分之六十五点四掉到百分之四十五点七,筛查确认从百分之七十九点五掉到百分之四十七点二,冲突类保住百分之六十一点五。
掉分的位置并不一样。检索判定输在找:它的检索本身只能捞回六成六,换更强的裁判模型也救不回来。筛查确认输在筛:一百二十七个正例里,三十一个被粗筛漏掉,二十九个被复核改错。
分类别看,重复最好找,因为两段话用词几乎一样。相关最难,它夹在重复和无关之间,两头都是判断题。
⑤ 讨论(这些发现说明什么?)
作者把这种落差归因于方法的先天结构,判断和检索是两件不同难度的事。
相似度检索按整体像不像来排序,可两条互相矛盾的规则,往往只在一个数字上不同,其余部分毫不相干。论文举了一个例子:一条规定缉毒警下班不得穿制服,另一条规定加班时必须穿制服。这两条明显打架,但用词几乎没有重叠,谁也不会出现在谁的最近邻里。这就是为什么换模型、换检索器、加改写查询,召回都纹丝不动。
反过来,穷举式筛查绕开了这个问题,因为它是按章节硬碰硬地扫,不依赖像不像。代价是成本随章节数线性上涨,而且它天生倾向于多报。作者认为这个取舍合理:审查员划掉一条误报只要几秒钟,而漏掉的那条他永远不会知道。
⑥ 结论(最终结论 + 启示)
这套系统不会取代人,它的定位是给人一份可以顺藤摸瓜的候选清单。
在真实部署里,扫一遍全库约四千八百对邻居只要十三美元、五分钟;针对性地拿一份文件去撞另一两份,一两分钟、一两美元就够。这个价格让它可以在每次修订后重跑,而不是几年才做一次大清查。
作者也把话说得很直:报告干净不等于政策干净。在生产线上,系统只捞回六成左右的冲突,所以它是审查的补充,不是审查的证明。下一步是拿审查员的反馈继续调,并把这个局的经验推到更多警局。
🎓 专业 IRMaD 结构解读
I. Introduction(引言)
美国警务的运行依托成文政策:标准作业程序、一般命令与行动指令,由各机构自行撰写、历经多年修订(Sutton and Dahir, 2025)。一项对全美百大城市逾一万一千页用武政策的审查显示,各局在结构、篇幅与条款分布上差异极大,有的局把用武规则拆散在多份一般命令中。
文本层面的既有工作提供两条路径。一类把政策转成结构化表示再推理,如 PoliGraph 的知识图谱与义务逻辑公理化;另一类直接在文本上做冲突检测,如 LegalWiz 的注入式生成、Clash-of-Leges 与中文法律冲突数据集,以及美国法典的重复条款度量。合规系统则大多面向外部标准(采购审计、维修手册检索),并不判断同一政策库内部两条条款是否互斥。
缺口很清楚:针对警务政策文件本身,系统性的自然语言处理研究几乎空白(Sarzaeim et al., 2023 的综述未覆盖)。本文贡献有三。其一,给出一个已在某美国警察局试点、并向更多机构推广的部署系统,含两种面向不同业务场景的架构。其二,构建 302 对真实条款基准,覆盖冲突、重复、相关、无关四类。其三,把给定成对与自行发现两个设定分开报告,并给出生产环境实测成本与时间,从而把判断能力与发现能力这两个常被混为一谈的量拆开。
I. Theoretical Framework & Hypotheses(理论框架与假设)
标签体系是对自然语言推理(NLI)标签的一次改造,改造依据是审查员接下来要做什么,而不是文本的逻辑形式。映射关系为:矛盾对应冲突;双向蕴含对应重复;中立则按审查员是否必须行动,再切成相关或无关。冲突这一格丢掉了 NLI 的方向性——NLI 问的是前提是否矛盾于假设,而两条不能同时遵守的规则,无论先读哪一条都冲突。也正因如此,现成的 NLI 模型最多只能找到冲突,其余三类会塌缩;DeBERTa 的实测正是这样:冲突召回 0.654,重复 0.000,相关 0.023。重复与相关之间用删除检验划界:若删掉一节而另一节已承载其内容,即为重复;若两节都必须保留,即为相关。相关与无关之间则是一个关于读者的问题——修订其中一节的人是否必须去读另一节。
两套架构各有理论出处。筛查确认是代价级联(Viola and Jones, 2001; Wang et al., 2011):用廉价判别器丢弃绝大多数负例,把昂贵推理留给幸存者,其成立前提是粗筛的升级决定携带关于复核正确率的信息。检索判定则是稠密检索加提示式裁判的组合,其隐含假设是语义相似度可以作为关系发现的代理——本文的核心发现在于质疑这一假设。
| 标签 | 定义(审查员视角) | NLI 对应 | 审查员后续动作 |
|---|---|---|---|
| 冲突 | 两条要求无法同时满足 | 矛盾(去方向) | 定位并修改其中一条 |
| 重复 | 同一要求,删一节不丢内容 | 双向蕴含 | 合并,只留一份 |
| 相关 | 有关联但不互相包含,两节都得留 | 中立(须行动) | 交叉引用、对齐 |
| 无关 | 无操作层面的关联 | 中立(无须行动) | 无须处理 |
M. Materials & Methods(材料与方法)
- 识别与评测设计:这不是因果识别研究,而是一个部署系统的对照评测。识别策略是把同一批判别任务拆成给定成对(judgment)与自行发现(detection)两个设定,同一架构在两个设定各占一行,两行之差即发现成本;辅以逐阶段误差归因(Appendix D)和单组件消融。
- 语料与工件:单局约 84 份文件、19,737 个叶块,约 600 token 的确定性等长切分、逐字保留原文;解析为逐页抽取、Unicode 归一化、按大纲切段并记录 hierarchy_path。一次摄入写三件工件:(i) 结构索引(原文 + 层级路径,无向量,供筛查确认读被比对文件);(ii) 蒸馏要求库(摄入时由 Claude Haiku 每份文档跑一次,把每块改写成一条独立句子并回链到源块,供筛查确认读锚定文件);(iii) 向量索引(Qdrant,每叶块嵌入一次,仅检索判定读)。
- 检索判定:Cohere Embed v4(Bedrock,1024 维),余弦距离取
k=20,保留相似度 0.75 以上的邻居;裁判返回{summary, findings[{type,description}]},一段话点明关系、不带推理链。温度 0、模型 ID 引脚。检索为纯稠密。 - 筛查确认:粗筛每节一次 Haiku 调用,输入编号要求清单 + 该节,无分数无阈值,凡标为冲突/重复/相关即升级,只有判无关才不升级;复核每条升级项一次 Sonnet 调用,看蒸馏句、原始章节与粗筛标签(仅作平局裁决),返回确认标签及 quote_a / quote_b;二者为模型自述引用,未与源文做代码校验,故称 model-attributed。一次扫描成本为
N 次粗筛 + M 次复核,蒸馏为每文档一次性摄入成本。 - 基准构建:302 对,冲突 26 / 重复 57 / 相关 44 / 无关 175,比例贴近真实库中无关占绝对多数的分布;全部为试点局真实条款。四阶段半自动生成:Haiku 抽取可核查主张 → 纯代码按共享词配对(无模型判断)→ 非 Claude 裁判(GPT-5.6 Sol)打标 → Opus 逐条对抗质疑 → 仅对争议行人工核验。候选池三路:分层随机 174 对、数值失配门 75 对(同主题不同数字或阈值)、同主题门 53 对(多为重复)。57 对重复中 33 对为字符级完全相同文本。
- 信度:作者明确未报告编码者间一致性(无 Cohen κ);此前 SME 标注过一版更早的池子,但配对分布过窄未报告;SME 标注本基准被列为下一步。因此本报告的标签为半自动金标。
- 复合召回公式:
R_find = R_retrieve(R@10) × R_judge,冲突类0.571 × 0.731 = 0.418;R_e2e = R_reach × R_screen × R_confirm = 0.945 × 0.742 × 0.674 = 0.472。检索召回在引文可映射到索引叶块的 137 对上测(每对双向查询),裁判召回在该类全部正例上测。 - 对照系统:Llama 3.3 70B 零样本(四行提示、无示例、无检索);DeBERTa-v3-large-zeroshot-v2.0 零样本 NLI(假设模板 + 四个候选标签,取蕴含分最高者)。成本取自生产运行记录与 Bedrock token 计量。
R. Results(结果)
- 给定成对,判断基本已被解决:筛查确认加权召回 0.795(冲突 0.885 / 重复 0.842 / 相关 0.682),零样本 Llama 0.764,检索判定自身裁判 0.654;DeBERTa 仅 0.142(冲突 0.654,重复 0.000,相关 0.023),印证 NLI 标签塌缩。
- 自行发现,损失集中在到达环节:检索判定由 0.654 跌至 0.457,跌幅几乎全部来自检索(检索单独 0.663);八个裁判模型把复合值只在约 0.12 的带宽内移动(0.457–0.574),BM25 替换稠密检索为 0.455 对 0.468,说明是结构瓶颈而非模型或检索器参数。筛查确认由 0.795 跌至 0.472,冲突类保住 0.615,高于检索判定的 0.418–0.462。
- 分类别模式:重复处处最好找(检索 0.846,多数裁判分数最高;端到端丢失的最大单一原因是复核误判为相关,25 次中有 8 次);冲突判断易、发现难(检索仅 0.571,端到端 0.615,给定成对时强模型可达 0.73–0.89);相关在每个设定都最难(检索 0.480,裁判 0.43–0.68,端到端 0.273),因它是残差类,每次判断同时压两条边界,复核错误两个方向都有(5 对相关被读成重复,8 对读成冲突)。
- 精度与置信区间:冲突精度 0.404(80 次标记中 23 对正确、34 对错误),召回 0.885,95% Wilson 区间 [0.710, 0.960];重复精度 1.000,相关 0.612,无关 0.932。基准对稀有类做了富集,若真实库中冲突再稀有十倍,精度降到约 0.06,而召回不变。
- 逐阶段归因:127 个正例中 7 个从未进入模型(4 个不在索引、3 个蒸馏未产出条款),粗筛漏 31,复核改错 29,最终命中 60;另有 20 对无关样本被误留为假阳性。跨文档对 0.541,同文档对 0.377。修复轨迹:0.260 → 0.354(三处摄入故障)→ 0.449(粗筛窗口由约 6,000 条降到约 1,500 条)→ 0.472(复核改为对上匹配段落而非整节)。
- 负向消融:五项嵌入侧改动全部无效或倒退;Cohere Rerank 每类 R@10 变动不超过 ±0.05;HyDE 落在对的主题但找不到标注伙伴;强制思维链反而把冲突精度从 0.444 压到 0.304;整篇文档(最长 533K token)无检索对照与仅看引文在噪声内,输入 token 约 39 倍;可自主取上下文的智能体裁判 302 对中修好 24 行、弄坏 24 行,成本约 3.7 倍。
- 复核模型替换:Haiku 固定,Sonnet 4.5 冲突召回 0.885 最优;Sonnet 5 为 0.692,Opus 4.8 仅 0.423;无关列反映各模型把误升级收回的能力,Llama 最弱(0.474)。冲突召回并非随模型强度单调。
| 设定 | 系统 | 冲突 (26) | 重复 (57) | 相关 (44) | 加权 (127) |
|---|---|---|---|---|---|
| 给定成对 | 筛查确认 | 0.885 | 0.842 | 0.682 | 0.795 |
| 给定成对 | Llama 3.3 70B 零样本 | 0.885 | 0.947 | 0.455 | 0.764 |
| 给定成对 | 检索判定(Sonnet 4.5 裁判) | 0.731 | 0.789 | 0.432 | 0.654 |
| 给定成对 | DeBERTa NLI 零样本 | 0.654 | 0.000 | 0.023 | 0.142 |
| 自行发现 | 检索判定,仅检索 R@10 | 0.571 | 0.846 | 0.480 | 0.663 |
| 自行发现 | 检索判定 + Llama 裁判 | 0.462 | 0.757 | 0.262 | 0.525 |
| 自行发现 | 检索判定 + Sonnet 4.5 裁判 | 0.418 | 0.668 | 0.207 | 0.457 |
| 自行发现 | 筛查确认,端到端 | 0.615 | 0.561 | 0.273 | 0.472 |
| 类别 (n) | 不在索引 | 无条款 | 粗筛漏 | 复核改错 | 命中 | 端到端召回 |
|---|---|---|---|---|---|---|
| 冲突 (26) | 0 | 0 | 6 | 4 | 16 | 0.615 |
| 重复 (57) | 3 | 3 | 8 | 11 | 32 | 0.561 |
| 相关 (44) | 1 | 0 | 17 | 14 | 12 | 0.273 |
| 全部 (127) | 4 | 3 | 31 | 29 | 60 | 0.472 |
成本与时间(生产实测与按节外推):检索判定全库审计判 4,807 对邻居,5.2k 次调用,$12.86,4.8 分钟(约 8.9M/10.4M 输入 token 为缓存命中);筛查确认的定向扫描如一份 SOP(56 条要求)对一份 SOP 为 166 次调用、$0.41、42 秒,一份 SOP(54 条要求)对两份 SOP 为 1,101 次调用、$1.60、150 秒;按节外推一份 SOP 扫全库约需 25–33k 次调用、$40–80、约一小时,作者明言这不是预期用法。基准规模下 Llama 零样本每千对约 $0.03,约为筛查确认($6.47)的二百分之一。
a / D. Discussion & Conclusion(讨论与结论)
- 理论意义:论文把「冲突是逻辑关系而非相似关系」从一句直觉变成一个可测量的架构上限——换八个裁判模型、换检索器、加改写与重排都动不了 0.457,说明瓶颈在检索范式本身:两条互斥规则往往只在一个阈值上不同,余弦邻域却按整体主题排序,把伙伴条款压在同主题的无害条款之后。这为「检索增强」在规范文本上的适用边界提供了一个干净的反例。
- 标签理论化:四类标签不是文本属性,而是审查员动作的投影;重复与相关用删除检验分开,相关与无关用「修订者是否必须读另一节」分开。代价是残差类(相关)同时压在两条判断边界上,成为所有设定下最弱的一格,作者也承认「部分重复」缺失会把这部分压力挤进相关或重复。
- 效度威胁(作者自陈,且相当坦白):标签为半自动而非 SME,且没有编码者间一致性;开发与评估共用同一 302 对,无留出集,因此绝对召回偏乐观,可信的是各改动方向而非幅度;模型替换均在 Sonnet 4.5 调过的提示下进行,混入了提示迁移效应;检索判定以叶块为单位、筛查确认以整节为单位,单位大小是未控制变量;解析错误静默级联,未报告边界级准确率。
- 基准看不到的东西:候选由 Haiku 抽取、生产蒸馏亦是 Haiku,凡 Haiku 稳定漏抽的要求(例如以排班表或表格形式表述的规则)会同时缺席基准与要求库,于是系统在「它其实没做到」的地方被打成满分;候选按共享词配对,基准里没有零词面重叠的对,检索缺口是在有词面重叠的样本上测的;基准对稀有类富集,部署精度会更低而召回不受影响。
- 检索漂移:检索判定的 top-k 依赖语料状态,文档一改,嵌入与邻居集随之变化,固定问题对可能在解决前掉出视野,问题计数甚至会在真实改善时持平或上升。这是作者把迭代式「改完再查」的用法导向筛查确认的主因——后者每次全空间重扫,问题数会可靠下降。
- 实践启示:在今天的召回水平下,工具的价值不在「查全」,而在把复核的经济学改掉:几分钟、十几美元就能拿到一份带理由的候选清单,可随每次修订重跑。定位应是审查的补充而非证明——生产路径只捞回 0.615 的冲突,干净的报告不能作为政策库干净的证据。
- 伦理与治理:系统仅作建议,不编辑、不批准、不执行政策;每条发现附模型自述引文供人工核对;冲突发现被明确告知为低精度(0.404)设计。作者特别提示,此类工具可能被误读为关于个别警员守规情况的证据,而系统只面向文件审查;若日后扩展到自动提出修改或与执法相关的判定,应重做风险评估,而不是沿用本报告的结论。跨域推广的主要障碍是摄入:解析器按该局指令格式手工调过,临床指南、合同、移民规则都报告同类不一致问题。
🧠 IRMaD 思维导图
mindmap
root((警务政策冲突检测))
I 引言
政策手册逐年累积
条款互相打架
人工通读近两万节
警务政策研究空白
R 问题
四类关系如何定义
判断与发现差多少
冲突为何难被找到
跑一遍要多少钱
M 方法
一个局八十四份文件
三百零二对基准
检索判定 相似邻居
筛查确认 两级级联
蒸馏要求清单
未报编码者一致性
R 结果
给定成对 零点七九五
自行发现 零点四七二
检索判定 零点四五七
冲突端到端 零点六一五
重复最好找 相关最难
全库审计 十三美元
a 讨论
冲突是逻辑非相似
瓶颈在检索范式
换八个裁判也不动
无留出集 绝对值偏高
检索漂移 重跑不稳
D 结论
定位为候选清单
按需重跑改经济学
漏报比误报更危险
干净报告不等于干净
图:本研究的 IRMaD 思维导图。蓝色 I 引言;橙色 R 研究问题;绿色 M 方法; 橙色 R 结果;紫色 a 讨论;红色 D 结论。