关于多Agent和单Agent的一些思考

背景

自从大模型热度起来之后,大家都开始尝试使用大模型做很多事情,除了单纯的聊天,也用它来重构工作流,替代一些之前人工处理的事情,Agent的概念也就被重新提起,各种代码开发、原型设计、小说生成、AI短剧等各行各业的Agent横空出世,Agent的技术架构也在快速演进。从最初的单Agent的架构,到现在遍地的多Agent架构。在快速变化的过程中想写下自己的思考。

为什么会有Agent

技术原理上,由于大模型是根据公网海量数据预先训练的,没法感知实时/私有的信息,也没法操作我们的系统,而要做成一些事情,就要想办法补足这部分内容,于是就有了function call、RAG、MCP、Skills这些技术,让大模型可以获取实时/私有信息、操作我们的系统。又因为很多事情需要连贯性的上下文,而大模型的调用是无状态的且上下文窗口是有限的,于是又在记忆上做了很多管理:长期记忆、短期记忆、记忆归纳自我迭代等。整个包含了大模型、记忆、实时/私有知识、工具的系统我们就可以称为Agent,它可以帮我们完成一类事情。

单Agent和多Agent

前面解释了什么是Agent,那么多Agent其实也很好理解,如果把单个Agent看做是一个人,那么多Agent就是一个团队。多Agent之间其实和人一样,要么是上下级关系,某些Agent指挥其他Agent干活;要么是分工不同,某些Agent复杂读取数据,整理信息,某些Agent生成图片/视频,各自干不同的活;要么是一个Agent干活慢,多个Agent同时干,可以加速干完某些事。无论是哪种组织形式,都是多Agent系统。

为什么要这么做呢?我认为有几个原因:

  1. 单个Agent上下文是有限的(模型限制),进行职责拆分,那么就是变相提高这个上限,能做更多的事情。各个阶段模型需要感知的信息不同,也可以避免无效信息对模型行为的影响
  2. 参考传统软件的上拆分的优点,拆分后每个Agent可以单独优化/迭代,架构更清晰,每个Agent可以单独提供服务、复用,每个Agent更好维护

有优点也就有缺点,软件行业没有"银弹",更多的是选择。

  1. 变成多Agent之后,消耗变得更大,因为和人一样,会有"沟通成本"。传话游戏里,每经过一次传话,信息只可能丢失,不可能增加。

  2. 结果可能变得更不可控,由于技术实现原因,大模型的输出结果是具有随机性的,那么引入多Agent这种随机性大概率是会被放大的

结语

其实作为技术,单Agent和多Agent和当初的单体架构和 微服务架构 如出一辙,很多系统其实很简单,硬拆成微服务架构,只是徒增了系统的复杂度、提高了服务之间通信的成本和维护的成本。那么当前的多Agent架构我认为也是一样的,如果单个Agent能很好的解决,那么就不必要用多Agent架构来炫技,除非是单Agent没法解决的:

  • 例如上下分太大需要拆分,否则模型无法运行;
  • 不同阶段要做的事情差异很大,需要使用不同的模型、参数、上下文等。

总之,适合的才是最好的。

相关推荐
山东云弈创峰科技5 小时前
山东云弈创峰:基于多模态AI的跨境供应链数字化重构
人工智能·重构
智慧景区与市集主理人5 小时前
巨有科技乡村农文旅智慧建设|适配乡村短板,打造轻量长效数字业态
人工智能·科技
甲维斯5 小时前
马斯克Grok4.5太会了!狙击GPT5.6,贴脸Opus4.8!
人工智能·ai编程
雪碧聊技术6 小时前
Badge 应用场景与落地实践指南
大数据·人工智能
ai产品老杨6 小时前
NVIDIA GPU部署AI视频分析项目实战记录
人工智能·音视频
LL334455678 小时前
创业自动化平台怎么选
大数据·人工智能
OceanBase数据库官方博客8 小时前
OceanBase AI 时代,数据库的变与不变(技术解析与实践)
数据库·人工智能·oceanbase
冬奇Lab8 小时前
MCP 系列(01):MCP 是什么——为什么 Function Calling 不够
人工智能·llm·mcp
冬奇Lab8 小时前
每日一个开源项目(第154篇):Warp - 从‘好看的终端‘到 Agentic 开发环境
人工智能·rust·llm
ZZZMMM.zip8 小时前
基于鸿蒙HarmonyOS NEXT开发AI股票分析应用:智能投资新体验与鸿蒙Flutter框架跨端实践
人工智能·flutter·华为·harmonyos·鸿蒙