使用工作流创建的智能体,让你的智能体按照指定的流程运行,流程中可以自由添加知识库、代码、选择器、插件、大模型回答等内容,通过拖拽连接方式按照指定逻辑排列组合。
本案例通过工作流的方式创建一个校园百科智能体,实现提问校园相关知识使用学校官网知识库回答、学术相关知识通过arXiv工具回答。
1.创建工作流
·登录“交小智”。
·选择个人空间。
·选择工作流。
·选择创建工作流
2.工作流设计
填写工作流基础信息。
·填写工作流名称。
·填写工作流描述。
·填写工作流logo。
点击确认后进入工作流编辑页面。
进入后默认有start、End两个模块,所有的流程必须有start模块开始、end模块结束。
左侧可以添加组成工作流的其他模块:
·大模型:调用大语言模型,使用变量和提示词生成回复。
·代码:编写代码,处理输入变量来生成返回值
·知识库:在选定的知识中,根据设置的召回分段数数量和要求的相似度设置值来召回最匹配的分段信息,并以List形式返回。
·选择器:连接多个下游分支,根据设定的条件按照顺序查找的方式来匹配运行的分支,如果匹配到某条件则只运行该条件对应的分支,否则继续匹配下一条件直至结束。
·插件:通过插件可以扩展智能体的能力,使智能体能与外部环境交互,通过连接其他的系统或服务完成复杂的任务。
·工作流:通过引用工作流类型节点实现将复杂的任务或流程按照子功能或者子模块能力拆分,从而使流程细化、便于管理和维护。说明:当前工作流只支持两级,即已经嵌套其他工作流的fow不再支持被嵌套使用。
本次案例将使用到大模型、知识库、选择器、插件四种组件。
本案例的流程思路:
(1)通过大模型组件解析判断用户输入的问题属于学校百科知识还是学术论文查询,并通过提示词输出判断结果。
(2)通过将输出的结果给到选择器,选择器根据结果判断走到哪个分支。
(3)如果走到校园百科结果,就将用户问题交给知识库模块解答,知识库模块关联校园百科知识库。
(4)如果走到学术论文查询,就将用户问题交给另一个大模型模块对输入的内容进行翻译,翻译为英文后,交给插件模块解答,插件模块关联arXiv插件(由于arXiv插件要求输入内容为英文)。
(5)最后将输出结果都给到end模块输出最终给结果。
在流程编排过程中需要注意的事项:
(1)start模块中的变量名一般可以命名为query(代表用户的输入内容)。
(2)需要注意每个模块中的参数信息,如下图start模块中输入的内容为query,大模型01输入的内容需要重新命名一个参数,这个参数引用start中的query变量,这样的话用户的输入内容就会被传给大模型01。
(3)end模块输入内容如果有多个分支结果都要输出,需要把不同分支的输出参数都天骄到end模块中。
(4)流程编排完成后,点击右上角试运行,输入参数值进行测试。
直到所有模块输出成功后,才可以进行发布。
工作流创建完成后可以进行智能体的创建。
3.创建智能体
·在页面左上角蓝色按钮“创建智能体”。
·在创建智能体对话框中填写智能体相关描述。
o选择工作空间
o填写智能体名称
o上传智能体logo
o选择智能体类型,本次案例选择“对话型”
o填写智能体功能介绍
o点击确定按钮后进入编排配置
·创建完成后需要填写对应的提示词和选择已经创建的工作流。
·注意可以在提示词中强调让模型回答引用工作流来回复。
4.调试与预览
配置完成提示词、工作流后,进行调试与预览。
首先选择调用的模型,目前平台提供了doubao-pro-32k模型,直接选择即可。
至此校园百科智能体创建完成。
5.发布与备案
可以选择需要的方式进行发布。
发布完成后同时记得通过平台进行备案,详情参考《西安交通大学智能体备案指南》。