**Multi-Agent(多智能体系统)**指的是:

让多个具有独立能力的 Agent 协同完成一个复杂任务,而不是让一个 Agent 独自完成所有事情。

简单理解:

单 Agent:

用户
 |
 v
一个Agent
 |
 +-- 思考
 +-- 调工具
 +-- 输出结果

Multi-Agent:

             用户
              |
              v
        主Agent / Orchestrator
                       |
     +--------------+-----------------+
     |                  |                      |
     v                 v                     v
  规划Agent  编码Agent  数据Agent
     |                      |          |
     +-------------+-------------+
                     |
                     v
          汇总结果

类似一个团队:

项目经理负责拆任务

程序员负责写代码

测试工程师负责测试

产品经理负责需求分析

每个 Agent 有自己的职责。

一、为什么需要 Multi-Agent?

因为单 Agent 有几个问题:

1. 任务太复杂

例如:

帮我开发一个机器人云平台

包含:

需求分析
 |
架构设计
 |
数据库设计
 |
后端开发
 |
前端开发
 |
测试
 |
部署

一个 Agent:

我要同时负责所有事情

易:

上下文太长

注意力分散

推理质量下降

Multi-Agent:

拆成:

Manager Agent

 |
 +---- 架构Agent
 |
 +---- Backend Agent
 |
 +---- Frontend Agent
 |
 +---- Test Agent

每个 Agent 专注一个领域。

二、Multi-Agent核心组成

一般有 4 个部分:

1. Supervisor / Manager Agent(管理Agent)

也叫:

Orchestrator

Coordinator

Planner

负责:

任务拆解

用户:

开发一个机器人控制系统

Manager:

拆:

Task1:
设计通信协议

Task2:
实现SDK

Task3:
开发后台服务

Task4:
测试

Agent选择

决定:

这个任务交给谁?

2. Worker Agent(执行Agent)

真正干活。

例如:

Coding Agent

负责:

生成代码
代码优化
Bug修复

Research Agent

负责:

搜索资料
分析论文
总结方案

Testing Agent

负责:

测试代码
发现问题
生成测试报告

三、Agent之间怎么通信?

主要有几种方式。

方式1:消息传递(Message Passing)

类似微服务。

例如:

Agent A:

发送:

{
from:"Planner",
to:"Coder",

task:
"实现TCP通信模块"
}

Coder:

返回:

{
status:"done",

result:
"完成TCP Server"
}

方式2:共享Memory

多个Agent访问同一个记忆。

例如:

Shared Memory:

Project Memory


需求:
机器人远程控制


架构:
MQTT + ROS2


代码:
TCP SDK

Agent读取:

Coding Agent:
看到需求

Testing Agent:
看到代码

方式3:黑板模式(Blackboard)

经典AI架构。

类似:

             Blackboard

需求:
xxxx

设计:
xxxx

代码:
xxxx


Agent1 ---> 写入

Agent2 ---> 读取

Agent3 ---> 修改

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐