在这里插入图片描述

网罗开发 (小红书、快手、视频号同名)

  大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等方向。在移动端开发、鸿蒙开发、物联网、嵌入式、云原生、开源等领域有深厚造诣。

图书作者:《ESP32-C3 物联网工程开发实战》
图书作者:《SwiftUI 入门,进阶与实战》
超级个体:COC上海社区主理人
特约讲师:大学讲师,谷歌亚马逊分享嘉宾
科技博主:华为HDE/HDG

我的博客内容涵盖广泛,主要分享技术教程、Bug解决方案、开发工具使用、前沿科技资讯、产品评测与使用体验。我特别关注云服务产品评测、AI 产品对比、开发板性能测试以及技术报告,同时也会提供产品优缺点分析、横向对比,并分享技术沙龙与行业大会的参会体验。我的目标是为读者提供有深度、有实用价值的技术洞察与分析。

展菲:您的前沿技术领航员
👋 大家好,我是展菲!
📱 全网搜索“展菲”,即可纵览我在各大平台的知识足迹。
每周定时推送干货满满的技术长文,从新兴框架的剖析到运维实战的复盘,助您技术进阶之路畅通无阻。


引言

AI Native 架构的一个关键分水岭:

单 Agent 时代 → 多 Agent 系统时代

前面的体系大致是:

Planner → Memory → Context → State Machine → Tool Calling

这些解决的是一个问题:

让 Agent “能做事”

但当系统复杂度继续上升,会出现一个新问题:

多个 Agent 如何协作?

例如在一个鸿蒙 AI App 里:

Planner Agent:拆任务
Search Agent:查资料
Code Agent:写逻辑
UI Agent:驱动 ArkUI
Memory Agent:维护长期记忆

如果它们各自独立运行,就会变成:

各说各话
无法协同
状态不一致
重复计算

于是一个新的核心基础设施出现了:

Agent Bus(智能体总线)

一句话定义:

Agent Bus = 多智能体之间的通信与协作基础设施

它的地位相当于:

微服务中的 MQ / Event Bus
前端中的 Event System
操作系统中的 IPC

一、为什么 Multi-Agent 必须有 Agent Bus?

很多人一开始做 Multi-Agent 是这样的:

planner.run()
search.run()
code.run()
memory.run()

看起来没问题,但很快会崩。

1、强耦合问题

例如:

Planner 直接调用 Search
Search 直接调用 Memory
Memory 反过来调用 Planner

最终变成:

蜘蛛网结构

任何一个 Agent 改动,都会影响全局。

2、同步阻塞问题

Planner → Search → Code → UI

链式调用导致:

  • 延迟不可控
  • 执行阻塞
  • 无法并行

3、状态不一致问题

例如:

Search Agent 返回旧数据

Memory Agent 已更新状态

Planner 仍基于旧 Context

导致:

决策错误

4、无法扩展问题

新增 Agent:

Recommendation Agent

你需要改:

Planner
Search
Memory
Code

系统无法水平扩展。

二、Agent Bus 的本质是什么?

一句话:

Agent Bus = 解耦 + 消息化 + 状态驱动的智能体通信系统

它把:

函数调用

变成:

事件流

传统方式

Planner → Search

Agent Bus 方式

Planner → publish(event)

Search → subscribe(event)

三、Agent Bus 核心架构

一个企业级 Agent Bus 通常包含五层:

┌────────────────────┐
│   Agent Runtime    │
└────────┬───────────┘
         ↓
┌────────────────────┐
│   Event Router     │
└────────┬───────────┘
         ↓
┌────────────────────┐
│   Message Queue    │
└────────┬───────────┘
         ↓
┌────────────────────┐
│ Subscription Layer │
└────────┬───────────┘
         ↓
┌────────────────────┐
│   Agent Pool       │
└────────────────────┘

四、核心机制一:事件驱动(Event Driven)

Agent Bus 的核心不是调用,而是:

事件

例如:

bus.publish({
  type: "TASK_CREATED",
  payload: {
    taskId: "123",
    goal: "生成学习计划"
  }
})

Agent 订阅事件

bus.subscribe("TASK_CREATED", async (event) => {
  await plannerAgent.handle(event)
})

本质变化

从:

Call-based

变成:

Event-based

五、核心机制二:Agent 解耦

Agent Bus 让系统结构变成:

Planner
Search
Memory
Code
UI

全部变成:

独立节点

没有直接依赖,依赖关系变成:

Agent → Event → Bus → Agent

六、核心机制三:异步并行执行

Agent Bus 最大优势之一:

天然支持并行

例如:

Planner 发布任务

Search + Memory + Code 同时执行

结构变成:

        Planner
           ↓
     ┌─────┼─────┐
     ↓     ↓     ↓
  Search Memory Code

效果:

延迟降低

吞吐提升

任务拆分更合理

七、核心机制四:状态流(State Flow)

Agent Bus 不只是消息系统,还必须维护:

全局状态流

例如:

{
  "taskId": "123",
  "state": "SEARCH_DONE",
  "progress": 60
}

状态驱动事件流

TASK_CREATED
↓
SEARCH_STARTED
↓
SEARCH_DONE
↓
PLAN_UPDATED
↓
TASK_COMPLETED

八、Agent Bus vs MQ vs EventBus

很多人会问:

Agent Bus 和 Kafka / MQ 有什么区别?

核心区别:

系统 本质
Kafka 数据流
EventBus UI 事件
Agent Bus 智能决策流

Agent Bus 多了三层能力:

1. Context 注入
2. Agent 状态绑定
3. LLM 决策参与

九、鸿蒙 App 中的 Agent Bus 设计

在 HarmonyOS AI Native App 中,推荐结构如下:

src/
 ├── bus/
 │    ├── eventBus.ts
 │    ├── router.ts
 │    ├── registry.ts
 │
 ├── agents/
 │    ├── planner.ts
 │    ├── search.ts
 │    ├── memory.ts
 │    ├── ui.ts

Event Bus 实现示例

class AgentBus {

  private listeners = new Map()

  publish(event) {
    const handlers = this.listeners.get(event.type) || []
    handlers.forEach(h => h(event))
  }

  subscribe(type, handler) {
    if (!this.listeners.has(type)) {
      this.listeners.set(type, [])
    }
    this.listeners.get(type).push(handler)
  }
}

十、Agent Router:智能调度中心

Agent Bus 不是简单消息转发,还需要:

Routing(路由能力)

例如:

TASK_CREATED → Planner Agent
SEARCH_NEEDED → Search Agent
UI_UPDATE → UI Agent

Router 示例

router.route(event) {

  if(event.type === "SEARCH_NEEDED") {
     return searchAgent
  }

}

十一、Agent Bus 与 State Machine 的关系

可以这样理解:

State Machine:单 Agent 生命周期

Agent Bus:多 Agent 生命周期

合起来就是:

State Machine → Agent 内部状态

Agent Bus → Agent 之间状态

十二、Agent Bus 的核心价值

总结为四点:

1. 解耦系统

Agent 不再互相调用

2. 支持扩展

可以无限增加 Agent

3. 支持并行

天然并发执行

4. 支持复杂工作流

支持 DAG、事件流、反馈回路

十三、AI Native App 的终极结构

当我们把整个系列拼起来:

Goal
 ↓
Planner
 ↓
Context Engine
 ↓
State Machine
 ↓
Tool Runtime
 ↓
Agent Bus
 ↓
Multi-Agent Pool
 ↓
ArkUI

总结

一句话总结 Agent Bus:

Agent Bus 是 Multi-Agent 系统从“函数调用架构”进化到“分布式智能系统”的关键基础设施。

它解决的不是通信问题,而是:

智能体协作方式的范式升级

没有 Agent Bus 的 Multi-Agent,只是多个 Agent 的集合;
有 Agent Bus 的 Multi-Agent,才是一个真正的“智能系统”。

Logo

加入「COC·上海城市开发者社区」,成就更好的自己!

更多推荐