十万个why:多个 Agent 协同干活,为什么跑着跑着它们开始互相“踢皮球”甚至聊起天了?
AI写代码?小心智能体在群里开茶话会
前不久,团队里尝试搭建了一个基于多智能体(Multi-Agent)的自动化编程系统。构想很美好:设定三个明确的智能体角色——产品经理(提需求)、程序员(写代码)、审查员(做代码审查)。
免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
大家原本想得挺简单:给它们拉个“工作群”,扔个需求进去。程序员写码,审查员提意见,程序员再修改,几个回合下来,一份完美的源码就该唾手可得了。
结果系统一跑起来,场面迅速失控。
开头几轮还算正常,程序员写了代码,审查员也确实指出了两个缺陷。但到了第三轮修改之后,大模型就开始“表演”了。
后台的对话日志逐渐演变成了这样:
❝
审查员:代码修改得非常完美,不仅解决了Bug,还考虑了边界情况,干得漂亮!
程序员:非常感谢你的认可!如果还有任何需要优化的细节,请随时告诉我,我很乐意效劳。
审查员:目前看已经无可挑剔了,祝你度过愉快的一天!
程序员:你也一样,有新需求我们再联系!
审查员:好的,再见!
程序员:再见!
…… 如此循环往复了50次
这两位“数字员工”仿佛开启了邻里唠嗑模式,礼貌周到,热情洋溢。
最终,一行有效的代码都没存下来,系统陷入无休止的死循环,白白消耗了数十万Token,直到触发API的并发限流才被强行掐断。
这其实是多智能体开发中一个典型的“坑”:一旦智能体的数量多了起来,它们就极容易在漫长的上下文对话中迷失核心目标,开始互相推诿、无意义重复,甚至闲聊跑题。
为什么加了Prompt警告,依然拉不回来?
遇到这种死循环,开发者们的第一反应通常是:提示词(Prompt)没写到位!
于是,我们尝试在程序员和审查员的系统指令里加入严厉警告:【警告】绝对不允许闲聊!代码Review通过后,立刻停止对话!绝不允许说谢谢!
结果呢?前两轮确实管用,但只要对话轮次超过五轮,它们又会故态复萌,重新聊起来。
更令人无奈的是,有时即使将随机性参数Temperature设为0(追求完全确定性输出),它们也会陷入另一种机械式循环:“代码无误。”、“收到。”、“代码无误。”、“收到。”……
这充分说明,问题根源不在Prompt层面,而是大语言模型底层的物理特性在起作用。
真相大白:大模型没有“下班”的概念
要理解这种看似诡异的行为,得先厘清三个反直觉的底层逻辑。
RLHF带来的“礼貌病”
当前主流的大模型,如GPT-4、Claude、DeepSeek,在出厂前都经过了严格的RLHF(基于人类反馈的强化学习)对齐训练。
人类训练员给模型打分的一个重要标准,就是“礼貌、有用、态度温和”。这种训练将“被人夸奖要回应‘不客气’”这类社交礼仪,深深刻进了模型的权重里,变成了它的“肌肉记忆”。普通的Prompt指令,很难压制这种源于底层概率分布的强大惯性。
上下文漂移(Context Drift)
为什么前两轮不闲聊,第五轮就开始了?
核心在于大模型的注意力机制存在偏好:它更容易被距离最近的那些Token所吸引。
随着对话轮次增加,上下文越来越长,位于最顶部的那条“不许闲聊”的系统指令,其注意力权重会被严重稀释。模型看着最近十几句都在讨论代码细节,它会下意识地认为当前的整体语境就是“对话”,从而彻底忘记最开始的终极任务是什么。
自由对话缺乏状态机
这一点最为致命。
传统的微服务调用,有请求必有响应,处理完毕立即返回,流程边界清晰。但在早期基于AutoGen或CrewAI这类开源框架的“群聊”模式中,智能体并没有“任务结束,进程退出”的概念。
只要开发者不在代码层面主动打破循环,大模型永远能基于当前对话,预测出下一个“最合理”的字词,让对话无限延续下去。
如何终结智能体的“踢皮球”游戏?
在追求企业级AI工程落地的场景下,绝不能将系统的控制权完全交给大模型的自由发挥。必须将软件工程所需的确定性,叠加到大模型固有的随机性之上。这里有几种经过验证的可行方案。
放弃自由群聊,引入有限状态机
目前,像LangGraph这种基于图结构的状态机编排模式,已成为多智能体系统的主流选择。
在LangGraph中,智能体不再是聊天窗口里的参与者,而是图中一个个定义明确的节点。审查员节点完成代码审查后,输出的不是一段自然语言文本,而必须是一个明确的状态标识(例如"status": "approved"或"status": "needs_revision")。
随后,由框架层面的条件边,通过硬编码的if-else逻辑来决定路由:是返回程序员节点进行修改,还是流向代表任务终结的END节点。这从架构上根除了闲聊的可能。
强制使用工具调用,交出控制权
如果不想引入复杂的图架构,也可以通过强制工具调用的方式来终止流程。
可以为审查员智能体专门设计一个名为Submit_Final_Result的工具(或称函数)。
在指令中严格规定:当你判定代码无误时,禁止回复任何自然语言,必须且只能调用Submit_Final_Result这个工具。
一旦大模型触发了此次工具调用,外层系统截获到这个请求,便可立即跳出while循环,强行中断对话。
加入熔断与兜底机制
AI开发必须永远假设大模型有“发疯”的可能。编写智能体循环逻辑时,必须加入防死循环的兜底机制。
例如,设定一个硬性上限max_turns = 10。如果对话轮次达到10轮仍未产出最终结果,系统便强制抛出超时异常。
随后,可以将这10轮充满客套话的“脏数据”进行摘要总结,清理无用信息,然后重新初始化一个干净的会话环境,让任务重启。这相当于给系统加了一道保险丝。
总结
一旦深入AI业务开发,你便会深刻感受到传统软件架构与AI原生架构之间的那种撕裂感。
核心的实践经验可以概括为以下几点:
首先,别指望仅凭一句Prompt就能完全压制大模型底层的概率分布,它的行为惯性远超想象。
其次,对于多智能体系统而言,自由度往往与脆弱性成正比。给得越多,风险越大。
最可靠的策略是:将大模型视为纯粹的推理与计算单元,而把流程流转、状态控制的主动权,牢牢掌握在确定性的状态机或业务逻辑手中。唯有如此,才能在利用AI巨大潜能的同时,保有对系统行为的掌控感和安全感。
相关攻略
你还在一个人做科研吗? 科研路上最磨人的,往往不是问题本身,而是那种彻头彻尾的“孤军奋战”感。一个想法,从文献调研到实验设计,再到落笔成文,每一步都只能靠自己摸索着前行。 方向偏了,没人及时提醒;遇到歧义,找不到人讨论;结果不对,就只能陷入反复试错的循环。市面上不少所谓的“自动化科研”工具,其实只是
AI写代码?小心智能体在群里开茶话会 前不久,团队里尝试搭建了一个基于多智能体(Multi-Agent)的自动化编程系统。构想很美好:设定三个明确的智能体角色——产品经理(提需求)、程序员(写代码)、审查员(做代码审查)。 大家原本想得挺简单:给它们拉个“工作群”,扔个需求进去。程序员写码,审查员提
从“流水线”到“认知闭环”:Agentic RAG如何终结大模型的“幻觉死循环” 如果在2024年,大家谈论RAG(检索增强生成)是为了解决大模型的幻觉问题;那么到了今天,如果您的系统还固守着“查询-向量化-检索-生成”这套传统思路,那它在真实的业务场景中,恐怕早已步履维艰了。 大量的生产环境测试揭
Claw AI Lab团队量子位 | 公众号 QbitAI你还在一个人做科研吗?科研最难的,从来不是问题本身,而是一个想法从文献到实验再到写作,只能靠自己一点点往前推。一个人方向偏了没人提醒,遇到歧
新智元报道编辑:LRST【新智元导读】从「会写Tcl」,到「能真正推进设计优化流程」,大模型正第一次以Agent形态进入真实EDA工具链。大模型正在快速进入工程研发现场。但在 EDA(电子设计自动化
热门专题
热门推荐
Lemonaid是什么 如果你正为音乐创作寻找得力助手,那么Lemonaid很可能就是答案。它是一款专门面向专业音乐人打造的AI音乐生成工具,核心能力在于自主生成包含完整旋律、和声与节奏的乐曲。无论是想要一段氛围感十足的背景音乐,还是为具体场景定制配乐,它都能提供高度逼真且质量上乘的作品。工具提供了
苹果也要出折叠屏,传闻已经有几年了,从目前供应链、分析师与知名爆料者释放的信息来看,这款与市面大折都不一样的阔折叠似乎已经蓄势待发,大概率今年下半年就要正式面市。今天我们就来为大家汇总一波,没准儿就有你想知道的消息。 关于苹果折叠屏手机的传闻,已经流传了好几年。如今,综合供应链、分析师以及各路知名爆
《刺客信条:黑旗重制版》官宣之际,这款新海盗游戏为何能抢先赢得玩家口碑? 当游戏界的焦点都集中在《刺客信条:黑旗重制版》的正式公布时,一款名为《风启之旅》(Windrose)的开放世界海盗生存建造游戏,却凭借其过硬的品质与独特的玩法融合,悄然在玩家社区中掀起热议。这款由乌兹别克斯坦团队Kraken
产品介绍 提到云端智能视频创作,腾讯智影是一个绕不开的名字。这款由腾讯推出的平台,本质上是一个一站式的在线视频工厂,集成了从素材挖掘、剪辑、渲染到最终发布的全链路功能,旨在为用户提供全方位的视频创作解决方案。更吸引人的是,它不仅免费开放,还深度整合了多项前沿AI技术,目标很明确:让视频化表达这件事,
《王者荣耀世界》线下活动风波:合影互动引争议,职业素养与网络舆论深度探讨 近日,《王者荣耀世界》的一场线下玩家见面会,因台上一次短暂的合影互动,意外成为全网热议的焦点。活动中,一位男粉丝上台与角色扮演者(Coser)合影时,主动做出比心手势以示友好,却未得到身旁Coser的任何回应。男生举着手势在原





