多智能体LLM为何失效

看了篇论文感觉挺有意思的,这个是我目前看,能够比较完整的把智能体错误进行系统整理并給出一个诊断方式的文章。并提出了一个多代理系统故障分类法(MAST - Multi-Agent System Failure Taxonomy)

原文链接

这个文章主要把Agent的问题分为了三类

第一类:系统设计问题

这类错误通常是因为系统让智能体扮演的角色没定义好,或者智能体没能遵守“人设”和规则。其中下分五个错误

1.1 违背任务规范 (Disobey Task Specification):用户说“不要用固定字典”,智能体非要用。即无视用户的核心约束。 1.2 违背角色规范 (Disobey Role Specification):角色混乱。比如“产品经理”智能体突然开始写代码,或者无权结束对话的“程序员”擅自宣布任务结束。

1.3 步骤重复 (Step Repetition):死循环。智能体陷入“报错-重试-报错-重试”的怪圈,或者不断重复已经完成的步骤,像复读机一样。

1.4 对话历史丢失 (Loss of Conversation History):失忆。智能体突然忘了上一步大家商量好的结果,上下文接不上了。

1.5 不知道何时停止 (Unaware of Termination Conditions):停不下来。任务明明完成了,智能体还在尴尬地继续聊天,或者任务没完成它却不知道该继续。

第二类:智能体间错位

这是多智能体特有的错误,源于“心智理论”(Theory of Mind)的缺失,即智能体不知道队友需要什么信息。

2.1 对话重置 (Conversation Reset):聊着聊着突然像刚认识一样,重新开始打招呼或介绍任务,导致之前的进度作废。

2.2 未寻求澄清 (Fail to Ask for Clarification):不懂装懂。面对模糊的信息(比如缺了密码),智能体不问队友,而是直接瞎猜或硬着头皮做,导致出错。

2.3 任务脱轨 (Task Derailment):跑题。聊着聊着偏离了最初的目标,去解决无关紧要的边缘问题了。

2.4 信息保留 (Information Withholding):知情不报。这是最典型的协作失败。例如:代理A知道API的正确格式,但他不告诉正在写代码的代理B,看着B一次次报错。

2.5 忽略他人输入 (Ignored Other Agent’s Input):当耳旁风。代理A给出了正确的建议,代理B收到了,但在行动中完全无视,继续按错误的方式做。

2.6 推理-行动不匹配 (Reasoning-Action Mismatch):言行不一。心里想的是“我要调用搜索工具”,结果实际输出的操作却是“结束对话”。

第三类:任务验证

这类错误涉及质量控制,智能体作为“测试员”或“审核员”时经常翻车。

3.1 过早终止 (Premature Termination):早退。任务还没做完(或者还没做对),智能体就宣布“大功告成”并退出了。

3.2 无验证或不完整验证 (No or Incomplete Verification):敷衍了事。虽然有测试环节,但只检查表面(例如:代码能运行吗?能。),却不检查核心逻辑(例如:这代码下棋符合规则吗?不符合。)。

3.3 错误验证 (Incorrect Verification):乱判卷子。对的判成错的(False Positive),或者错的判成对的(False Negative)。

如何使用论文提出的MAST

1.最简单的方式:使用 Python 库

pip install agentdash
import os
os.environ["OPENAI_BASE_URL"] = "xxxx"

from agentdash import annotator

# 1. 初始化标注器
openai_api_key = "xxxx"
MASTAnnotator = annotator(openai_api_key,model="anthropic/claude-sonnet-4.5")

# 2. 准备你的智能体对话记录 (String格式)
trace = """
Agent1: 我需要计算 1+1。
Agent2: 好的,答案是 3。
Agent1: 谢谢,任务完成。
"""

# 3. 生成诊断报告
mast_annotation = MASTAnnotator.produce_taxonomy(trace)

# 4. 查看结果
print("检测到的失效模式:")
for failure_mode_id, detected in mast_annotation["failure_modes"].items():
    if detected:
        info = MASTAnnotator.get_failure_mode_info(failure_mode_id)
        print(f" {failure_mode_id}: {info['name']}")
检测到的失效模式:
 3.1: Premature Termination
 3.2: No or Incorrect Verification

agentdash这个库写的特别简陋,一共只有三个文件

agentdash/
├── __init__.py       # 包初始化,导出主要接口
├── annotator.py      # 核心注释器实现
└── taxonomy.py       # MAST 分类法定义

2.构建 LLM-as-a-Judge 自动化评估管道

1. 标准确立

人类专家通过多轮迭代,确定了 14 种具体的 Agent 故障模式(如“幻觉”、“工具使用错误”)。

建立了由人类验证过的、定义清晰的分类体系。

2. 数据准备

专家标注了少量复杂的 Agent 执行轨迹作为测试集。

确保了评估基准的可靠性。

3. 裁判设计

选用模型,并在 Prompt 中包含了故障定义的详细解释 +具体示例(Few-Shot)

相比不给示例(Zero-shot),Few-shot 极大提升了裁判的理解力。

4. 验证

将 o1 的评估结果与人类标注对比,计算准确率(Accuracy)和一致性(Cohen's Kappa)。

最终实现了94% 的准确率0.77 的 Kappa 值,证明该自动管道足以替代人工进行大规模分析。

5. 规模化

使用验证后的裁判模型,自动化分析了 200+ 个复杂的 Agent 任务轨迹。

节省了数百小时的人工标注时间。

全部评论
捞哥,感觉你可以写书了
点赞 回复 分享
发布于 2025-12-29 17:47 陕西

相关推荐

2025-12-31 20:55
天津大学 信息技术岗
一年又一年。从21年在网上第一次搜索计算机就业,到现在已经过了五年。23年本科秋招,靠着运气与努力,拿到了腾讯、百度、美团、快手等等的offer。但恰逢保研率增长,侥幸进线。拒了曾经梦寐以求的大厂,在学校煎熬读研。非常后悔。整个25年,失败贯穿于一整年,实验相关的挫折早已习惯,熬夜堆出来的论文收获reject,努力了一年还是一分之差无缘奖学金。没有一件事是顺利的,但就这样习惯着,麻木着,失败已不能带来什么情绪波动,因为25年,就未曾成功过。我还是被困在了那个23年,那个在夏天意气风发,对未来充满希望的本科生,我想,大抵是再也不可能回得去了。往事如流水,悟已往之不谏。时间流转,在组里已经工作了两年多,虽没有一丝一毫的余额增长,但靠着学院提供的助理岗位,倒也没有余额的降低。马上就要26年了,又到了要秋招的时候了,就业市场变成了我看不懂的样子。我到底该往什么方向努力呢?目前的情况:1.985本硕计算机。2.无实习,无项目。3.一篇期刊论文(ccfa,sci一区)还在焦急等待结果。4.自认为因为过去成功拿过大厂offer,对招聘流程,算法题,八股还算熟悉,至少应该可以一段时间内就回到过去的水平。目前的考虑:1.假设论文成功中了,就去大厂大模型相关的岗位实习,算法,或者应用开发都行。然后秋招就大厂算法与银行科技岗一起准备。2.假设没中,实习估计就没戏了,直接all in国企银行,大厂的大模型相关的开发可以试试?所以我就想知道我该做点什么呢。。大模型相关的岗位到底需要点什么才可以呢,求前辈指教。引个流
今年秋招哪家公司给的薪资...
点赞 评论 收藏
分享
老粉都知道小猪猪我很久没更新了,因为秋招非常非常不顺利,emo了三个月了,接下来说一下我的情况吧本人是双非本 专业是完全不着计算机边的非科班,比较有优势的是有两段大厂实习,美团和字节。秋招面了50+场泡池子泡死的:滴滴 快手 去哪儿 小鹏汽车 不知名的一两个小厂其中字节13场 两次3面挂 两次2面挂 一次一面挂其中有2场面试题没写出来,其他的都是全a,但该挂还是挂,第三次三面才面进去字节,秋招加暑期总共面了22次字节,在字节的面评可以出成书了快手面了8场,2次实习的,通过了但没去,一次2面挂 最后一次到录用评估 至今无消息滴滴三面完 没几天挂了 所有技术面找不出2个问题是我回答不上来的,三面还来说我去过字节,应该不会考虑滴滴吧,直接给我干傻了去哪儿一天速通 至今无消息小鹏汽车hr 至今无消息美团2面挂 然后不捞我了,三个志愿全部结束,估计被卡学历了虾皮二面挂 这个是我菜,面试官太牛逼了拼多多二面挂 3道题也全写了 也没问题是回答不出来的 泡一周后挂腾讯面了5次 一次2面挂 三次一面挂,我宣布腾讯是世界上最难进的互联网公司然后还有一些零零散散的中小厂,但是数量比较少,约面大多数都是大厂。整体的战况非常惨烈,面试机会少,就算面过了也需要和各路神仙横向对比,很多次我都是那个被比下去的人,不过这也正常,毕竟谁会放着一个985的硕士不招,反而去招一个双非读化学的小子感觉现在互联网对学历的要求越来越高了,不仅仅要985还要硕士了,双非几乎没啥生存空间了,我感觉未来几年双非想要进大厂开发的难度应该直线上升了,唯一的打法还是从大二刷实习,然后苟个转正,不然要是去秋招大概率是炮灰。而且就我面字节这么多次,已经开始问很多ai的东西了,你一破本科生要是没实习没科研懂什么ai啊,纯纯白给了
不知名牛友_:爸爸
秋招你被哪家公司挂了?
点赞 评论 收藏
分享
评论
点赞
6
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务