当前位置: 首页 > news >正文

MAF快速入门(13)常见智能体编排模式

大家好,我是Edison。

最近我一直在跟着圣杰的《.NET+AI智能体开发进阶》课程学习MAF开发多智能体工作流,我强烈推荐你也上车跟我一起出发!

上一篇,我们学习了MAF中如何进行子工作流。本篇,我们来了解下在MAF中如何快速实现一些常见的智能体编排模式。

1 智能体编排模式介绍

传统的单Agent系统在处理复杂多面任务的能力方面受到较多限制,因此我们会有多Agent编排协作完成任务的需求。

image

事实上,在构建AI应用解决业务问题时,单个Agent往往无法胜任所有任务,常常需要我们将多个Agent组合起来系统工作。而这种组合与协调的方式,就被称为 Agent Orchestration 即 Agent编排。

MAF支持多种多Agent编排流程模式,每个模式都针对不同的协作方案而设计。这些模式作为框架的一部分提供出来,我们可以自己扩展。

在MAF中,常见的Agent编排模式如下:

  • Sequential 顺序编排:即各个Agent依次处理并传递给下一个Agent执行;
  • Concurrent 并发编排:即多个Agent并行处理同一个任务,然后汇聚结果;
  • Handoffs 移交编排:即每个Agent都可以将对话移交给另一个Agent,确保每个Agent处理任务的某个部分;
  • GroupChat 群聊编排:即多个Agent加入了同一个微信群,通过群聊对话形成一些决策;

对应到MAF中,AgentWorkflowBuilder 类提供了这些编排模式的具体实现,我们开发者可以直接使用对应的接口即可快速完成有一次编排 而无需 自行实现Edge连接。

智能体编排模式详解

2.1 顺序编排

在顺序编排模式中,各个Agent被组成一个流程,每个Agent都会处理任务,并将执行结果输出传递给下一个待执行的Agent。可以看出,对于每个基于上一步骤构建的工作流(Workflow)来说,这是比较适合的模式。

image

目前,像文档审阅、工作流、数据处理管道、多阶段推理等,是比较常见的应用场景。

下面的代码展示了在MAF中的顺序编排实现:

var analyst = new ChatClientAgent(...);
var writer = new ChatClientAgent(...);
var editor = new ChatClientAgent(...);
// Build a Workflow
var workflow = AgentWorkflowBuilder.BuildSequential("content-team-workflow", [analyst, writer, editor]);
// Test the Workflow
......

可以看到,通过BuildSequential方法即可快速完成一次顺序编排。

2.2 并发编排

并发模式使用多个Agent并行处理同一个任务,每个Agent都可以独立处理输入,并收集并聚合结果。

image

此模式比较适合多种观点或解决方案很有价值的场景,比如集思广益、群体推理以及其他投票系统。

下面的代码展示了在MAF中的代码实现:

// Step1. Create Agents
var sensitiveWordAgent = new ChatClientAgent(...);
var adDetectionAgent = new ChatClientAgent(...);
var sentimentAgent = new ChatClientAgent(...);// Step2. Build a Workflow
var workflow = AgentWorkflowBuilder.BuildConcurrent(agents: new[] { sensitiveWordAgent, adDetectionAgent, sentimentAgent },aggregator: auditAggregator
);// Step3. Test the workflow
......

2.3 移交编排

在移交(也可以叫做交接)编排模式中,允许各个Agent根据上下文或用户请求相互转移控制权,每个Agent都可以通过适当的专业知识将对话“移交”给另一个Agent,确保每个Agent处理任务的某个指定部分。

image

这种模式非常适合于客户支持(客服)、专家系统或需要动态委派类型的任务场景。

下面的代码展示了在MAF的代码实现

// Step1. Create Agents
var triageAgent = new ChatClientAgent(...);
var historyTutor = new ChatClientAgent(...);
var mathTutor = new ChatClientAgent(...);
// Step2. Build a Workflow
var workflow = AgentWorkflowBuilder.CreateHandoffBuilderWith(triageAgent).WithHandoffs(triageAgent, [mathTutor, historyTutor]) // Triage can route to either specialist.WithHandoffs([mathTutor, historyTutor], triageAgent) // Math or History tutor can return to triage
    .Build();
// Step3. Test the workflow
.....

2.4 群聊编排

在群聊编排模式中,各个Agent就像加入了一个微信群,由群管理员协调进行群聊对话。这种模式非常适合于模拟会议、辩论或协作解决问题的会议类型场景。

下图展示了一个讨论业务建议的用例,由一个Chat Manager负责主持对话,依次让三个参与对话的Agent进行建议发表。这个Chat Manager就像是群管理员,它不仅负责主持对话,也会在必要时引入人工干预。

image

下面的代码展示了在MAF的代码实现:

// Step1. Create Agents
var researchAgent = new ChatClientAgent(...);
var writerAgent = new ChatClientAgent(...);
var criticAgent = new ChatClientAgent(...);
// Step2. Build a Workflow
var workflow = AgentWorkflowBuilder.CreateGroupChatBuilderWith(agents => new RoundRobinGropuChatManager(agents)).AddParticipants(researchAgent, writerAgent, criticAgent).Build();
// Step3. Test the workflow
.....

3 小结

本文介绍了MAF中常见的Agent编排模式,并详细介绍了顺序编排、并发编排、移交编排 和 群聊编排 的适用场景 和 代码实现。

这几种模式的对比分析如下:

image

示例源码

GitHub: https://github.com/EdisonTalk/MAFD

参考资料

圣杰,《.NET + AI 智能体开发进阶》(推荐指数:★★★★★)

Microsoft Learn,《Agent Framework Tutorials》

 

http://www.jsqmd.com/news/294735/

相关文章:

  • 2026年四川聚丙烯酰胺厂家推荐:昆明聚合氯化铝/甘肃聚丙烯酰胺/西藏聚丙烯酰胺/西藏聚合氯化铝/贵州聚丙烯酰胺/选择指南
  • 司法AI系统的文书生成质量控制:架构师如何避免错误?
  • 【跨端技术React Native】入门学习随笔记录
  • ArcGIS脚本工具之---左上至右下分组编号
  • 0x5f3759df --比sqrt还快ovo
  • 09. 枚举
  • 【C++】C++11 核心特性深度解析(二) - 实践
  • AI原生应用领域模型量化的安全考量
  • 一天一个开源项目(第1篇):everything-claude-code - 最全的 Claude Code 配置集合
  • 搭建终身学习系统时,AI应用架构师容易犯哪些错?(避坑指南)
  • 学霸同款2026 AI论文工具TOP9:专科生毕业论文写作全测评
  • 前端萌新别慌!30分钟搞懂CSS阴影:text-shadow和box-shadow实
  • AI编程实战 : 使用 TRAE CN 将 MasterGo 设计稿转化为前端代码
  • 实用指南:Linux Crontab命令详解:轻松设置周期性定时任务
  • 分析一下当前项目如果browser或者node包需要引用common包中的方法,如何设计项目架构
  • 导师推荐8个AI论文写作软件,继续教育学生轻松搞定毕业论文!
  • Firewalld 配置端口转发、SNAT、DNAT
  • 探索AI原生应用领域AI工作流的新趋势
  • AI智能体完全指南:无需编程基础,四步打造专属AI助手
  • 指针与数组:为什么数组名是特殊的指针?
  • 指针进阶:二级指针与指针的指针的应用场景
  • AI人工智能-RAG方法-第十四周(小白)
  • AI人工智能-Agent相关介绍-第十四周(小白)
  • AI人工智能-Function Call 与MCP-第十四周(小白)
  • 基于西门子PLC1214C的三原料自动称重配料搅拌系统程序修改探讨
  • AI原生应用中的多模态交互:从理论到实践
  • os安装-winoffice在线激活命令
  • C++ 贪心算法(Greedy Algorithm)详解:从思想到实战 - 指南
  • 仅 10MB 开源工具,一键远程唤醒关机电脑!
  • 马斯克又开源了。。。