当前位置: 首页 > article >正文

DataWhale之工作流

工作流:制作复杂Agent的福音!

通过前面的学习大家已经可以制作一些agent应用,但大家可能会发现,好像就是一个Prompt工程,好像并没有完成Agent整体框架的搭建?是不是缺点什么?

可以回顾一下,Lilian Weng定义的Agent结构图

可以回顾一下,Lilian Weng定义的Agent结构图

所以,这一节我们将通过 工作流 拼上 agent开发 的完整拼图 —— 把 记忆、工具调用、步骤规划等 丝滑地结合、搭建起来!。

工作流低代码开发模式

工作流开发模式的加入,对于agent开发来说是一个里程碑事件。

支付宝百宝箱支持通过低代码模式,把原先代码开发的任务转换成节点的拼接,省去了编写代码的烦恼。

不同的节点组合也能让agent具备更强大的功能。

在支付宝百宝箱里你可以无限使用夸克搜索、知识库、代码、分支等 插件或节点(可以理解为通用的内置功能模块) 组合和套娃 ,实现复杂功能!

一个工作流示例

一个工作流示例

二、支付宝百宝箱中工作流介绍

需要新建工作流模式的应用

这里和创建其他应用一致,点击新建应用就可以创建一个工作流。

点击查看界面介绍

  • 左上角是题目区域,大家可以随时修改

  • 旁边是设置任务类型的地方,目前有任务模式、对话模式两种。但是设置了对话模式就切不回来咯请大家注意。

这里任务模式是指完成某项任务,不会重复对话。对话模式指用户可以多轮对话与 Agent做交互。

  • 左侧这个区域是节点区域,将工作流需要的功能模块化列在这里。下面我们会对节点一一介绍。

  • 最中间部分区域是工作流的画布,你可以在这个区域将节点拖拽到画布中,然后使用节点连线将节点们串起来。

注意,创作时必须有开始节点和结束节点,而且开始和结束节点是唯一的。开始节点只能往出引节点连线,而结束节点只能接受节点连线,中间的节点必须有出入连线,如果没有出入节点连线,设计的节点就不会被使用。这里大家可以理解为画电路图,有出和入电路才会通路。

  • 右上角有一部分是画布调整区域,可以放大缩小等。

  • 最右上角是运行和发布区域,运行按钮用于测试整个工作流。如果测试无误大家就可以点击发布进行应用发布。

点击查看不同的节点介绍

接下来我们逐一介绍几个常用的核心节点。

剩下大家可以自行学习探索~

【必须有的】开始节点

开始节点在工作流最开始会默认加入,我们看看有哪些细节要注意~其实开始节点目的是为了让工作流收集启动变量,这些变量需要用户输入接着用于其他节点配合使用。所以在配置时你需要想好需要用户输入什么,以及输入的怎么用。

①位置是测试开始节点内容。

④是修改变量名,可以传到下游的节点使用。

这里的②和③位置打开都是如下编辑字段设置的界面,

②是添加变量,可以选择单行、多行、下拉选项、上传图片。

③是修改变量设置

需要输入名称、描述、字数限制及是否必填,在下拉选择稍有不同,下拉选择需要填入选项的文本。

【必须有的】结束节点

结束节点是整个工作流的输出,选项中选择一个变量作为整体工作流的输出即可。

文本大模型

① 是节点测试按钮,可以单独测试大模型。

② 是模型选择,可以使用不同大模型。

③ 是模型高级设置,这里可以配置json输出模式及模型的参数。

④ 是提示词区域

⑤ 可以点击AI生成使用ai优化提示词,当需要输入变量(变量来自上一个节点)时,可以在提示词中预留变量的位置。

⑥ 是定义输出的名字,比如你有很多个大模型你可以写“大模型1结果”这样的字样方便标记与使用。

插件节点

这里是插件节点的主页,打开可以看到有很多种类的插件。

你可以在②中按需要查询插件。

当找到合适插件时可以点击③位置的三角展开插件,

找到需要的功能点击④这样的添加按钮。

当所有插件都无法满足需求时你可以点击①位置新建插件。

当选择某个插件后一般会有输入值与输出值两个区域,输入区域需要大家配好前面节点传入变量,这个变量可以是开始中收集的变量或是大模型的输出变量等等。

知识库节点

这里需要大家配置知识库,点击添加知识库即可。

这里面需要大家选择已有知识库或者创建新的知识库。目前有个小问题,如果知识库有但是不是需要的怎么办?你可以输入一个不相关的关键字搜索,也会跳到创建知识库的窗口或者直接点:百宝箱在知识库页面创建。

三、设计工作流 

  1. 做选题调研 :明确整个模型的输入输出。

  2. 功能模块设计 :思考需要用到功能模块,比如会用到什么知识库、插件、代码的组合、意图识别。

  3. 组合完整工作流 :明确数据从输入到输出的整个过程,具体需要由什么节点到什么节点。

如果需要的功能较为复杂可以将一个工作流拆分成多个工作流,最后将多个工作流作为独立节点组合在一个总工作流中。

  1. 模块测试 :需要测试prompt稳定性测试及每个节点的测试。

  2. 应用发布


http://www.kler.cn/a/457959.html

相关文章:

  • 浅谈下Spring MVC的执行流程
  • springboot+vue实现SSE服务器发送事件
  • 1、ELK的架构和安装
  • Unity-Mirror网络框架-从入门到精通之Basic示例
  • PyAudio库基本知识详解——为自制PCM音频播放器做准备
  • Presto-简单了解-230403
  • 基于Golang的记账系统的服务端的设计与实现
  • sentinel-请求限流、线程隔离、本地回调、熔断
  • 算法题(18):删除有序数组中的重复项2
  • 数据的简单处理——pandas模块——选择数据
  • Linux系统离线部署MySQL详细教程(带每步骤图文教程)
  • 常见的排序算法过程和比较分析
  • NLP基础知识 - 向量化
  • 人工智能-Python网络编程-HTTP
  • MNER多模态实体识别论文介绍,有关大模型和chatgpt
  • 《机器学习》从入门到实战——线性回归
  • 使用seata实现分布式事务管理
  • 【畅购商城】购物车模块之修改购物车以及结算
  • 【总结整理】 神经网络与深度学习 邱锡鹏 课后习题答案 扩展阅读链接
  • L2TP_VPN和IPSec_VPN
  • Java 访问数据库的奇妙之旅
  • 【算法思想04】二分查找
  • Zynq PS端外设之GPIO
  • 复习打卡大数据篇——Hadoop YARN
  • 安装winserver2008R2虚拟机步骤
  • Github Copilot 插件更新失败