基于Dify的工作流简单测试

文章目录

    • 工作流定义
    • 工作流构建
      • 新建工作流
      • 任务分解
      • 任务分类
      • 任务执行
        • 日常聊天任务执行
        • 计算字符串长度的三次幂任务执行
        • 获取ip地址任务执行
        • 其他任务不执行
      • 变量汇集
      • 结果返回
      • 效果展示

工作流定义

下面是工作流官方文档中给出的工作流定义,其实工作流与Agent调用的对象是一样的,都是预先定义好的智能体。不过工作流是在一个确定的任务空间里面,根据预定义的长且复杂的智能体链条去完成任务;Agent则要利用大模型的语义理解能力,首先从无穷的语义空间中进入一个有限的任务空间,再将潜在的智能体空间与这个任务空间做对齐,通过重复的思考-尝试-反馈思维链条去迭代出一个相对来说较为简单的智能体调用链。

工作流通过将复杂的任务分解成较小的步骤(节点)降低系统复杂度,减少了对提示词技术和模型推理能力的依赖,提高了 LLM 应用面向复杂任务的性能,提升了系统的可解释性、稳定性和容错性。

工作流构建

新建工作流

新建工作流时注意不要选工作流,而要在聊天助手下面选择,不然无法引入聊天相关的变量
在这里插入图片描述

新建一个工作流,开始时会看到下面这堆东西
在这里插入图片描述

除了知识检索这里暂时不尝试,接下来把里面的东西基本都试一遍,注意工作流不支持多轮对话功能,用户只能在最开始的时候输入一个query。因此这里的计划是让用户在一开始的时候输入一个或多个任务,后续通过迭代操作对任务进行解析和执行。

任务分解

首先将用户输入的一个或多个任务进行拆解,开始节点中包含以下变量,我们这里就用到query,也就是用户在对话框中的输入
在这里插入图片描述
假设用户输入可以按照,分解成多个任务,引入代码执行模块将其转化成列表
在这里插入图片描述

任务分类

引入迭代模块,以分别执行不同的子任务
在这里插入图片描述
对每个任务的意图进行识别
在这里插入图片描述

对非对话任务分类
在这里插入图片描述

任务执行

在条件分类器中确定不同子任务的类别之后,就进入各自任务的执行工具链中

日常聊天任务执行

确定任务为日常聊天之后,调用LLM来回答提问
在这里插入图片描述
在这里插入图片描述

计算字符串长度的三次幂任务执行

首先使用参数提取工具提取出对应字符串
在这里插入图片描述
接下来依次调用两个自定义工具
在这里插入图片描述
在这里插入图片描述

获取ip地址任务执行

通过HTTP请求获取IP地址
在这里插入图片描述
提取返回值中的IP地址
在这里插入图片描述

其他任务不执行

如果是其他任务,使用代码执行模块返回一个报错变量
在这里插入图片描述

变量汇集

子任务执行完后,将上述不同分支的返回值汇总到同一个变量中
在这里插入图片描述
迭代体内的整体流程如下
在这里插入图片描述

结果返回

迭代体外加一个直接回复,注意迭代体的输出要设置成变量聚合器
在这里插入图片描述
工作流的整体流程如下
在这里插入图片描述

效果展示

点击预览,在对话框中输入如下内容

你好,查一下ip地址是什么,计算"哈哈哈哈哈"这个字符串的长度的三次幂,查一下明天的天气,再见

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/888583.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

java:pdfbox 3.0 去除扫描版PDF中文本水印

官网下载 https://pdfbox.apache.org/download.html下载 pdfbox-app-3.0.3.jar cd D:\pdfbox 运行 java -jar pdfbox-app-3.0.3.jar java -jar pdfbox-app-3.0.3.jar Usage: pdfbox [COMMAND] [OPTIONS] Commands:debug Analyzes and inspects the internal structu…

《Windows PE》4.3 延迟加载导入表

延迟加载导入表(Delayed Import Table)是PE文件中的一个数据结构,用于实现延迟加载(Lazy Loading)外部函数的机制。 延迟加载是指在程序运行时,只有当需要使用某个外部函数时才进行加载和绑定,…

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了! 在多模态领域,开源模型也超闭源了! 就在刚刚结束的Met…

VSCode运行QT界面

VSCode用久了,感觉Qt Creator的写起代码来还是不如VSCode得心应手,虽然目前还是存在一些问题,先把目前实现的状况做个记录,后续有机会再进一步优化。 当前方式 通过QtCreator创建一个CMake项目,然后使用CMake的方式在VSCode中进行编译。 claude给出的建议 左上角的名字会…

C++ 算法学习——1.6 前缀和与二维前缀和算法

前缀和算法(Prefix Sum Algorithm): 概念:前缀和算法通过在遍历数组时计算前缀和(从数组的第一个元素开始累加到当前元素的和),可以在O(1)时间内得到任意区间的子数组和,而不需要重复…

详解 PDF 转 JPG:简单操作,高效转换

如今,众多软件都已具备将PDF转换为JPG的功能,所以pdf怎么转换成jpg图片已经不难解决了吧。接下来,我想分享几款依然保存在我电脑中,且非常实用的PDF转JPG工具给大家。 1.福昕PDF转换大师 链接一下>>https://www.pdf365.cn…

【2024年10月测试通过】conda下使用虚拟环境安装最新版pytorch2.4+cuda12.4

开头先说重点: 1.采用conda的虚拟环境,会在沙盒环境下安装好所有所需包,而且该虚拟环境拷贝给其他人员可以直接用,很方便。 2.pytorch官网访问不了,有一个国内镜像推荐,地址为PyTorch - PyTorch 中文 3.…

OXO:一款针对Orchestration框架的安全扫描引擎

关于OXO OXO是一款针对Orchestration框架的安全扫描引擎,该工具可以帮助广大研究人员检测Orchestration安全问题,并执行网络侦查、 枚举和指纹识别等操作。 值得一提的是,OXO还提供了数十种其他的协同工具,包括网络扫描代理&…

erlang学习:Linux命令学习10

从百度网盘下载文件 共享百度网盘获得链接 https://pan.baidu.com/s/1iUOTAWr1SRlL2fBZ7lIV拿到链接之后在浏览器中进行下载,可以查看下载链接 右键这些文件即可得到下载链接 类似于长这样 https://bdbl-cm01.baidupcs.com/file/b02f72906b3d0d07130be625eabc76…

出海快报 | “三消+短剧”手游横空出世,黄油相机“出圈”日本市场,从Q1看日本手游市场趋势和机会

编者按:TopOn出海快报栏目为互联网出海从业者梳理出海热点,供大家了解行业最新发展态势。 1.“三消短剧”横空出世,融合创新手游表现亮眼 随着竞争的加剧,新产品想要突出重围,只能在游戏中加入额外的元素。第一次打开…

java复制查询数组-cnblog

java数组 复制数组 copyOf(待复制数组,复制后新数组的长度) 如果复制后数组的长度,长于原来数组,多出来的元素会被补0,如果新数组元素少会从第一个元素,取到指定元素长度 package nb;import java.util.Arrays;public class co…

行业预测 60TB 硬盘将于 2028 年到来

在硬盘容量增长停滞了一段时间后,在短短四年内从目前的 30TB 增长到 60TB 将是一个巨大的增长。 然而,这正是 IEEE 最新发布的《海量数据存储设备和系统国际路线图》报告所预测的。 该路线图预计 2028 年市场上将出现 60TB 的硬盘驱动器。 这一增长将由一…

Flet介绍:平替PyQt的好用跨平台Python UI框架

随着Python在各个领域的广泛应用,特别是在数据科学和Web开发领域,对于一个简单易用且功能强大的用户界面(UI)开发工具的需求日益增长。传统的Python GUI库如Tkinter、PyQt虽然功能强大,但在易用性和现代感方面略显不足…

计算机毕业设计 | SpringBoot 房屋租赁网 租房买房卖房平台(附源码)

1,绪论 1.1 背景调研 在房地产行业持续火热的当今环境下,房地产行业和互联网行业协同发展,互相促进融合已经成为一种趋势和潮流。本项目实现了在线房产平台的功能,多种技术的灵活运用使得项目具备很好的用户体验感。 这个项目的…

Authentication Lab | Client Side Auth

关注这个靶场的其它相关笔记:Authentication Lab —— 靶场笔记合集-CSDN博客 0x01:Client Side Auth 前情提要 有些时候,开发人员会将身份验证的逻辑写于前端,这样写是十分不安全的,因为前端的代码几乎全部都是可见的…

C#多线程基本使用和探讨

线程是并发编程的基础概念之一。在现代应用程序中,我们通常需要执行多个任务并行处理,以提高性能。C# 提供了多种并发编程工具,如Thread、Task、异步编程和Parallel等。 Thread 类 Thread 类是最基本的线程实现方法。使用Thread类&#xff0…

快递查询软件:实现单号识别与批量物流查询的高效工具

随着网络购物的普及,快递物流行业迎来了前所未有的发展机遇,同时也面临着巨大的挑战。跟踪物流信息成为一个难题,因此,快递查询软件的核心功能之一便是单号识别。传统的快递单号输入方式繁琐且易出错在此背景下,快递查…

代码随想录day22:回溯part4

491.递增子序列 class Solution {List<List<Integer>> result new ArrayList<>();List<Integer> path new ArrayList<>();public List<List<Integer>> findSubsequences(int[] nums) {backTracking(nums, 0);return result;}priv…

如何基于 RLHF 来优化 ChatGPT 类型的大语言模型

&#x1f6b4;前言 对于ChatGPT来说&#xff0c;RLHF是其训练的核心。所谓RLHF&#xff0c;即Reinforcement Learning with Human Feedback&#xff0c;基于人类反馈的强化学习。这项技术通过结合模型自身的生成能力和人类专家的反馈&#xff0c;为改进文本生成质量提供了新的…

计算机网络-------重传、TCP流量控制、拥塞控制

重传、滑动窗口、流量控制、拥塞避免 重传机制 超时重传 发送方在发送数据时会启动一个定时器&#xff0c;当超过指定的时间之后&#xff0c;还没接收到接收方的ACK确认应答报文&#xff0c;就会重传该数据 快重传 当发送方收到接收方三个连续的ack之后说明发送方发送的报…