使用
以下为使用工作流的基本流程。
第一步:创建工作流
进入工作流页面,点击创建工作流。
若该工作流需要在智能体内被调用,请务必将“描述”部分写得足够清晰和详尽,以便于大模型(LLM)理解,并在合适的时机调用。
填写完关于创建工作流的描述后,点击确定。页面将自动跳转至工作流的画布,您可以开始编排工作流。
第二步:编排工作流
添加节点
您可以通过以下两种方法在画布上添加工作流节点:
- 方法一:点击画布下方的添加节点并点击选择需要的组件。组件之间建立连接关系后即可视为一个工作流中的各个节点。
注:在工作流中,连接后的每一个组件均视为一个节点。所有组件均带有绿色的连接端口:左侧为输入端口,右侧为输出端口(“开始”组件只有输出端口,“结束”组件只有输入端口)。通过连接不同组件之间的端口,即可定义它们在工作流中的执行顺序与数据流向。
- 方法二:若要在现有组件下游添加新节点,点击其输出端口(右侧)并选择目标组件。重复此操作可继续添加多个节点。通过此方法,原有组件与新添加的组件之间将自动生成连接线。
连接节点
通过连接节点,您可以指定它们的执行顺序和数据流动方向。
使用方法一添加节点时,您可以按照以下步骤连接节点:
- 确定各节点上下游关系;
- 长按上游节点的输出端口(右侧),将连接线拖拽至下游组件的输入端口(左侧),随后松开鼠标即可完成连接。
如需移除连接线,点击目标连接线后按下键盘上的删除键即可删除。
配置节点
点击节点卡片本体,即可打开节点配置面板,继而开始配置节点。
配置节点的过程,系统都将自动保存,因此配置完毕后,直接离开即可。
删除节点
有以下两种方式删除节点:
- 点击目标节点,按下键盘上的删除键即可删除该节点;或
- 点击目标节点右上角的菜单键 ⋮,点击删除即可。
注意:删除某个节点后,与该节点相连的连接线都将断开。
操作模式
工作流画布支持“鼠标模式”(适合电脑操作)和“触控板模式”(适合平板、触控屏操作)。您可以通过点击画布下方对应的图标切换操作模式。
第三步:测试节点
节点测试指的是对某个单一节点进行功能测试,以确保其执行和输出是符合开发者预期的。节点测试并不依赖上下游节点,它仅作为一个独立个体进行测试。
按下列步骤可对某个节点进行测试:
- 点击目标节点右上角的测试按钮(▶)以打开测试面板。(此时面板上的输入项与该节点定义的入参变量是一致的。)
- 在测试面板input栏输入需要测试的变量值,点击运行。
运行测试后,您可以切换到输出页面查看测试结果
第四步:试运行工作流
试运行指的是对整个工作流进行一次整体运行测试,以确保工作流的执行和输出是符合开发者预期的。试运行的通过是工作流发布的前提,没有试运行成功的工作流是无法被发布的。
按下列步骤可对工作流进行试运行:
- 点击工作流配置窗口右上角的试运行按钮以打开试运行面板。(此时面板上的输入项与工作流“开始”节点中定义的入参变量是一致的。)
- 在试运行面板input栏输入需要测试的变量值,点击运行。
执行试运行后,您可以切换到输出页面查看测试结果。
第五步:保存工作流
在工作流的编排过程中,系统会自动保存编排与节点配置信息。您也可以随时通过手动保存功能,将当前配置创建为命名版本,用于变更追溯。
操作流程如下:
- 点击工作流配置窗口右上角的保存按钮。
- 系统将弹出版本保存对话框。请填写必要描述信息后点击确认。
通过手动版本保存功能,您可以查看版本历史记录,并在必要时执行版本回滚操作。
版本恢复操作流程如下:
- 点击工作流配置窗口右上角的发布按钮以进入发布管理页面。
- 在弹出的发布管理页面中,找到版本记录中想要恢复的版本,点击还原。
第六步:发布工作流
在工作流试运行通过后,您可以选择相应的版本进行发布。只有发布后的工作流才能被用户访问和使用。
按下列步骤可以发布工作流:
点击工作流配置窗口右上角的发布按钮。
在弹出的发布管理页面中:
- 点击保存版本将当前配置保存为一个命名版本;保存后,您可以在页面下方的版本记录中找到对应的版本进行发布;或者
- 在页面下方的版本记录中选择一个保存好的版本,点击发布即可发布该版本工作流。
第七步:将工作流作为API使用或将其集成到智能体中
工作流可以被视为API接口使用,也可以作为工具加入到智能体中。
应用一:API 调用
在工作流配置窗口,进入集成页面,并打开API功能开关。
点击管理进入API Keys管理页面,并点击创建API Key,为API Key命名。
创建好API Key后,点击其复制图标,并粘贴进要发送的请求中。
请求
curl --location --request POST 'https://api.gptbots.ai/v1/workflow/invoke' \
--header 'Authorization: <your_api_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
"userId": "<your_user_id>",
"input": {
<your_start>
}
}'
将<your_api_key>
替换为刚刚复制的 API Key,并将your_start
替换为工作流“开始”节点内配置的入参。
字段 | 类型 | 必填 | 说明 |
---|---|---|---|
userId | string | 否 | 用于标记本次请求的发起人。 |
input | object | 是 | 即工作流的“开始”节点。该对象内需填入与工作流“开始”节点内配置的完全一致的入参结构。 |
响应
{
"workflowRunId": "xxxx-5b15-4cbf-999c-1b218934xxxx",
"input": {
"input": "失恋了怎么办?"
},
"output": {
"output": "失恋是一种很正常的人生经历,虽然痛苦,但它也可以成为成长和自我反思的契机。以下是一些建议,希望能帮到你:\n\n..."
},
"workflowExecutionTime": 24277,
"status": "SUCCEED",
"totalCost": 1.3754,
"totalTokens": 3464,
"startTime": 1741768313025,
"endTime": 1741768337310
}
字段 | 类型 | 说明 |
---|---|---|
workflowRunId | string | 工作流运行 ID,用于唯一标识本次执行。 |
input | object | “开始”节点的输入内容,与请求中的 input 相同。 |
output | object | “结束”节点的输出内容,包含工作流执行的结果。 |
workflowExecutionTime | number | 工作流执行耗时,单位为毫秒。 |
status | string | 工作流的调用状态,可能的值包括: * SUCCED:成功 * FAILED:失败 * RUNNING:运行中 |
totalCost | number | 总消耗费用(所有节点总和),单位为积分。 |
totalTokens | number | 总消耗 Token 数(所有节点总和)。 |
startTime | number | 开始时间戳,毫秒级。 |
endTime | number | 结束时间戳,毫秒级。 |
应用二:智能体调用
选择一个目标智能体(Agent/Flow-Agent):
- Agent调用时:进入智能体“配置”页面,并找到“工作流”。
- Flow-Agent调用时:进入智能体”配置页面,点击“编辑“进入配置画布。选择画布内任意LLM组件进入其设置面板,并找到“工作流”。
您可通过以下简单的操作完成工作流的添加:
- 展开工作流配置窗口。
- 点击添加工作流。
- 在弹出的窗口,选择需要的工作流,并点击添加。
为最大程度地发挥工作流的作用,建议您在LLM的“身份提示(Identity Prompt)”中添加有关工作流的详细触发条件,明确 何时 调用工作流。
当您清晰地定义了工作流的触发条件时,智能体的LLM将在用户输入的内容满足规定的条件时,自动调用该工作流,并以此为依据生成答复内容。