如何编排 AI Agent?
一句话简介
本文将探讨如何将AIAgent作为一等公民集成到工作流中,利用TurnToken机制触发智能体协作,构建复杂的 AI 业务流程。
🤔 Executor vs Agent
在 MAF Workflow 中,我们有两种主要的执行单元。理解它们的区别是编排的第一步:
| 特性 | Executor (执行器) | Agent (智能体) |
|---|---|---|
| 核心能力 | 确定性逻辑(代码) | 概率性推理(LLM) |
| 典型场景 | 验证、格式化、API调用 | 内容生成、意图识别、决策 |
| 触发方式 | 收到消息即执行 | 需要 TurnToken 触发 |
| 输入输出 | 强类型 (TInput) | ChatMessage |
✅ 最佳实践:混合使用!用 Executor 处理结构化数据和确定性任务,用 Agent 处理需要“思考”的模糊任务。
🔗 集成 Agent 到工作流
WorkflowBuilder对 Agent 提供了原生支持,你就像添加普通 Executor 一样添加 Agent。
// 1. 定义翻译 Agentvar frenchAgent = new ChatClientAgent(client, "Translate to French");var chineseAgent = new ChatClientAgent(client, "Translate to Chinese");// 2. 编排工作流:法语 -> 中文var workflow = new WorkflowBuilder(frenchAgent) .AddEdge(frenchAgent, chineseAgent) .WithOutputFrom(chineseAgent) .Build();🔑 核心机制:TurnToken
与普通 Executor 收到消息立即执行不同,Agent 在工作流中是“懒加载”的。它们会缓存收到的消息,直到收到TurnToken令牌才会开始思考和生成。
为什么设计 TurnToken?
- 🛑等待上下文:Agent 可能需要等待多游消息(如用户输入 + 工具结果)到齐。
- 🚦控制节奏:精确控制 Agent 何时开始与 LLM 交互。
代码实现
执行包含 Agent 的工作流时,必须显式发送TurnToken:
await usingvar run = await InProcessExecution.StreamAsync(workflow, input);// 🔑 关键步骤:发送令牌触发 Agentawait run.TrySendMessageAsync(new TurnToken(emitEvents: true));// 监听 Agent 的思考过程awaitforeach (var evt in run.WatchStreamAsync()){ if (evt is AgentRunUpdateEvent update) { Console.WriteLine($"🤖 {update.ExecutorId}: {update.Data}"); }}🏢 实战案例:翻译链
通过工作流编排多个 Agent 顺序协作,实现多级翻译任务。
学AI大模型的正确顺序,千万不要搞错了
🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!
有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!
就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋
📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇
学习路线:
✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经
以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!
我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~