【AI代理】扣子,开始探索多代理模式
AI魔法学院
2024-07-15
分享海报

代理模式不仅可以拓展大模型的功能(比如给大模型加上网页搜索,加入知识库等),还可以规避大模型的弱点(比如需求是一段代码,但是大模型回复的内容不单单包含代码,还有一些解释语句)。而多代理模式又有什么作用呢?

首先看看单代理模式和多代理模式有什么区别:

在一个提示中包含多个任务的情况下,单代理模式会让一个机器人完成所有任务,而多代理模式则可以将任务分配给多个机器人去完成。

比如说我们设定一个机器人负责回答职场方面的问题,另一个机器人负责回答生活方面的问题,通过对用户输入问题的判定,系统就会将此问题分配给对应的机器人去处理。再比如,我们有两个大模型,一个擅长文本处理,一个擅长输出图片,这样两个模型就可以组合成多代理模式。

扣子智能体系统也悄悄上线了多代理模式,今天我们来体验一下。

设定两个角色,一个是诸葛亮,一个是庞统:

 

模拟一般的对话场景,用户对谁说话,就由谁来应答:

 

可以设想,这种设定就可以用于游戏里NPC身份的设定,进而增强用户体验。

我们再来一个比较实验性的设定,比如:

 

假设代理1用的是擅长处理文本的模型,而代理2用的是擅长调用插件的模型(由于模型准确率还达不到百分百,有时候它并不能正确地执行用户的命令,所以我们假设有针对这方面的专门训练以提高执行率)。

对于一般的请求,可以由代理1处理,而搜索的请求则可以由代理2执行:

一般的请求:

 

搜索的请求:

 

但是,在把请求从代理1传达到代理2进而获取结果这个流程,扣子还是存在一些缺陷,需要改进的:

 

它告诉用户它将调用另一个代理,并且显示它确实调用了代理2,但是没有返回正确的结果。

最后,全局跳转条件的场景:

 

“正在对话”这个标签显示了当前哪个代理具有处理问题的优先权,扣子允许用户设定在一轮会话后,优先级是停留在刚处理完问题的代理,还是回到开始结点连接的第一个代理。而全局跳转条件则可以在任何条件下,一旦识别到用户问题中包含设定的关键字,就会跳转到“全局跳转条件”对应的代理。

比如,要求用C#写一段代码,虽然此时代理1并没有连接代理2,也会自动跳转到代理2进行处理:

 

多代理模式可以使场景更丰富,并且可以对每个子任务做更精细化、更准确化的处理,未来可期。后面我们继续探索。。。

OK,就到这。

 

 

 

出自:https://mp.weixin.qq.com/s/5HIf0sJEz0lKPCIIDkU1dA

© THE END

转载请联系本网站获得授权

投稿或版权问题请加微信:skillupvip