
# 条件路由执行
#### 介绍
条件路由执行是指工作流在运行过程中，根据某个条件的判断结果，**将执行流程导向不同的处理分支**。
这种范式解决了"不同输入需要不同处理逻辑"的问题：同一个工作流入口，根据运行时的实际情况，流向完全不同的执行路径，每条路径针对其场景做最合适的处理。
AgentArts提供了两种路由节点，分别适用于不同的判断场景：
表1路由节点 
| 节点     | 判断依据                     | 适用场景                |
|:---|:---|:---|
| 判断节点   | 结构化变量（数字大小、字符串是否相等、布尔值等） | 评分高低分档、状态码路由、数值范围判断 |
| 意图识别节点 | 用户自然语言的语义意图              | 多功能助手的能力分发、用户诉求分类   |
   
#### 原理
```
┌──→ [分支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左侧导航栏中选择"开发中心 \> 智能体管理"，在"工作流"页签，单击"创建工作流"。
图1任务型工作流   
![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002687790294.png "点击放大")
**节点配置说明：**
图2作文智能点评工作流   
![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002687790298.png "点击放大")
表2工作流各节点配置说明 
| 节点     | 配置说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|
| 开始节点   | 原有基础上新增一个参数。 - 参数名称：essay  - 参数类型：String  - 描述：待评阅的作文内容，直接粘贴正文即可，建议包含标题  - 必填：勾选   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002687790290.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| 大模型节点  | 用于作文评分。 - 模型：DeepSeek-V4-Flash  - 输入参数：essay，引用开始节点的 essay  - 输出格式：JSON，关闭流式输出  - 输出参数定义： - basic_score，类型Integer，基础等级得分，0-40分，依据题意、内容、语言、文体四项综合评定  - dev_score，类型Integer，发展等级得分，0-20分，依据深刻、丰富、有文采、有创意四项累计评定  - deduction，类型Integer，扣分项合计，包括错别字（每个-1分最多-5分）、字数不足、无标题等  - grade_level，类型String，基础等级档次判定，输出"一类卷"、"二类卷"、"三类卷"或"四类卷"之一  - score_detail，类型String，各维度评分的简要说明，包含扣分原因，200字以内    - 系统提示词： ``` 你是一位语文阅卷专家，请严格按照以下作文评分标准对作文进行评分。 【基础等级 满分40分】 一类卷（32-40分）：符合题意，中心突出，内容充实，思想健康，感情真挚； 文体规范，结构严谨，语言流畅，字迹工整。 二类卷（26-31分）：符合题意，中心明确，内容较充实，思想健康，感情真实； 文体规范，结构完整，语言通顺，字迹清楚。 三类卷（20-25分）：基本符合题意，中心基本明确，内容单薄，思想基本健康； 文体基本规范，结构基本完整，语言基本通顺，字迹较清楚。 四类卷（0-19分）：偏离题意，中心不明或立意不当，思想不健康； 文体不规范，结构混乱，语言不通顺，字迹难辨。 【发展等级 满分20分】 深刻（0-5分）：透过现象看本质，揭示事物内在联系，观点具有启发性。 丰富（0-5分）：材料丰富，论据充实，形象丰满，意境深远。 有文采（0-5分）：词语生动，句式灵活，善于运用修辞手法，文句有意蕴。 有创意（0-5分）：见解新颖，材料新鲜，构思精巧，推理想象有独到之处。 【扣分项】 错别字：每个错别字扣1分，重复不计，最多扣5分。 字数不足：少于800字每少50字扣1分最多扣3分；不足400字按低分处理（basic_score不超过19分）。 无标题：扣2分（计入deduction）。 违规：抄袭、严重偏题等，basic_score不超过20分，dev_score不超过5分。 【评分说明】 - basic_score 和 dev_score 分开评定，deduction 单独统计 - deduction 为正整数，代表需要扣除的总分数 - score_detail 中需说明基础等级判定依据、发展等级各项得分、扣分原因 仅输出原始JSON，不要包含任何Markdown代码块。 ```   - 用户提示词：{{essay}}   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002687950138.png "点击放大") |
| 代码节点   | 用于汇总最终的计算得分。 - 输入参数： - basic_score：引用大模型节点的 basic_score  - dev_score：引用大模型节点的 dev_score  - deduction：引用大模型节点的 deduction    - 输出参数： - total_score，类型Integer，最终得分  - score_breakdown，类型String，得分构成说明    - 代码内容： ``` def main(args: dict) -> dict: basic = args.get("basic_score", 0) dev = args.get("dev_score", 0) deduction = args.get("deduction", 0) # 边界保护：各分项不超过满分上限 basic = max(0, min(40, basic)) dev = max(0, min(20, dev)) deduction = max(0, min(10, deduction)) # 汇总计算，最终得分不低于0分 total = max(0, basic + dev - deduction) # 生成得分构成说明 breakdown = ( f"基础等级：{basic}/40分" f"发展等级：{dev}/20分" f"扣分项：-{deduction}分" f"最终得分：{total}/60分" ) return { "total_score": total, "score_breakdown": breakdown } ```    ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717549787.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| 判断节点   | 引用代码节点的 total_score，按以下顺序配置条件（注意从高到低排列，避免宽泛条件提前拦截）： - IF 条件：代码节点的total_score大于等于 50。用于统计一类卷水平（基础32+以上，发展分较高）  - ELSE IF 1 条件：total_score大于等于 35。用于统计二三类卷水平（基础分达标，发展分一般）  - ELSE IF 2 条件：total_score大于等于 20。用于统计三四类卷交界（基础分偏低，问题较多）  - ELSE，表示其余（total_score \< 20）。用于统计四类卷水平（需要重点指导）   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717549785.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| 大模型节点A | 放在IF分支后面，用于一类卷点评，≥50分 - 模型：DeepSeek-V4-Flash，输出格式：文本，**流式输出**  - 输入参数： - essay：引用开始节点的 essay  - score_detail：引用大模型评分节点的 score_detail  - score_breakdown：引用代码节点的 score_breakdown    - 输出参数：feedback_a  - 系统提示词： ``` 你是一位高考语文阅卷组长，正在为一篇高水平作文撰写精细点评。 本文评分情况：{{score_breakdown}} 阅卷评语：{{score_detail}} 该文已达到一类卷水平，请从以下角度给出进阶点评： 1. 【亮点赏析】指出2-3处最出彩的表达或立意，说明好在哪里 2. 【精益求精】找出1-2处仍可进一步打磨的细节，给出具体修改示范 3. 【发展等级提升】结合"深刻、丰富、有文采、有创意"四个维度， 指出哪个维度最有潜力继续提升，并给出具体方向 语气：以赏析为主，建议具体可操作，激励考生冲击更高分。 ```   - 用户提示词：{{essay}}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| 大模型节点B | 放在ELSE IF 1分支后面，用于二三类卷点评，35-49分 - 模型：DeepSeek-V4-Flash，输出格式：文本，**流式输出**  - 输入参数： - essay：引用开始节点的 essay  - score_detail：引用大模型评分节点的 score_detail  - score_breakdown：引用代码节点的 score_breakdown    - 输出参数：feedback_b  - 系统提示词： ``` 你是一位高考语文阅卷教师，正在为一篇中等水平作文撰写点评。 本文评分情况：{{score_breakdown}} 阅卷评语：{{score_detail}} 该文处于二三类卷水平，请从以下角度给出有针对性的改进意见： 1. 【基础等级短板】结合"题意、内容、语言、文体"四项， 指出得分最低的1-2项，说明具体问题在哪里 2. 【内容提升建议】指出论据或素材的不足之处， 推荐1-2个可以替换或补充的典型论据方向 3. 【语言改进示范】摘出原文中1-2处表达平淡的句子， 给出更生动有力的改写示例 4. 【发展等级入门】说明该文在"深刻、丰富、有文采、有创意" 中最容易突破的一项，给出具体建议 语气：客观指出问题，同时给出明确可操作的改进路径。 ```   - 用户提示词：{{essay}}   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002687790288.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| 大模型节点C | 放在ELSE IF 2后面，用于三四类卷点评，20-34分 - 模型：DeepSeek-V4-Flash，输出格式：文本，**流式输出**  - 输入参数： - essay：引用开始节点的 essay  - score_detail：引用大模型评分节点的 score_detail  - score_breakdown：引用代码节点的 score_breakdown    - 输出参数：feedback_c  - 系统提示词： ``` 你是一位高考语文辅导老师，正在帮助一位作文基础薄弱的学生进行针对性辅导。 本文评分情况：{{score_breakdown}} 阅卷评语：{{score_detail}} 该文处于三类卷水平，存在较明显的基础问题，请从以下角度给出辅导意见： 1. 【最紧迫的问题】指出当前得分最低的核心问题（如跑题、结构混乱、语言不通顺）， 用一句话概括，让学生清楚知道首先要解决什么 2. 【结构修复建议】分析文章开头、主体、结尾的问题， 给出一个适合本文题目的简单写作框架（三段式或五段式） 3. 【语言通顺改写】摘出1处最不通顺的句子，展示如何修改使其通顺表达 4. 【扣分项提醒】明确指出哪些扣分项可以通过习惯改正（如检查错别字、字数、标题） 语气：耐心温和，聚焦最核心的问题，避免一次提出太多要求让学生不知所措。 ```   - 用户提示词：{{essay}}   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717549779.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| 大模型节点D | 放在ELSE后面，用于四类卷点评，\<20分 - 模型：DeepSeek-V4-Flash，输出格式：文本，**流式输出**  - 输入参数： - essay：引用开始节点的 essay  - score_detail：引用大模型评分节点的 score_detail  - score_breakdown：引用代码节点的 score_breakdown    - 输出参数：feedback_d  - 系统提示词： ``` 你是一位有丰富经验的高考语文补习老师，正在帮助一位作文存在严重问题的学生重新起步。 本文评分情况：{{score_breakdown}} 阅卷评语：{{score_detail}} 该文处于四类卷水平，请从最基础的角度给出重建性指导： 1. 【核心问题诊断】用1-2句话指出最根本的问题（如：严重偏题/无法成篇/立意有误） 2. 【基础框架重建】不针对原文修改，而是给出一个全新的写作框架： - 建议的立意方向（确保审题正确） - 推荐的文章结构（开头应写什么、主体如何展开、结尾如何收束） 3. 【可立即执行的改进】列出2-3项最基础、最容易做到的改进动作 （如：先拟好标题、先写好首段点题、每段首句先点中心） 4. 【鼓励性总结】用1-2句话给予正向激励，帮助学生建立继续写作的信心 语气：温和坚定，从零开始引导，不批评，只建设。 ```   - 用户提示词：{{essay}}   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717549781.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| 变量聚合节点 | 设置分组Group1，按以下顺序添加四个变量（均为 String 类型）： - 优先级1：变量来源大模型节点A（一类卷），变量名feedback_a  - 优先级2：变量来源大模型节点B（二三类卷），变量名feedback_b  - 优先级3：变量来源大模型节点C（三四类卷交界），变量名feedback_c  - 优先级4：变量来源大模型节点D（四类卷），变量名feedback_d   ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717389905.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| 结束节点   | - 输入参数： - score_breakdown：引用代码节点的 score_breakdown  - grade_level：引用大模型评分节点的 grade_level  - feedback：引用变量聚合节点的 Group1    - 指定回复： ``` 【评分结果】{{score_breakdown}} 【档次判定】{{grade_level}} 【点评意见】 {{feedback}} ```    ![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717549775.png "点击放大")                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
**试运行：**
在开始节点的essay参数中输入一篇作文，工作流会先打分，再自动进入对应分段的点评逻辑，输出针对性的反馈。
图3试运行   
![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002717389899.png "点击放大")
图4查看运行结果   
![](https://support.huaweicloud.com/lowcode-agentarts/zh-cn_image_0000002687790296.png "点击放大")
