1.工作流概述
“交小智”中的工作流是一系列有序的任务和操作,用于实现特定目标或完成特定业务流程。它可以包括多个步骤,每个步骤有特定任务和操作,可根据需要进行分支、循环和条件判断等。工作流的目的是提高工作效率、减少错误和重复劳动,同时提高业务流程的可控性和可管理性。
l工作流支持通过可视化的方式,对插件、大语言模型、代码块等功能进行组合,从而实现复杂、稳定的业务流程编排。当目标任务场景包含较多的步骤,且对输出结果的准确性、格式有严格要求时,适合配置工作流来实现。实际应用中,工作流可用于各种场景,如订单处理、客户服务、项目管理等。
l支持工作流添加大语言模型、代码、知识库、选择器、插件、工作流等节点,拓展其工作流的流程。
l支持对工作流的发布,试运行,展示运行结果等。
l支持对工作流的导入、导出、编辑、删除等管理操作。
2.创建工作流
1.登录“交小智”。
2.进入目标工作空间,选择工作流,点击创建工作流。
3.设置工作流的名称与描述,并单击确认。
4.创建完成后,可以在工作流管理的页面列表中,看到该工作流。
3.配置工作流
点击工作流名称或右侧的编辑按钮,进入工作流的编辑页面。工作流由多个节点构成,节点是组成工作流的基本单元,包含大模型、代码、知识库、选择器、插件、工作流等技能节点配置使用。工作流默认包含了Start和End节点。
节点与节点之间可以通过链接线连接并关联,形成从开始到结束的流程,一个节点可以连接并关联10个分支的下游节点,最大支持10个分支下游节点 |
3.1.Start节点
工作流的起始节点,用于设定启动工作流需要的信息。
3.2.end节点
工作流的最终节点,用于返回工作流的运行后的结果信息。
3.3.大模型
调用大语言模型,使用变量和提示词生成回复
•适用场景(举例):
○文档处理场景:
▪内容生成:大模型能够利用其强大的语言生成能力,根据给定的主题、要求和数据,快速生成结构合理、语言流畅的文档内容。例如,在市场部门的工作流中,要生成一份产品推广方案,大模型节点可以基于产品特点、目标受众等输入信息,自动生成包含市场分析、推广渠道建议、预期效果评估等部分的推广方案文档。
▪文档翻译:大模型能够理解源语言的语义,并准确地将其转换为目标语言,且能保持文档的风格和逻辑连贯。比如,将一份英文技术文档翻译为中文,大模型可以处理其中复杂的技术术语和句子结构,输出质量较高的翻译文档。
▪文档摘要提取:大模型节点可以对长篇文档进行语义分析,提取出核心要点并生成摘要。例如,在法律文件审查工作流中,大模型可以提取合同中的关键条款、责任界定等要点,帮助工作人员快速了解文档重点,节省时间并提高效率。
○数据分析与预测场景:
▪数据预处理和特征提取:在数据分析工作流的初始阶段,大模型可以作为一个节点用于数据预处理。它可以帮助理解数据中的文本信息,例如对客户反馈的文本数据进行情感分析,提取出其中的情感倾向(积极、消极或中性)作为一个新的特征。同时,对于一些非结构化的数据,如日志文件中的文本描述,大模型可以协助提取有价值的信息用于后续的数据分析。
○智能客服与对话管理场景:
▪对话理解与意图识别:在客户服务工作流中,大模型节点能够更好地理解客户咨询的意图。当客户发送一个复杂的问题,如“我购买的这个产品出现了故障,我想知道维修的流程以及是否在保修期内,还有如果需要付费维修大概要多少钱”,大模型可以准确地解析出其中包含的产品维修、保修期查询和维修费用查询等多个意图,为后续的客服响应提供精准的指导。
▪自动回复生成:大模型节点可以根据识别出的意图,自动生成回复内容。它可以生成自然、友好且准确的回复,提升客户体验。例如,针对上述客户关于产品维修的问题,大模型可以结合产品知识库和维修政策,生成类似于“您好,首先请您查看产品序列号来确定是否在保修期内。如果在保修期内,我们会提供免费维修服务。如果不在保修期内,维修费用会根据故障类型而定,具体情况我们需要您提供更详细的故障描述后才能确定”的回复
○流程自动化与智能决策场景
▪规则提取与自动化流程优化:在工作流中,大模型可以分析现有的流程文档和操作记录,提取其中的规则和模式,帮助企业优化自动化流程。例如,在供应链管理工作流中,大模型可以分析采购订单、库存管理记录和物流配送数据,找出可以优化的环节,如自动调整补货点、优化运输路线等,从而提高供应链的效率
•支持对大模型单个节点进行节点调试
3.4.代码
•编写代码,处理输入变量来生成返回值
•适用场景(举例):
○数据处理与分析场景
▪数据清洗和预处理:对于非结构化数据,如文本数据,代码节点可以进行预处理操作。例如,在自然语言处理相关的工作流中,对文本进行分词、词法分析和停用词删除等操作。使用Python的nltk(自然语言工具包)库可以很方便地实现这些功能,从而为后续的文本分析或分类任务提供更干净、更有价值的数据。
▪数据分析与挖掘:在工作流需要对数据进行复杂的统计分析或挖掘潜在模式时,代码节点可以发挥重要作用。例如,在金融领域的智能体工作流中,需要对股票价格数据进行分析,以预测股票走势。可以在代码节点中编写代码来计算移动平均线、相对强弱指标(RSI)等技术分析指标,使用机器学习算法(如使用Scikit - learn库实现线性回归或决策树模型)来建立预测模型,并根据分析结果为投资决策提供支持。
○自动化任务执行场景
▪文件和资源管理:智能体可能需要对文件进行批量操作,如在一个数据备份工作流中,代码节点可以用于实现定期备份文件的功能。可以编写代码来遍历指定文件夹中的文件,将其复制到备份存储位置。例如,在Python中使用os和shutil模块,通过os.walk函数遍历目录树,使用shutil.copy2函数进行文件复制操作,同时可以记录备份的文件列表和时间戳等信息。
○系统交互与集成场景
▪内部系统协同:在企业内部存在多个不同的软件系统和模块,智能体的工作流可能需要在这些系统之间进行协同。例如,企业资源规划(ERP)系统和制造执行系统(MES)之间需要数据交互。代码节点可以编写代码来实现数据的传递和同步,如从ERP系统中获取生产计划数据,传递给MES系统用于生产调度和现场执行,同时将MES系统中的生产进度和质量数据反馈回ERP系统,实现企业内部生产流程的智能化管理。
IDE编辑器:点击后,可弹出IDE编辑器弹窗,可编辑和测试代码。
支持选择Javascript、Python两种开发语言编辑代码。
支持点击【测试代码】后,填写输入值测试并运行输出内容,对输出无错误的代码支持复制和同步更新输出值到Schema。
支持对代码单个节点进行节点调试。
3.5.知识库
在选定的知识中,根据设置的召回分段数数量和要求的相似度设置值来召回最匹配的分段信息,并以List形式返回。
•支持对知识库单个节点进行节点调试
3.6.选择器
连接多个下游分支,根据设定的条件按照顺序查找的方式来匹配运行的分支,如果匹配到某条件则只运行该条件对应的分支,否则继续匹配下一条件直至结束。
3.7.插件
通过插件可以扩展智能体的能力,使智能体能与外部环境交互,通过连接其他的系统或服务完成复杂的任务。
•支持对插件单个节点进行节点调试
3.8.工作流
通过引用工作流类型节点实现将复杂的任务或流程按照子功能或者子模块能力拆分,从而使流程细化、便于管理和维护。
补充说明:当前工作流只支持两级,即已经嵌套其他工作流的flow不再支持被嵌套使用 |
支持对工作流单个节点进行节点调试。
4.工作流画布操作
试运行:配置完成的工作流,需要先进行试运行,试运行通过后才可发布。发布后,智能体可添加使用以搭建一个产品售后机器人为例,演示如何配置工作流模式智能体的专属工作流。
产品售后机器人主要用于售后场景,提供基础的问答服务与售后问题过滤的能力。在这个工作流中,首先通过大模型节点对问题进行分类,并通过选择器节点将不同类型的问题流转到不同的分支处理,最终在结束节点引用各个分支的输出。详细配置说明如下:
环节 |
节点类型 |
说明 |
示例 |
开始 |
开始节点 |
开始节点用于接收用户问题,并透传给后续的节点。 |
|
识别用户意图 |
大模型节点 |
本示例中,大模型节点用于识别进线用户的意图,判断用户问题的分类。 |
|
分发用户问题 |
选择器节点 |
选择器节点用于将问题进行分发,转交给不同的分支进行处理,例如将产品咨询问题转交给咨询类知识库处理,故障排查类问题转交给故障排查知识库处理。 |
|
处理用户问题 |
知识库节点、大模型节点 |
产品咨询分支和故障排查分支均使用此逻辑。处理流程如下: 1.知识库节点匹配用户问题。 2.大模型节点包装回复。如果未匹配到知识库,则返回兜底文案。 |
|
结束 |
结束节点 |
根据前置步骤生成的最终答案,输出智能体的回复内容。你可以通过输出变量直接引用前置节点的返回数据。 |
5.使用工作流
5.1.智能体使用工作流:
(1)选择目标空间中的目标智能体。
(2)在智能体编排页面的技能添加区域,选择工作流点击添加,可添加当前空间内已发布的工作流。
5.2.工作流使用工作流:
(1)在目标空间中的工作流页面,选择目标工作流。
(2)在工作流编辑页面的左侧技能添加区域,选择工作流点击添加,可添加当前空间内已发布的工作流。