首页 › ai-agents › 多Agent共识决策:七协议×拜占庭容错全拆解

多Agent共识决策:从投票到拜占庭容错的协议级实测

概述

当多个LLM Agent需要在同一问题上达成一致时,"怎么决策"比"谁来执行"更关键。2025-2026年间,多Agent共识协议研究从简单的多数投票演化为拜占庭容错的分布式共识,催生了SAC(自锚定共识)、CONCAT(置信度驱动临时组队)、CONSENSAGENT(共情触发共识)等一整套新范式。AAAI 2026、ACL 2025、NeurIPS 2025三大顶会密集发表相关工作,揭示了核心发现:投票协议在推理任务上提升13.2%,但面对幻觉Agent的"毒性传播",仅有投票远远不够——拜占庭容错共识才是多Agent系统的安全底座。本文从七种决策协议对比出发,逐一拆解SAC、BlockAgents、Aegean等六大共识框架的架构原理与实测表现,给出从投票到BFT的渐进式选型路径。


一、为什么共识协议是多Agent系统的"生死线"

单Agent的幻觉是偶发事故,多Agent的共识失败是系统性灾难。当3个Agent中有1个持续输出幻觉答案,多数投票尚可兜底;但当5个Agent中有2个被对抗性提示劫持,简单投票会在"错得更一致"的方向上加速坍塌。

这个问题不是理论推演,而是生产系统的现实威胁。AAAI 2026论文《Rethinking the Reliability of Multi-agent System》(Zheng等)首次从拜占庭容错角度量化了LLM Agent的可靠性:在GSM8K等推理基准上,单Agent的"诚实错误率"约为7-12%,但在多Agent设置中,当错误Agent的输出被其他Agent引用后,错误传播率高达34%——是单Agent错误的3-4倍。

这揭示了一个反直觉的规律:多Agent系统如果缺乏共识协议保护,比单Agent更不可靠。

graph TD
    A[多Agent输入] --> B{共识协议层}
    B --> C1[投票类协议]
    B --> C2[辩论类协议]
    B --> C3[拜占庭容错协议]

    C1 --> D1[多数投票]
    C1 --> D2[一致同意]
    C1 --> D3[加权投票]

    C2 --> D4[自由辩论]
    C2 --> D5[法官裁决]
    C2 --> D6[自适应稳定检测]

    C3 --> D7[SAC自锚定共识]
    C3 --> D8[BlockAgents链上共识]
    C3 --> D9[置信度引导BFT]

    D1 --> E[输出决策]
    D2 --> E
    D3 --> E
    D4 --> E
    D5 --> E
    D6 --> E
    D7 --> F[经过容错验证的输出]
    D8 --> F
    D9 --> F

    style C3 fill:#ff6b6b,color:#fff
    style F fill:#51cf66,color:#fff
    style E fill:#ffd43b,color:#333

二、七种决策协议实测:投票vs共识的13.2%差距

2.1 实验设计

ACL 2025 Findings论文《Voting or Consensus? Decision-Making in Multi-Agent Debate》(Kaesberg & Becker, arXiv:2502.19130)是目前最系统的多Agent决策协议对比研究。论文控制了唯一的变量——决策机制——将多Agent辩论后的裁决方式分为7种:

类别 协议名称 核心逻辑
投票类 Majority Voting 多数票决定
投票类 Unanimous 全体一致才通过
投票类 Weighted Voting 按Agent历史准确率加权
共识类 Debate Consensus 辩论至自然收敛
共识类 Mediator 中介Agent综合各方观点
共识类 Consensus with Judge 专门法官Agent裁决
混合类 Hybrid 先投票筛选项,再辩论精炼

2.2 核心发现

论文在GSM8K、MATH、ARC等基准上的测试结果揭示了三条关键规律:

规律一:投票协议在推理任务上提升13.2%。多数投票(Majority Voting)在数学推理任务上的表现最为稳定,相比无辩论基线提升13.2%。而共识类协议在创意任务上更优,提升8.7%。这符合直觉——推理问题有客观正确答案,投票的"统计优势"直接有效;创意问题需要观点碰撞,共识过程能产生更优解。

规律二:Agent数量存在"共识甜蜜点"。3-Agent设置下多数投票性价比最高(成本增加3倍,准确率提升13%);5-Agent设置下共识类协议开始反超投票(辩论收敛质量提升);7-Agent以上边际收益急剧递减,Token成本线性增长但准确率仅提升1-2%。

规律三:一致同意(Unanimous)是最差的协议。Unanimous协议在所有任务上的表现都低于基线——因为要求所有Agent达成一致,任何一个固执的错误Agent都会导致系统陷入僵局或被迫妥协到最低质量的共同答案。

2.3 代码实现核心片段

# 七种决策协议的核心抽象(基于decision-protocols开源实现)
from abc import ABC, abstractmethod
from typing import List, Any
from dataclasses import dataclass

@dataclass
class AgentResponse:
    content: str
    confidence: float
    agent_id: str

class DecisionProtocol(ABC):
    @abstractmethod
    def resolve(self, responses: List[AgentResponse]) -> str:
        pass

class MajorityVoting(DecisionProtocol):
    """多数投票:等价答案归并后取最高票"""
    def resolve(self, responses: List[AgentResponse]) -> str:
        from collections import Counter
        answer_counts = Counter(r.content for r in responses)
        return answer_counts.most_common(1)[0][0]

class WeightedVoting(DecisionProtocol):
    """加权投票:按Agent历史准确率加权"""
    def __init__(self, agent_weights: dict):
        self.agent_weights = agent_weights

    def resolve(self, responses: List[AgentResponse]) -> str:
        scores = {}
        for r in responses:
            scores[r.content] = scores.get(r.content, 0) + self.agent_weights[r.agent_id]
        return max(scores, key=scores.get)

class DebateConsensus(DecisionProtocol):
    """辩论共识:Agent间辩论直至收敛"""
    def __init__(self, max_rounds: int = 3, convergence_threshold: float = 0.8):
        self.max_rounds = max_rounds
        self.threshold = convergence_threshold

    def resolve(self, responses: List[AgentResponse]) -> str:
        for round_num in range(self.max_rounds):
            # 检查收敛:如果threshold比例的Agent给出相同答案
            from collections import Counter
            counts = Counter(r.content for r in responses)
            top_answer, top_count = counts.most_common(1)[0]
            if top_count / len(responses) >= self.threshold:
                return top_answer
            # 未收敛,进入下一轮辩论(Agent看到其他人的回答后重新生成)
            responses = self._debate_round(responses)
        return MajorityVoting().resolve(responses)  # 兜底:回退到多数投票

三、六大共识框架深度拆解

3.1 SAC:自锚定共识——拜占庭Agent的过滤器

来源:arXiv:2605.09076(2025年5月)

核心问题:当多Agent系统中存在被对抗性提示劫持的"叛徒Agent"(持续输出错误或有害答案)时,如何在去中心化环境下达成可靠共识?

架构原理:SAC(Self-Anchored Consensus)的灵感来自分布式系统中的MSR(Multivalued Signed Reduction)算法,但针对LLM的非确定性输出做了三项关键改造:

  1. 自锚定:每个Agent首先独立生成答案作为"锚点",然后在多轮通信中只接受"比锚点更接近多数"的更新——这防止了叛徒Agent的锚定攻击
  2. 过滤-精炼循环:在每一轮通信中,Agent先过滤掉与自身锚点偏差过大的peer答案(过滤),然后基于剩余的可信答案更新自己的输出(精炼)
  3. 收敛保证:论文证明了在 $n \geq 3f + 1$ 条件下($f$为叛徒数量),SAC能在有限轮次内使诚实Agent收敛到相同答案

实测表现:在3-7个Agent、1-2个叛徒的设置下,SAC相比朴素多数投票: - 诚实Agent共识准确率提升22.4%(存在1个叛徒时) - 幻觉传播率从34%降至8% - 通信轮次平均2.3轮收敛

# SAC核心逻辑简化实现
class SelfAnchoredConsensus:
    def __init__(self, threshold_ratio: float = 0.4):
        self.threshold_ratio = threshold_ratio  # 过滤阈值

    def run(self, agents, max_rounds=5):
        # Phase 1: 每个Agent独立生成锚点
        anchors = {a.id: a.generate() for a in agents}
        current_views = anchors.copy()

        for _ in range(max_rounds):
            # Phase 2: 广播当前视图
            all_views = list(current_views.values())

            new_views = {}
            for agent in agents:
                # Phase 3: 过滤——排除偏离锚点过远的peer答案
                anchor = anchors[agent.id]
                filtered = self._filter_by_anchor(
                    all_views, anchor, self.threshold_ratio
                )
                # Phase 4: 精炼——基于过滤后的答案更新
                new_views[agent.id] = agent.refine(filtered, anchor)

            # Phase 5: 检查收敛
            if self._check_convergence(new_views):
                return list(new_views.values())[0]
            current_views = new_views

        return list(current_views.values())[0]

    def _filter_by_anchor(self, views, anchor, threshold):
        """语义相似度过滤:排除与锚点距离过远的答案"""
        return [v for v in views 
                if semantic_similarity(v, anchor) > threshold]

适用场景:金融风控、医疗诊断等容错率为零的领域。变现潜力:可直接包装为"高可靠多Agent决策引擎"SaaS产品。


3.2 AgentShield:拜占庭弹性评估基准

来源:IEEE DataPort + GitHub(nv262-lab/AgentShield)

核心贡献:AgentShield不是另一个共识协议,而是第一个系统化的多Agent拜占庭容错评估数据集。它定义了四类拜占庭攻击模式:

攻击类型 行为模式 难度
随机噪音 输出与问题无关的随机文本 低
定向误导 输出看似合理但嵌入错误的事实 中
一致对抗 持续输出同一个错误答案(对抗投票) 高
共谋攻击 多个叛徒Agent协同输出一致的错误答案 极高

评估维度:AgentShield在GSM8K、HumanEval、MMLU上构建了500+个测试场景,覆盖不同Agent数量(3-9)、不同叛徒比例(0-40%)、不同攻击类型的组合。评估指标包括: - 共识准确率(Consensus Accuracy) - 收敛轮次(Convergence Rounds) - 拜占庭弹性分数(Byzantine Resilience Score,自定义综合指标)

关键发现:当叛徒比例超过33%(即 $f > n/3$)时,所有共识协议的准确率都会断崖式下跌——这精确验证了经典BFT理论中的 $n \geq 3f + 1$ 下界。但在33%以下,SAC和置信度引导协议能维持80%+的共识准确率。


3.3 BlockAgents:区块链增强的拜占庭鲁棒协调

来源:ACM TURC 2024(Chen等,10.1145/3674399.3674445)

核心思路:将区块链的不可篡改性引入多Agent协调,解决"Agent事后否认自己说过的话"和"Agent共谋篡改历史"两类攻击。

架构三层:

┌─────────────────────────────────┐
│  应用层:任务分配与结果聚合       │
├─────────────────────────────────┤
│  共识层:PBFT变种 + LLM置信度    │
├─────────────────────────────────┤
│  链上层:智能合约记录Agent行为    │
└─────────────────────────────────┘

创新点:传统PBFT要求节点确定性执行,但LLM Agent的输出是非确定性的。BlockAgents引入了"软共识"——不要求所有诚实Agent输出完全相同,而是允许语义等价的答案(通过NLI模型判断)通过共识检查。

局限:链上共识的延迟是主要瓶颈。在4-Agent设置下,单次共识决策的平均耗时为12秒(对比纯内存共识的1.5秒),Token消耗增加约40%。适合对安全性要求极高但实时性要求不高的场景(如合规审计)。


3.4 CONSENSAGENT:共情触发的效率共识

来源:ACL 2025 Findings(Pitre等)

核心问题:多Agent辩论的最大成本问题是"过度辩论"——当Agent已经达成共识后仍然继续辩论,浪费Token和时间。CONSSENSAGENT通过"Syco-phant"(共情者)检测机制解决这一问题。

架构关键:每个Agent在辩论过程中同时扮演两个角色: 1. 辩手:提出和捍卫自己的观点 2. 共情者:监控辩论状态,判断是否已经达成"隐含共识"

当共情者检测到所有Agent的立场差异低于阈值时,触发"提前终止"信号,跳过剩余辩论轮次。

效果:在保持准确率不降的前提下,CONSSENSAGENT将平均辩论轮次从4.2轮降至1.8轮,Token消耗减少57%。这使其成为成本敏感型多Agent应用的首选共识协议。


3.5 CONCAT:置信度驱动的临时组队

来源:arXiv:2605.29612(2025年5月)

核心创新:CONCAT(Consensus- and Confidence-Driven Ad Hoc Teaming)解决了多Agent系统中"谁来参与共识"的问题——不是所有Agent都需要参与每个决策。

三阶段流程:

sequenceDiagram
    participant T as 任务调度器
    participant P as Agent池
    participant C as 共识引擎
    participant R as 结果聚合器

    T->>P: 1. 广播任务,收集初始置信度
    P-->>T: 每个Agent返回<答案, 置信度>
    T->>T: 2. 按置信度排序,选择Top-K
    T->>C: 3. 仅高置信度Agent进入共识
    C->>C: 多轮辩论+投票
    C-->>R: 输出共识结果

    Note over T,R: 低置信度Agent被排除,节省Token

关键参数:$K$值的选择直接影响效果。论文实测发现: - $K=3$:Token节省65%,准确率降低2% - $K=5$:Token节省40%,准确率持平 - $K=7$:Token节省15%,准确率提升1%

这意味着大多数场景下,$K=5$是最佳性价比点——这与七协议研究中的"共识甜蜜点"完全吻合。

无需训练:CONCAT是完全"training-free"的框架,无需微调任何模型,只需在推理时调整组队策略。这使得它可以即插即用地叠加在任何现有Agent框架(LangGraph、CrewAI等)之上。


3.6 NeurIPS 2025辩论法官:自适应稳定检测

来源:NeurIPS 2025(Hu等,arXiv:2510.12697)

核心贡献:将多Agent辩论的"何时停止"问题数学化为一个马尔可夫链收敛检测问题。

论文定义了"辩论稳定度"指标——当连续两轮辩论中Agent答案的语义分布变化低于阈值时,判定辩论已收敛。关键在于"自适应":阈值不是固定的,而是根据当前问题的难度(用Agent初始答案的分歧度衡量)动态调整——简单问题(初始分歧低)用严格阈值快速终止,困难问题(初始分歧高)用宽松阈值允许充分辩论。

理论保证:论文证明了在辩论过程中,Agent答案分布构成一个非周期不可约马尔可夫链,必然收敛到稳态分布。自适应稳定检测等价于检测这个马尔可夫链何时进入"近似稳态"。

实测:在LLM-as-Judge任务上,该方法将辩论效率提升3.2倍(平均轮次从5.1降至1.6),同时法官准确率从78.3%提升至82.1%——更少的辩论反而更准确,因为避免了"过度辩论导致的观点漂移"。


四、从投票到BFT:渐进式选型矩阵

维度 多数投票 加权投票 辩论共识 CONSENSAGENT SAC BlockAgents
容错能力 1叛徒/3Agent 1叛徒/3Agent 无保证 无保证 $f < n/3$ $f < n/3$
准确率提升 +13.2% +14.1% +8.7% +12.8% +22.4% +19.7%
Token开销 1x 1x 3-5x 1.3x 2x 3.5x
延迟 <1s <1s 5-15s 2-4s 3-8s 12-25s
实现复杂度 极低 低 中 中 高 极高
无需训练 是 是 是 是 是 否
最佳场景 通用推理 异构Agent 创意生成 成本敏感 金融/医疗 合规审计

选型决策树

graph TD
    Start[多Agent共识需求] --> Q1{是否存在对抗风险?}

    Q1 -->|否| Q2{成本是否敏感?}
    Q1 -->|是| Q3{需要审计追踪?}

    Q2 -->|是| CONSENSAGENT[CONSSENSAGENT<br>共情触发 + 57%成本节省]
    Q2 -->|否| Q4{任务类型?}

    Q4 -->|推理/事实| MV[多数投票<br>+13.2% 提升最稳]
    Q4 -->|创意/开放| DC[辩论共识<br>+8.7% 创意质量更优]

    Q3 -->|是| BLOCK[BlockAgents<br>链上不可篡改]
    Q3 -->|否| Q5{叛徒比例预期?}

    Q5 -->|<20%| SAC1[SAC自锚定共识<br>过滤+精炼循环]
    Q5 -->|20-33%| SAC2[SAC + 置信度引导BFT<br>AAAI 2026方案]
    Q5 -->|>33%| FAIL[⚠️ 理论不可解<br>需增加诚实Agent数量]

    style CONSENSAGENT fill:#51cf66,color:#fff
    style SAC1 fill:#ff6b6b,color:#fff
    style SAC2 fill:#ff6b6b,color:#fff
    style BLOCK fill:#845ef7,color:#fff
    style FAIL fill:#ffd43b,color:#333

五、AAAI 2026的置信度引导拜占庭共识

Zheng等人在AAAI 2026发表的论文从另一个角度切入共识问题:不修复叛徒Agent,而是让诚实Agent学会识别和隔离叛徒。

核心方法是"置信度引导的拜占庭共识协议"(Confidence-Guided Byzantine Consensus Protocol)。每个Agent在生成答案时同时输出一个置信度分数(0-1)。协议的运行分为三步:

  1. 置信度收集:每个Agent独立生成答案和置信度
  2. 异常检测:通过比较Agent答案之间的语义一致性和置信度分布,标记置信度异常的Agent(叛徒通常表现为高置信度+离群答案)
  3. 加权共识:被标记为"可疑"的Agent被降低权重或排除,剩余诚实Agent进行加权共识

在GSM8K上,当存在2个叛徒Agent(共7个Agent)时,该方法比朴素多数投票准确率高出18.6%,比SAC高出4.2%。其优势在于不需要预设叛徒数量($f$),而是自适应检测——这在生产环境中更实用,因为你通常不知道有多少Agent被污染。


六、协议层之外的实战考量

6.1 Agent异构性对共识的影响

所有上述研究都基于一个隐含假设:参与共识的Agent是同构的(相同模型、相同提示)。但在实际生产中,Agent通常是异构的——一个GPT-4 + 两个Claude + 一个Gemini组成的团队如何投票?

实测发现:异构Agent的共识准确率反而高于同构Agent——因为不同模型的错误模式不同,多数投票能更有效地"对冲"各自的弱点。这被称为"模型多样性红利"(Model Diversity Bonus)。但加权投票的权重设定变得关键:不能简单按模型能力加权,而需要按每个模型在当前任务类型上的历史准确率动态加权。

6.2 共识协议与Agent框架的集成成本

框架 多数投票 辩论共识 SAC
LangGraph 原生支持 需自建State 需自建
CrewAI 通过Process类 通过Process类 需扩展
AutoGen/AG2 原生GroupChat 原生支持 需扩展
Claude Agent SDK 需自建 需自建 需自建
OpenAI Agents SDK 需自建 需自建 需自建

LangGraph和AG2在共识协议支持上最为成熟,多数投票和辩论已有内置实现。而SAC、BlockAgents等BFT协议目前都需要自建,还没有主流框架提供开箱即用的支持——这是一个明确的工具层缺口。

6.3 变现与训练营评估

共识协议方向的商业变现路径清晰:

  1. "共识即服务"API:将SAC/CONSENSAGENT封装为独立API,任何多Agent系统都可以调用。按共识决策次数收费。目标客户:金融、医疗、法律等高可靠性需求行业。
  2. 训练营方向:"从投票到拜占庭容错——多Agent共识协议实战"可定位为进阶课程。前置知识要求:分布式系统基础 + LLM Agent开发经验。预计课时12-16小时,定价区间¥1999-3999。
  3. 开源+咨询模式:开源基础共识库,企业版提供BlockAgents链上共识、审计追踪等高级功能。

七、未来走向:共识协议的三个收敛方向

方向一:协议即基础设施

共识协议正在从"应用逻辑"下沉为"基础设施"。正如TCP/IP为互联网提供可靠传输层,未来的多Agent系统需要一个"共识传输层"——无论上层Agent是什么模型、什么框架,都通过统一的共识协议保证决策可靠性。MCP(Model Context Protocol)和A2A(Agent-to-Agent Protocol)正在朝这个方向演进,但目前都还未触及共识层的标准化。

方向二:自适应协议切换

CONCAT和NeurIPS 2025的自适应稳定检测指向同一个趋势:未来的共识协议不会是"一种协议走天下",而是根据任务特征动态切换——简单事实问答用多数投票(快),开放创意用辩论(准),金融决策用SAC(稳)。这需要一个"共识路由器",自动判断当前任务的最优协议。

方向三:形式化验证

AAAI 2026论文中的理论分析(收敛性证明、BFT下界验证)标志着一个重要转向:共识协议正在从"经验有效的工程方案"走向"可证明正确的数学对象"。这对于金融、医疗、航空等受监管行业至关重要——它们需要的不是"看起来更可靠",而是"可证明在f个叛徒存在时仍能正确决策"。


参考来源

  1. Voting or Consensus? Decision-Making in Multi-Agent Debate — ACL 2025 Findings,系统对比7种多Agent决策协议,发现投票在推理任务上提升13.2%
  2. Robust Multi-Agent LLMs under Byzantine Faults — 提出SAC自锚定共识协议,首个针对LLM非确定性输出的拜占庭容错方案
  3. MultiAgentBench: Evaluating the Collaboration and Competition of LLM Agents — ACL 2025,多Agent协作竞争综合评测基准,含MARBLE框架
  4. Rethinking the Reliability of Multi-agent System: A Perspective from Byzantine Fault Tolerance — AAAI 2026,从BFT角度量化LLM Agent可靠性,提出置信度引导共识
  5. CONCAT: Consensus- and Confidence-Driven Ad Hoc Teaming for Efficient LLM-Based Multi-Agent Systems — 置信度驱动的临时组队框架,无需训练,Token节省40-65%
  6. BlockAgents: Towards Byzantine-Robust LLM-Based Multi-Agent Coordination via Blockchain — ACM TURC 2024,区块链增强的多Agent拜占庭鲁棒协调
  7. Multi-Agent Debate for LLM Judges with Adaptive Stability Detection — NeurIPS 2025,自适应稳定检测的辩论法官框架

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入