【AI Agent系列】【阿里AgentScope框架】5. Pipeline模块的组合使用及Pipeline模块总结

大家好,我是 同学小张,持续学习C++进阶知识AI大模型应用实战案例,持续分享,欢迎大家点赞+关注,共同学习和进步。


前面咱们已经深入学习了AgentScope框架中Pipeline模块的使用和实现原理,本文来总结一下这些Pipeline,以及探索一下各种Pipeline的组合用法。

0. 前置推荐阅读

本文参考:https://modelscope.github.io/agentscope/zh_CN/tutorial/202-pipeline.html

1. Pipeline的使用方式总结

1.1 两种Pipeline分装

从前面的文章可以看出,AgentScope提供了两种Pipeline的使用方式,分别为类类型的Pipeline和函数式的Pipeline

以顺序式Pipeline为例,你既可以使用 SequentialPipeline 这种类类型的Pipeline

# 实例化并调用
pipeline = SequentialPipeline([agent1, agent2, agent3])
x = pipeline(x)

又可以使用 sequentialpipeline 这种函数式的Pipeline

# 直接调用
x = sequentialpipeline([agent1, agent2, agent3], x)

1.2 内置Pipeline类型一览

类类型Pipeline函数式Pipeline描述
SequentialPipelinesequentialpipeline按顺序执行一系列运算符,将一个运算符的输出作为下一个运算符的输入。
IfElsePipelineifelsepipeline实现条件逻辑,如果条件为真,则执行一个运算符;如果条件为假,则执行另一个运算符。
SwitchPipelineswitchpipeline实现分支选择,根据条件的结果从映射集中执行一个运算符。
ForLoopPipelineforlooppipeline重复执行一个运算符,要么达到设定的迭代次数,要么直到满足指定的中止条件。
WhileLoopPipelinewhilelooppipeline只要给定条件保持为真,就持续执行一个运算符。
-placeholder在流控制中不需要任何操作的分支,如 if-else/switch 中充当占位符。

1.3 Pipeline模块存在的意义

提供了一种多智能体间交互流程的控制逻辑封装,简化了代码。

下面是官方文档中展示的使用Pipeline和不使用Pipeline的代码对比:

在这里插入图片描述

可以看到,它简化了代码,其实也就是将原本需要用户写的控制语句,封装到了Pipeline中,省掉的这部分代码,与Pipeline中的实现源码基本一致。

以上示例省掉的那简单的几行控制逻辑可能看不出多大的作用,但是当逻辑复杂之后,这个Pipeline的作用就会显现出来。

2. Pipeline的组合使用示例

from agentscope.pipelines import SequentialPipeline, IfElsePipeline
# 创建一个按顺序执行智能体的 Pipeline
pipe1 = SequentialPipeline([agent1, agent2, agent3])
# 创建一个条件执行智能体的 Pipeline
pipe2 = IfElsePipeline(condition, agent4, agent5)
# 创建一个按顺序执行 pipe1 和 pipe2 的 Pipeline
pipe3 = SequentialPipeline([pipe1, pipe2])
# 调用 Pipeline
x = pipe3(x)

以上示例代码中,首先创建了一个顺序执行的Pipeline,然后创建了一个条件Pipeline,最后通过顺序Pipeline来执行前面的两个Pipeline。这样就实现了agentPipeline以及各类Pipeline的组合使用。

所以,你也看到了,Pipeline不光能传递进去一堆 agent,还能传递进去一堆 pipeline。为什么?因为Pipeline接收的实际是一堆Operator类型,只要继承了这个类型,都可以使用Pipeline

在这里插入图片描述

在这里插入图片描述

如果觉得本文对你有帮助,麻烦点个赞和关注呗 ~~~


  • 大家好,我是 同学小张,持续学习C++进阶知识AI大模型应用实战案例
  • 欢迎 点赞 + 关注 👏,持续学习持续干货输出
  • +v: jasper_8017 一起交流💬,一起进步💪。
  • 微信公众号也可搜同学小张 🙏

本站文章一览:

在这里插入图片描述

  • 16
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

同学小张

如果觉得有帮助,欢迎给我鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值