第 3 课:多智能体链式协同 (Lesson 3: Coordinating Agents)
欢迎来到 Griptape Nodes 系列教程的第三课!在本篇指南中,你将学习如何在工作流中协调编排多个 AI 智能体 (Agent) 顺次执行接力任务——具体而言,我们将构建一个跨语言故事创作、翻译转换并最终自动提炼摘要的复合系统。
本节学习要点
在本篇教程中,我们将:
- 分析并亲手复现一个由多智能体顺次协作的多语言翻译工作流;
- 掌握如何使用文本合并算子 (MergeTexts) 将上游输出拼接衍生为全新的下游 Prompt;
- 深入理解控制流执行链 (Exec Chain) 在精确控制拓扑节点执行先后顺序中的作用;
- 扩展现成模板,为其接入跨分支多文本自动综合摘要智能体。
学完本教程后,你将深刻理解智能体之间如何建立在彼此的工作成果之上,在各垂直细分任务之间无缝传递上下文与数据。这为你后续构建在不同阶段需要不同模型能力、多角色分工的大型复合 AI 自动化系统打下牢固根基。
让我们先从研读这个官方预置的轻量翻译模板开始。
返回首页并打开示例工作流
首先点击编辑器左上角的 Griptape Nodes Logo 导航图标返回欢迎首页。在页面顶部找到并打开名为 "coordinating_agents"(多智能体协同) 的示例工作流。
剖析模板工作流架构
模板载入后,你会看到由以下核心组件连缀而成的流水线:
- 第一个智能体节点 (spanish_story):负责生成一段四行的西班牙语微型短篇故事;
- 文本合并节点 (MergeTexts):将生成的西班牙语文本与前置指令
"Rewrite this in English"进行拼接; - 第二个智能体节点 (to_english):接收拼接后的完整指令,将西语短文翻译转写为英语;
- 文本展示节点 (DisplayText):在画布上直观呈现最终生成的英文翻译成果。
该工作流生动展示了多个 AI 智能体如何各司其职、协同作业。
通过将一个智能体的输出通过 MergeTexts 节点连接到下一个智能体,你实际上是在动态合成全新的复合提示词 (Prompt),从而精准引导下游智能体的行为。
MergeTexts 文本合并节点的运作机制
MergeTexts 节点的核心职责非常纯粹:它接纳多路传入的文本片段,并使用指定的“连接字符串 (Merge String)”将它们拼接组合为一个单一的长文本输出。默认的连接分隔符为双换行符:\n\n。
在此示例中,我们在 MergeTexts 节点的 input_1 属性中硬编码填写了 "Rewrite this in English:"(请将此内容改写为英文:),并将 spanish_story 节点的输出端连入 input_2。运行时,MergeTexts 将自动输出如下拼接文本:
Rewrite this in English:
Bajo la luna, el río cantó, Un secreto antiguo en su agua dejó. La niña lo escuchó y empezó a soñar, Que el mundo era suyo, listo para amar.
你可以清晰地看到:这种将上游节点的运算产物动态拼接为全新下游 Prompt 的工程设计,天然构成了流水线式多智能体协同的基础——第一位智能体专注于创作西语诗歌,第二位智能体则专注于精准转译。最终用户看到的,便是针对每次全新生成的不同故事的实时英文译文。
关于大模型输出的非确定性
每次运行此工作流时,生成的故事内容都会有所不同。这是完全正常的!与 AI 智能体打交道就如同与真实的人类交谈,向其提出同一个问题多次,所得到的措辞与灵感细节本就会自然展现差异。
亲手搭建孪生分支工作流
我们的目标是搭建如下图所示的并行双语处理流程:
现在轮到你大显身手了。我们在原有流程的正下方依葫芦画瓢新建一条高度相似的平行流水线,以此巩固算子创建与连线操作:
- 添加两个 Agent 智能体节点(路径:
agents > Agent); - 添加一个 MergeTexts 文本合并节点(路径:
text > MergeTexts); - 添加一个 DisplayText 文本展示节点(路径:
text > DisplayText)。
配置第一个创作智能体
配置你的第一个 Agent 节点,让它以你指定的语种(例如中文普通话、法语、德语等)编写故事:
- 在第一个 Agent 节点的
prompt中输入:Write me a four line story in Mandarin(请用中文写一则四行微型故事); - 该智能体将扮演故事源头创作者。
接入 MergeTexts 拼接提示词
接下来准备翻译转译指令:
- 在该 MergeTexts 节点的 input_1 输入框中直接输入:
Rewrite this in English; - 将第一个 Agent 的输出端口拉线连接至 MergeTexts 节点的 input_2 端口。
配置第二个翻译智能体
配置专职负责翻译的下游 Agent:
将 MergeTexts 节点的 output 输出端口连入第二个 Agent 节点的 prompt 端口。此时该智能体将同时接收到原始中文故事以及翻译要求。
展示翻译成果
为了直观查看第二路分支的最终译文:
- 将第二个 Agent 的 output 输出连入 DisplayText 节点;
- 点击运行工作流;
- 执行完毕后,DisplayText 节点内将优雅呈现翻译成英文的文本:
深入理解执行控制链 (Exec Chain)
Griptape Nodes 中一个极其关键的高级概念是执行控制链 (Execution Chain)。随着工作流规模逐步膨胀,精确控制算子的执行先后顺序至关重要:
- 注意观察每个节点顶部两侧的半圆形控制流插脚(分别代表
exec in输入与exec out输出); - 这些控制端口专门用来显式定义节点的运行顺序;
- 在复杂的工程流水线中,你可以按照期望的执行先后次序依次连通这些控制流端口;
- 这能确保各节点严格按照既定步调执行,即使底层数据流关系盘根错节也不会发生混乱。
数据驱动与控制链的关系
默认情况下,Griptape Nodes 会通过深度分析数据端口依赖拓扑,全自动推导最优的拓扑执行次序。
但是,当你需要超越数据依赖进行更确定性的时序锁定,或者协同多个无直接数据连接的旁路任务时,控制流执行链就派上了大用场。使用控制链无需付出任何运行时代价,只要确保逻辑顺序合理即可。对于最简短的数据拓扑,该连线并非强制必填。
进一步扩展:汇总并提炼双语故事摘要
现在让我们为整个工作流追加画龙点睛的一笔——接入一个统揽全局的摘要智能体,综合分析两条平行故事:
- 再添加一个新的 MergeTexts 节点,用于合并西语与中文两路分支的英文译文:
- 在该 MergeTexts 节点的 input_1 中输入指令:
Summarize both these stories(请对这两个故事进行综合摘要提炼); - 将原西语分支的英文译文输出以及新中文分支的英文译文输出,分别连入该 MergeTexts 节点的另外两个输入端口;
- 在该 MergeTexts 节点的 input_1 中输入指令:
- 添加一个新的 Agent 节点作为“摘要分析师”;
- 将 MergeTexts 的输出连入该 Agent 的 prompt 端口;
- 将该 Agent 的输出连入一个新的 DisplayText 节点;
- (可选)使用控制链连线将此摘要步骤显式锁定在整个流程的最末端执行。
运行完整的复合流水线
点击运行全局工作流,静静观察整个流水线的接力推演:
- 上游两路智能体各自用不同语言(西班牙语和中文)创作原创微型故事;
- 两组 MergeTexts 算子分别组装针对这两则故事的英译指令;
- 两组中游翻译智能体分别将其转译为地道的英文;
- 末端的摘要智能体将两篇英文译文融汇提炼,归纳出主旨思想;
- 所有最终产物分别在各自的 DisplayText 控件中清晰呈现。
结果验证要点
请关注执行结果的逻辑构造与推演脉络是否完备,文字本身的具体叙述会因为大模型的创造力而千变万化,这正是智能体编排的魅力所在!
课程总结
在本篇教程中,我们学习了:
- 工作流如何在多个 AI 智能体之间层层接力流转任务;
- 如何利用 MergeTexts 文本合并算子动态组装上下文与高阶 Prompt;
- 控制流执行链 (Exec Chain) 在强定时序编排中的关键价值;
- 如何在现有工作流中并行扩展分支并最终汇聚至综合分析智能体。
下一课预告
在接下来的下一课中:第 4 课:提示词工程对比实验,我们将学习如何将多智能体接力协同与视觉图像生成深度融合,探索多维度的生图提示词强化策略!