在智能体的设计过程中,我一直觉得现在的Coze,Dfiy等有一个设计缺陷,就是无法实现多智能体的组合。大模型的关系完全是一维线性的,比如下面这样
但实际在业务流中,更多的是多维的。每个子功能都交给一个智能体进行负责。多个智能体是可以并行工作,而且还有调度智能体存在,它的作用就是分配不同的任务到不同的智能体。
这个功能要说做也是可以的,用意图识别的功能也能勉强实现。但终归是和业务本来的形态差得有点远。

但没想到,这个想法在n8n上实现了。最近, n8n的更新很频繁,升級到1.103版本后,n8n增加了不少重要的更新,其中就包括多智能体

上图是一个翻译工作流,包含1个调度Agent,3个翻译Agent。在收到用户需求后,调度Agent判断该由哪个智能体来执行任务,或者是大家一起执行。
01
多智能体配置
多智能体工作流的配置关键在于这个调度Agent。在这个调度Agent中,分别包含Promt以及System Message。

其中Prompt里面包含了从上一个节点传递过来的参数。而最关键的是System Message。里面定义了调度Agent的具体行为
你是一个任务调度器,不需要亲自执行任务。只需要根据用户的需求找到适合执行任务的智能体,并把用户的需求分配给他
在这里content: 奥特曼宣布发布GPT-5模型,具备博士水平。是待翻译的原句。
need: 翻译成英文,法文,日文。 是这次翻译的需求。
在工作流执行的时候,明显看到三个翻译智能体都同时的开始工作。
如果把need参数改成翻译成日文。就只会有日文翻译Agent会工作,其他Agent则不会工作。
上面的工作流还可以继续扩展,在每个翻译Agent下,我都调用的是DeepSeek模型进行处理。其实还可以做到多模型的处理。
比如下面这样,新增一个Model Selector进行模型判断

在Edit field中新增一个参数用于大模型的类型判断

然后在Model Selector中指定模型个数为2个,并且给每个模型指定rule,这样就根据rule调用不同的模型。

这样在执行的过程中,就可以切换不同的大模型来进行处理
02
继续优化升级
上面的工作流,只下挂了一层的Agent。 但第一层的翻译智能体能不能既做翻译,也做调度呢?
完全是可以的,请看下图。在翻译Agen下,又接了一层Agent。分别接了2个Agent, 一个tiktok,一个是youtube。作用是根据翻译的主题,进行对应平台的文案编写,并发送到对应的平台。

首先在English这个Agent中,Prompt增加了发送平台的参数,这个参数在Edit field中设置好的
然后在System Message后增加调度的提示词
翻译完后,然后根据需要发送的平台来选择对应的Agent进行平台内容的生成, 并把output参数返回给调度Agent
并在English agent中增加了返回配置,返回带2个参数,一个是english参数,就是翻译后的英文,第二个就是tiktok,也就是tiktok文案。
最后在English Agent下挂上tiktok和youtube两个Agent
在tiktok的提示词如下。
写在最后 今天用一个简单的翻译工作流的例子,来讲解了n8n上多智能体的工作原理
这一套多智能体的实现方式可以去改造很多的场景。这种方式在工作流上更加的简洁,省去增加了N多的判断节点。
n8n上的这个功能创意非常的好,不知道后面coze等平台会不会跟进。
#AI #AI工具 #Agent #智能体 #n8n #多智能体 #大模型 #人工智能
本篇文章来源于微信公众号: 程序猿玩AI
文章评论