福生无量摸鱼天尊

agent系列(三):证据链两种范式和三大对齐

2026/01/23
2
0

0. 范式和对齐

范式的思考有非常多种,这种类似族谱一样的思考如果要挑一种思考的line,最好想的就是从简易demo到最丰富的功能系统的思考line。

比如说这种分类模式:

  • Strict Chain(严格链)

每次 1 个任务 → 1 个返回。对齐主要靠索引k

  • Chain + Evidence Packet(链式派单,但每步返回多条证据对象)

r_k=(\hat y_k,\mathcal{E}_k,\dots),\quad |\mathcal{E}_k|>1

对齐难点从 task-level 变成 claim-level:需要在\mathcal{E}_k 内做证据选择与冲突消解。

  • Fan-out/Fan-in DAG(并行扇出 + 汇聚)

Planner 一次派多单:\{u{k,1},\dots,u{k,m}\}并行,最后汇聚融合。在这种扇形的类vote机制中,对同一子任务独立采样m个agent轨迹,每个正确率为p>1/2,用多数投票得到子任务结论,则投票后的正确率为:

P_{\text{maj}}=\sum_{k=\lceil m/2\rceil}^{m}\binom{m}{k}p^k(1-p)^{m-k}

不难看出P_{\text{maj}}>p这是由于二项分布的集中性:当p>1/2 时,多数事件比单次正确事件更可能发生。。

所以在医疗/金融/法务这类高风险垂类,只要独立性近似成立(不同检索源、不同工具证据、不同提示扰动),冗余 DAG 通过一致性对齐会显著抬升稳健性

故此“链长”不一定是对的,这里的难点在对齐变成全局的,需要同时做A_A(锚点融合)与A_C(claim 覆盖)。

  • Redundant Verification DAG(冗余验证 DAG)

同一子任务派给多个 agent(或同 agent 多采样),用一致性/多数/交叉验证对齐。

  • Blackboard Graph(黑板/知识图谱式)

不是“等 subagent 回答”,而是让 agent 往统一证据库写入节点与边,最终做图推断。

对齐是图问题:节点去重、实体链接、边置信传播。

  • Replan/Repair(带重规划/修复回路;可视作有环但可展开为 DAG)

should_replan/repair 的机制。对齐在这里是动态的:需要在发现冲突时回溯更新w_k

这种功能的不断扩大意味着是复杂性的累积,我们需要合理的去思考如何将其划分,这就要说到对齐了。

那么对于对齐颗粒度由浅到深来考虑,这里至少有三层:

  • 任务级对齐(Task alignment)

每个 subagent 返回的\hat{y}_k 是否对应派单u_k。 这通常由系统结构保证:u_k \leftrightarrow r_k 一一对应。

  • claim–evidence 对齐(Claim alignment)

把最终回答拆成 claim 集合C,找映射

A_C: C \to 2^{\mathcal{E}},\quad A_C(c_i)=\{e:\text{supports }c_i\}
  • 语义锚点对齐(Anchor alignment)

不同 agent/模态的证据是否指向同一个实体/事件/口径:

A_A: \mathcal{E} \to \mathcal{A},\quad \mathcal{A}=\{\text{entity/event/time/metric}\}

1. 两大范式:链式和图的DAG

1.1. 链式DAG

当我们把目光聚焦在Task-answer上,把链定义为:

u_1 \prec u_2 \prec \cdots \prec u_K

并且规定每步只收一个r_k,那么确实Task-answer 结构在索引意义上天然对齐:第k 个返回就是第k 个任务的结果。

所以说任务级对齐是“结构上对齐”,那么数学建模看,影响系统性能的差异可以由以下两部分组成:

1.1.1. 子任务粒度(granularity)

链式对齐隐含假设:每步返回是“可闭包”的,即\hat{y}_k 能被视为一个可用的状态更新.

但如果某步返回是“弱结构摘要”(尤其 Research/Image/Video),其信息熵很大、锚点稀疏,那么后续步骤会出现“引用漂移”,表现为:

A_A(e)\ \text{不稳定} \Rightarrow \text{后续检索 query 的条件分布漂移}

这不是链长能解释的,是粒度与锚点密度决定的。

1.1.2. 误差传播(error propagation)

链式结构天然有“级联风险”。简单来说,假设第k 步子任务输出正确的概率为p_k,且最终答案正确需要每一步都不出错,则有:

\mathbb{P}(\text{最终正确})=\prod_{k=1}^K p_k
  • p_k=p<1 时,正确率随链长K 指数衰减:p^K

由此可以证明在独立近似下,最终正确事件是各步正确事件的交集,概率为乘积。所以现实中当然会加verifier/reviewer来打断最坏传播,这也解释了为什么工程上链越长越需要“硬证据/可复验工件”。

1.1.3. 链内对齐的优劣

用上面建模,链式范式的优化目标常常是“少调用、少走步”:

  • 成本:\mathrm{Cost}=\sum_k \mathrm{cost}(u_k)

  • 风险:\mathrm{Risk}K 增大

优点

  • 对齐成本低:任务级对齐几乎是常数成本

  • 控制流简单,可做强verifier gate

  • 适合低延迟、强交互、强依赖的工具闭环,比如代码修复:run test → patch → rerun。

缺点

  • 对多源证据融合不友好:会把“融合”挤压到最后一步summarizer

  • 容易出现“早期锚点错误 → 后续全错”的级联

  • 多模态证据常常需要并行召回才能稳

1.2. 图 DAG

先把“计划”本身写成图:

  • 链式 DAG(path)

u_1\to u_2\to\cdots\to u_K
  • 一般 DAG:任务节点集\mathcal{T},依赖边\prec,允许分叉与汇聚。

这两者在数学上最关键的差别,是:链式 DAG 的依赖结构是“全序”,一般 DAG 是“偏序 + 汇聚”。

2. 检索

设你有M 种“检索/调用路径”(可以是不同模态不同 subagent),第i 条路径:

  • 调用成本c_i

  • 返回足够证据(使问题可回答)的概率p_i

  • 时延(wall time)\ell_i

对于链式(串行、可早停)来说,按某个顺序\pi 串行调用,直到“足够证据”就停止。 期望成本是:

\mathbb{E}[C_{\text{chain}}(\pi)] = c_{\pi_1} + (1-p_{\pi_1})c_{\pi_2} + (1-p_{\pi_1})(1-p_{\pi_2})c_{\pi_3} + \cdots
  • 那么链式检索的最优排序规则,也就是使\mathbb{E}[C_{\text{chain}}(\pi)] 最小的最优顺序的规则是让\frac{p_i}{c_i} 降序排序。

证明也很好理解,就是两两交换法

  • 比较ij 前后的成本就可以得到最优顺序为\frac{p}{c} 降序。

c_i + (1-p_i)c_j \le c_j + (1-p_j)c_i \iff \frac{p_i}{c_i}\ge \frac{p_j}{c_j}

垂类含义(非常落地)

  • 如果 DB/结构化检索 便宜且命中高,就应该排前面(链式最赚)

  • 视觉/视频检索时延高、成本高且不一定必要,就应该“按需升级”

升级成图DAG,这就有的说道说道了。如果 DAG 允许并行发起这M 条检索路径(足够资源时),则完成时间(makespan)由最长路径决定:

T_{\text{DAG}}=\max_i \ell_i

而链式最坏:

T_{\text{chain}}=\sum_i \ell_i \quad (\text{如果都要跑})

更一般地,对任意 DAG(节点耗时d(v)),在无限处理器下最短完工时间是关键路径长度:

T^*_{\text{DAG}}=\max_{\text{path }P}\sum_{v\in P} d(v)

这也就意味着当你必须融合多模态(例如“文本法规 + DB 指标 + 图片/视频证据”)时,DAG 的并行化是最直接的时延收益来源;而链式为了省钱会牺牲时延。

3. 推理

把证据图推断看成因子图/马尔可夫随机场的MAP推断。若把图结构简化成“链”,其图宽度非常小:

链式结构(每个 claim 只依赖前后相邻):

  • treewidth = 1 精确推断可做到线性/近线性

一般 DAG/图:treewidth 可能很大

  • 精确推断复杂度通常对 treewidth 指数级(需要近似:Loopy BP、采样、ILP 松弛、LLM+verifier 等)

这件事的“可证明点”在于:变量消元的中间团大小由 treewidth 决定,而复杂度指数依赖团大小

4. 融合

给一个最简概率模型:答案变量Y,证据e_1,\dots,e_n。若假设条件独立:

p(Y\mid e_{1:n})\propto p(Y)\prod_{i=1}^n p(e_i\mid Y)

但多 agent 多模态的现实是:证据高度相关(同一网页段落被多次检索、同一截图被不同 agent 描述、同一 DB 口径被不同 SQL 复现),于是条件独立不成立:

p(e_i,e_j\mid Y)\neq p(e_i\mid Y)p(e_j\mid Y)

这会导致 DAG 并行“堆证据”时更容易**双计数**,融合变成“相关性建模/去重/锚点合并”的问题,也就是证据链对齐的核心A_A,这里讲述的就是在条件独立下,不论按链式顺序逐步更新,还是 DAG 并行收集后一起融合,最终得到的后验p(Y\mid e_{1:n}) 相同。。

5. 总结

  • 链内对齐保证的是“任务级对齐”,不是“证据级对齐”;链长会带来误差累积,但真正决定系统可用性的还有子任务粒度与锚点密度

  • 证据链对齐一旦上升到多模态多agent,本质上要做的是:统一证据对象 → 建证据图 → 做全局推断(覆盖、冲突、成本)。

  • 链式 DAG在检索上能按\frac{p}{c}做最优早停,适合成本敏感、主证据源明确的垂类;

  • 一般 DAG在时延与可靠性上有关键路径与冗余对齐优势,适合必须多源交叉验证的高风险垂类,但推断/融合复杂度更高,需要图推断与相关性控制。