返回 AIPA 笔记
AIPA Day 80

置信度信号实装 — 类型学命中与 SAR 字段级置信度,judge 分到三档信号的映射

置信度信号实装 — 类型学命中与 SAR 字段级置信度,judge 分到三档信号的映射

2026-09-02
confidence-signalingtrust-calibrationhitl

日期: 2026-09-02 阶段: Phase 3 - AML 调查 Copilot 标签: #confidence-signaling #trust-calibration #hitl

核心问题

Day 78 选定置信度信号为 4 个 UX 模式之一(Accountability 轴),Fuselab 定义是"attaches a visible indicator to every agent output"。Day 79 又留了个伏笔:plan-and-execute 的冻结计划防得了"工具调用被劫持",防不了"输出内容被污染"——内容层的不确定性需要别的手段暴露。今天就做这件事:给 AML Copilot 的两类输出(类型学命中、SAR 字段)挂上置信度信号,把不确定性显式呈现给调查员。

回答三件事:(1) 置信度该挂在哪个粒度——整份 SAR 一个分数,还是类型学命中级 + SAR 字段级两层;(2) 怎么把底层的连续分数(规则引擎的 scores ∈ [0,1]、Day 17 judge 的分)映射成 UI 上的三档信号,且映射阈值怎么定;(3) 低置信项怎么高亮、怎么导向人审。

核心反直觉先抛出来:显示置信度(包括"我不确定")比隐藏不确定性更能增加信任——前提是这个置信度本身是校准过的。这条看似违反"产品要显得自信"的直觉,却是 2024-2026 trust-calibration 研究的一致结论;但它有个危险的反面(C 节):未校准的置信度会主动误导用户,比不显示更糟。

关键内容

A. 置信度粒度:为什么要"类型学命中级 + SAR 字段级"两层而非整份一个分

直觉上给整份 SAR 打一个"85% 可信"最省事。但这对调查员没有可操作性——他不知道该重点复核哪一段。置信度信号的价值在于引导注意力分配(把有限的人审预算投到最该看的地方),所以必须落到可操作的粒度:

层级置信度来源调查员动作本仓库数据
类型学命中级规则引擎 scores[typology] ∈ [0,1] + 命中规则数决定是否信任"判为 structuring"assessCasescores/hits
SAR 字段级每段落的证据支撑度 + judge 分(P3 LLM 接入后)决定重点复核哪一段sarDraftsections/citedTxIds

两层各自回答不同问题:类型学级回答"这个案子判得对不对",字段级回答"这段叙述靠不靠谱"。本仓库现成数据足够算出 v1 置信度——规则引擎的 scores 本就是聚合得分(主规则 0.6、辅规则 0.4,cap 到 1),命中规则数 + 证据交易数是天然的"支撑强度"信号。

字段级置信度的一个朴素但有效的算法(无 LLM 时的确定性版本):

fieldConfidence(section):
  # 该段引用的证据交易数 / 该段声明覆盖的"应有证据"数
  cited     = section.citedTxIds.length
  ruleHits  = rulesBackingSection(section)        # 支撑该段的命中规则数
  if cited == 0 and section.makesFactualClaim:    # 有事实声明却零证据
      return LOW                                   # → 高亮待人审
  support = w1 * normalize(cited) + w2 * normalize(ruleHits)
  return bucketize(support)                        # → B 节三档映射

注意"有事实声明却零证据 → LOW"这条——它直接复用了 evalChecks.tscited_tx_nonempty 检查的逻辑(判定为某类型学却未引用证据 = retrieval_miss)。置信度信号和代码型检查共享同一套"证据支撑"判据,不是两套口径。

B. judge 分 → 三档信号:阈值怎么定,为什么是三档

把连续分数映射成离散信号,两个设计点:几档阈值在哪

为什么三档(高/中/低)而非五档或连续百分比:arXiv 2412.14737《On Verbalized Confidence Scores for LLMs》(2024-12) 实测——LLM 自报的置信度普遍过自信("Overconfidence is present for LLMs of all sizes"),即便 70B+ 大模型校准误差也在 10% 量级。连续百分比("87% 可信")给了用户虚假的精度感——底层分数根本没那么准,凭什么精确到 1%?三档把噪声折叠掉,只传递"可信/需注意/别信"这个能落地的信息量。这呼应 Day 16 把 judge 刻度压到二元的同一哲学:别给评测器超过它真实分辨力的刻度

三档映射(以规则引擎 scores 与 judge 分 ∈ [0,1] 为输入):

bucketize(score):
  if score >= τ_high:   return HIGH    # 绿:多规则命中/judge 高分,可信
  if score >= τ_low:    return MEDIUM  # 黄:单规则贴阈值/judge 中分,建议复核
  else:                 return LOW     # 红:弱证据/judge 低分,强制人审

阈值锚定到本仓库已有的语义边界,不拍脑袋

信号阈值锚定依据UI
HIGH(绿)score ≥ 0.6= 主规则单独命中分 SCORE_PRIMARYtypology.ts),即"有强规则支撑"正常显示,可折叠
MEDIUM(黄)0.5 ≤ score < 0.6≥ 判定阈值 ASSESS_THRESHOLD=0.5 但仅辅规则/贴线标注"建议复核"
LOW(红)score < 0.5未达判定阈值,证据不足高亮 + 强制人审(C 节)

反直觉洞察①(连续分数的"精度"是假象,三档反而更诚实):直觉是"信息越细越好,给个 87% 比给个'中'强"。但底层 judge/LLM 自报置信度有 ~10% 校准误差(arXiv 2412.14737, 2024-12),87% 的"个位数"完全是噪声。给用户两位精度的置信度,是在承诺一个系统给不出的分辨力——用户会据此做过细的决策("87% 我就信了,85% 我才复核"),而这 2% 差异毫无统计意义。三档(绿/黄/红)把刻度压到系统真实能区分的粒度,反而是更诚实的设计。显示更粗的置信度,是因为系统的真实分辨力就这么粗。

C. 低置信高亮 + 导向人审,以及"显示置信度增加信任"的前提

低置信(红)项的处置:UI 红色高亮 + 在"待人审清单"里置顶 + 禁止"批量批准"绕过。这把置信度信号和 Day 81 的渐进式授权串起来——低置信 = 强制人审,不进自动通过通道

为什么显示置信度(含"我不确定")反而增加信任?trust-calibration 研究(Visible Language Issue 59-2《Addressing Uncertainty in LLM Outputs for Trust Calibration》2024-2025;arXiv 2412.15584《To Rely or Not to Rely》2024-12)的一致发现:"uncertainty cues were found to help reduce overreliance and confidence highlighting were found to help users catch errors"(不确定性提示降低过度依赖、置信度高亮帮用户抓错)。机制是——隐藏不确定性会诱发过度信任(overtrust),用户把每个输出都当真;显式的低置信信号让用户知道"这里该多看一眼",从而实现校准的信任(calibrated trust):信赖度与系统真实表现对齐。

但有个致命前提,也是最大的坑:

反直觉洞察②(未校准的置信度比不显示更糟——它主动误导):"显示置信度增加信任"容易被误读成"随便显示个置信度就好"。但研究同时警告——verbalized confidence may actively mislead users(自报置信度可能主动误导用户),因为 LLM 普遍过自信(arXiv 2412.14737)。一个总是显示"95% 可信"的过自信信号,比不显示置信度更危险:它把 overtrust 制度化了,用户看到 95% 就放心放行劣质 SAR。所以置信度信号的价值完全依赖底层分数被校准——这就是为什么 Day 17 的 judge×人工 Cohen's κ 校准是置信度信号的前置条件。未经 κ 校准的 judge 分,不许直接映射成 UI 置信信号。 信号必须先证明"它说的高置信确实对应高准确率",否则它在系统性地骗调查员。

闭环:Day 17 校准 judge(κ≥0.6 才可信)→ Day 80 把校准过的 judge 分映射成三档信号 → 低置信导向 Day 81 强制人审。三天是一条链,置信度信号的合法性建立在 Day 17 的校准之上

设计要点/决策表

要点决策理由
粒度类型学命中级 + SAR 字段级两层,不用整份单分单分无可操作性;两层各引导不同动作
档数三档(高/中/低),不用连续百分比LLM 自报置信度 ~10% 误差,连续刻度是假精度
阈值锚定HIGH=0.6(=主规则分)/ MEDIUM≥0.5(=判定阈值)/ LOW<0.5复用 typology.ts 已有语义边界,不拍脑袋
字段级判据复用 evalChecks 的"有声明却零证据→LOW"与代码型检查同口径,不开两套
低置信处置红色高亮 + 待审置顶 + 禁批量批准绕过串接 Day 81 渐进式授权
前置条件judge 分须经 Day 17 κ 校准才可映射未校准信号主动误导(反直觉②)

对本项目的落地

  • 新建 src/aml/confidence.ts:导出 bucketize(score) → 'HIGH'|'MEDIUM'|'LOW'(B 节阈值,阈值常量从 typology.tsSCORE_PRIMARY/ASSESS_THRESHOLD 引入,保证同口径)、typologyConfidence(assessment) → Record<TypologyId, Band>fieldConfidence(section, hits) → Band(A 节算法,复用 evalChecks 的零证据判据)。
  • AmlTypologyPanel 加类型学级信号:在每个 scores[typology] 旁渲染绿/黄/红 chip(复用 AmlShared 的 chip 样式);topTypology 的置信档决定整案"建议处置"。
  • AmlSarPanel 加字段级信号:每个 section 标题旁挂置信 chip;LOW 段红色边框高亮,并在"人工复核 (HITL)"区把 LOW 段列入"待重点复核"清单——与现有的"已人工修改"标记并列。
  • 接 Day 17 judge 校准confidence.ts 头注明确——judge 分映射成信号前必须经 judgeCalibration.ts 的 κ 校验(κ≥0.6);W1-W2 LLM 未接入时,信号仅由确定性规则引擎 scores 驱动(规则分天然可信、无过自信问题),judge 分驱动的字段级信号待 P3 LLM + κ 校准后开启,不谎称已实现
  • 诚实标注confidence.ts 标注 v1 信号源是规则引擎确定性得分(无 LLM 过自信风险);LLM judge 分作为信号源是 P3 后续,且受 κ 校准门控。

参考资料

  1. arXiv 2412.14737 — On Verbalized Confidence Scores for LLMs(Yang et al., ETH Zurich):LLM 自报置信度由直接提示产出;"Overconfidence is present for LLMs of all sizes";70B+ 校准误差仍 ~10%;最优提示平均偏差 7% (2024-12)
  2. Visible Language Issue 59-2 — Addressing Uncertainty in LLM Outputs for Trust Calibration Through Visualization and User Interface Design:可视化不确定性支持信任校准;"uncertainty cues... help reduce overreliance and confidence highlighting... help users catch errors" (2024-2025)
  3. arXiv 2412.15584 — To Rely or Not to Rely? Evaluating Interventions for Appropriate Reliance on LLMs:Reliance Disclaimer 等干预对"校准的信任"的效果;过度依赖时置信增量显著低于适当依赖 (2024-12)
  4. Fuselab Creative — Agent UX:Confidence Signaling = "attaches a visible indicator to every agent output" (2025-08)
  5. 本仓库 src/aml/typology.tsscores/SCORE_PRIMARY=0.6/ASSESS_THRESHOLD=0.5)、src/aml/evalChecks.tscited_tx_nonempty 零证据判据)、src/aml/sarDraft.tssections/citedTxIds)、Day 17 judgeCalibration.ts(κ 校准) (2026-06)

SOTA 检查 (2026-06-11)

  • "显示校准过的不确定性 → 降低过度依赖、提升 appropriate reliance"是 2024-2026 trust-calibration 的稳固结论:Visible Language(2024-25)、arXiv 2412.15584(2024-12) 一致;本日 WebSearch 见 2026 持续有 CHI/arXiv 工作(如 2603.07306《Seeing the Reasoning》)深化"解释 + 置信度交互影响信任"。框架未被推翻。
  • "LLM 自报置信度普遍过自信"是 live 的踩坑点:arXiv 2412.14737(2024-12) 的过自信结论在 2026 仍被反复验证(2601.15778《Agentic Confidence Calibration》、2602.05073《UQ in LLM Agents》等持续跟进)。这是反直觉②的依据——信号必须先校准。
  • 2026 升温方向:linear probes / 语义引导校准:arXiv 2512.22245《Calibrating LLM Judges: Linear Probes》提出用线性探针做快速可靠的不确定性估计——比自报置信度更可靠。本项目 v1 用规则引擎确定性得分(不涉及自报置信度,天然规避过自信);P3 接 LLM 后若用 judge 自报分,应评估是否上 linear probe 校准而非裸用自报分。
  • 过时警示:"产品要显得自信、不该暴露不确定性"是过时的产品直觉——2026 受监管场景的共识是显式不确定性是特性(呼应 Day 78 "forced pauses are features");但前提是置信度经校准,否则主动误导(反直觉②)。
  • 待跟踪:P3 接 LLM judge 后,复核是否采用 linear probe(2512.22245)或多次采样聚合来校准字段级置信度,回填 confidence.ts 的信号源设计。