
投票模式多数决 加权 辩论概念速查投票模式Voting Pattern是 Multi-Agent 系统中最基础的共识机制多个 Agent 各自输出对同一问题的回答通过聚合函数选出一个最终答案。常见的变体有三种模式聚合方式适用场景多数决统计相同答案的 Agent 数量取最高票答案空间有限分类、选择题加权投票每个 Agent 按权重历史准确率、专业领域匹配度折算票数答案质量悬殊专家 新手混合辩论投票Agent 先公开各自输出允许互相质疑后重新投票需要深度推理复杂逻辑、数学证明三种变体的演化路径是多数决 → 加权 → 辩论每一步都增加通信开销以换取正确率提升。底层原理投票模式有效的前提是一个被反复验证的统计学事实——多数决定理Condorcet’s Jury Theorem当每个投票者的正确率 0.5 时随着投票人数增加多数决的正确率趋近于 1。更新权重问题输入Agent 1Agent 2Agent N结果 1结果 2结果 N投票聚合器最终答案反馈回路核心公式加权投票最终得分(c) Σ(wᵢ × I(answerᵢ c)) 其中 wᵢ 是第 i 个 Agent 的权重 I(·) 是指示函数c 是候选答案。辩论投票在此之上增加了 Agent 之间的信息交换回合问题第 1 轮独立输出公开- 互相质疑- 补充证据第 2 轮修正输出聚合- 多数决/加权最终答案每一轮辩论相当于一次贝叶斯更新——Agent 观察到其他 Agent 的证据后调整自身的后验概率。架构设计原则原则一独立性与去相关。投票模式最隐蔽的坑是 Agent 之间的相关性。如果多个 Agent 共享了相同的训练数据、同样的 prompt 模板、甚至同一个 LLM 实例它们的错误会高度相关多数决定理的前提就不成立。实践中应确保不同模型的 backbone、不同的 context window、不同的 temperature。原则二权重应该动态更新。静态权重设置是一次性的拍脑袋决策。正确做法是通过历史正确率滑动窗口通常取最近 20~50 轮计算每个 Agent 的即时可信度。原则三辩论轮数要有终止条件。辩论不是辩论赛——没有固定轮数。当相邻两轮的答案收敛率超过阈值例如 95% 的 Agent 不再改变立场时应该提前终止避免浪费 token。# agent_voting.py — Python 3.11# 最小化加权投票和辩论投票实现fromcollectionsimportCounterfromtypingimportAnydefweighted_vote(agents:list[dict[str,Any]])-str:agents: [{answer: str, weight: float}, ...]score:Counter[str]Counter()forainagents:score[a[answer]]a[weight]bestscore.most_common(1)[0]returnbest[0]defconvergence_reached(agents:list[dict[str,Any]])-bool:检查是否超过 95% 的 Agent 不再改变立场answers[a[answer]forainagents]most_common_countCounter(answers).most_common(1)[0][1]returnmost_common_count/len(agents)0.95defdebate_vote(agents:list[dict[str,Any]],rounds:int3)-str:for_inrange(rounds):forainagents:a[public]a[answer]# Agent 看到其他 Agent 的证据后修正others[x[answer]forxinagentsifx!a]ifothersanda[answer]notinothers:a[answer]Counter(others).most_common(1)[0][0]ifconvergence_reached(agents):breakreturnweighted_vote(agents)原则四答案空间不重叠时走加权重叠时走多数决。如果 Agent 输出的是同构的离散标签“A/B/C”多数决最直接如果输出的是异构的文本段落需要先用语义相似度聚类再对同类答案加权。原则五成本与收益的边界。投票不是越多越好。经验值3~5 个 Agent 是甜点区间正确率提升 10~15%超过 7 个 Agent 后边际收益急剧下降而 token 成本线性增长。推理卷气最重的场景数学、代码、逻辑适合上辩论模式事实性问答多数决就够。何时不该用投票模式不适合实时性要求 500ms 的场景串行调用多个 LLM 延迟太高、单个 Agent 已经 99% 准确率的简单任务、Agent 之间没有独立性保证的团队。这时一个 Agent 自检Self-Consistency比多 Agent 投票更省更快。