条件路由执行-j9九游会登录
介绍
条件路由执行是指工作流在运行过程中,根据某个条件的判断结果,将执行流程导向不同的处理分支。
这种范式解决了“不同输入需要不同处理逻辑”的问题:同一个工作流入口,根据运行时的实际情况,流向完全不同的执行路径,每条路径针对其场景做最合适的处理。
agentarts提供了两种路由节点,分别适用于不同的判断场景:
| 节点 | 判断依据 | 适用场景 |
|---|---|---|
| 判断节点 | 结构化变量(数字大小、字符串是否相等、布尔值等) | 评分高低分档、状态码路由、数值范围判断 |
| 意图识别节点 | 用户自然语言的语义意图 | 多功能助手的能力分发、用户诉求分类 |
原理
┌──→ [分支a节点链]
[上游节点] → [路由节点] ──→ [分支b节点链]
└──→ [兜底分支] 路由节点的核心逻辑:
- 判断节点:依次检查 if → else if → else,命中第一个满足条件的分支即执行,后续分支不再检查;条件越具体越应排在越前面。
- 意图识别节点:大模型对用户输入进行语义分类,将执行流导向匹配的意图分支,未命中任何意图时进入“其他意图”兜底分支。
每个分支是互斥的:同一次执行只有一条分支会运行。务必设置兜底分支,避免未覆盖的输入导致流程无法继续。
操作示例:作文智能点评工作流
场景描述: 用户输入一篇作文,工作流按照作文评分标准进行评分。大模型节点分别评定基础等级分(满分40分)和发展等级分(满分20分),并计算错别字、字数不足等扣分项,代码节点汇总计算最终得分(满分60分),判断节点按得分档次路由到对应的点评策略,给出最有针对性的反馈意见。
用户只需输入一篇作文即可运行,内容长短不限,几段话也能评分。
工作流结构:
[开始节点]
↓ essay(作文内容)
[大模型节点:按高考标准评分]
↓ basic_score(基础等级分0-40)、dev_score(发展等级分0-20)
deduction(扣分项合计)、score_detail(各维度评分说明)
[代码节点:汇总计算最终得分]
↓ total_score(最终得分)、score_breakdown(得分构成说明)
[判断节点:按档次路由]
├──→ if: total_score ≥ 50 → [大模型节点a:一类卷点评]
├──→ else if: total_score ≥ 35 → [大模型节点b:二类卷点评]
├──→ else if: total_score ≥ 20 → [大模型节点c:三类卷点评]
└──→ else: total_score < 20 → [大模型节点d:四类卷点评]
↓
[变量聚合节点:汇聚四条分支输出]
↓ group1(统一点评内容)
[结束节点] 创建工作流:
在agentarts左侧导航栏中选择“开发中心 > 智能体管理”,在“工作流”页签,单击“创建工作流”。
节点配置说明:
| 节点 | 配置说明 |
|---|---|
| 开始节点 | 原有基础上新增一个参数。
|
| 大模型节点 | 用于作文评分。
|
| 代码节点 | 用于汇总最终的计算得分。
|
| 判断节点 | 引用代码节点的 total_score,按以下顺序配置条件(注意从高到低排列,避免宽泛条件提前拦截):
|
| 大模型节点a | 放在if分支后面,用于一类卷点评,≥50分
|
| 大模型节点b | 放在else if 1分支后面,用于二三类卷点评,35-49分
|
| 大模型节点c | 放在else if 2后面,用于三四类卷点评,20-34分
|
| 大模型节点d | 放在else后面,用于四类卷点评,<20分
|
| 变量聚合节点 | 设置分组group1,按以下顺序添加四个变量(均为 string 类型):
|
| 结束节点 |
|
试运行:
在开始节点的essay参数中输入一篇作文,工作流会先打分,再自动进入对应分段的点评逻辑,输出针对性的反馈。
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨








