问题分类
通过定义分类描述,问题分类器能够根据用户输入,使用 LLM 推理与之相匹配的分类并输出分类结果,向下游节点提供更加精确的信息。
场景
常见的使用情景包括:
-
客服对话意图分类 -
产品评价分类 -
邮件批量分类

在一个典型的产品客服问答场景中,问题分类器可作为知识库检索的前置步骤,对用户输入问题意图进行分类处理,分类后导向下游不同的知识库查询相关的内容,以精确回复用户的问题。
示例工作流模板
下图为产品客服场景的示例工作流模板:
-
分类 1:与售后相关的问题 -
分类 2:与产品操作使用相关的问题 -
分类 3:其他问题
应用示例
当用户输入不同问题时,分类器会根据已设置的分类标签/描述自动完成分类:
-
“iPhone 14 如何设置通讯录联系人?” → “与产品操作使用相关的问题” -
“保修期限是多久?” → “与售后相关的问题” -
“今天天气怎么样?” → “其他问题”
如何配置
-
选择输入变量:指用于分类的输入内容,支持输入文件变量。客服问答场景下一般为用户输入的问题 sys.query
。 -
选择推理模型:基于大语言模型的自然语言分类和推理能力,选择合适的模型以提升分类效果。 -
编写分类标签/描述:手动添加多个分类,通过编写关键词或描述语句帮助大语言模型理解分类依据。 -
选择下游节点:根据分类结果与下游节点的关系,选择后续流程路径。

高级设置
-
指令:在高级设置中补充附加指令(如更丰富的分类依据),增强分类能力。 -
记忆:开启后,输入将包含聊天历史以提升对话交互中的问题理解能力。 -
图片分析:仅适用于具备图片识别能力的LLM,允许输入图片变量。 -
记忆窗口:关闭时,系统根据模型上下文窗口动态过滤聊天历史;开启时可精确控制传递数量(对数)。
输出变量
-
class_name
:存储分类模型的预测结果。分类完成后,此变量包含具体类别标签,可在后续处理节点中引用以执行相应逻辑。
条件分支
定义
根据 If/else/elif 条件将 Chatflow / Workflow 流程拆分成多个分支。
节点功能
条件分支的运行机制包含以下六个路径:
-
IF 条件:选择变量,设置条件和满足条件的值; -
IF 条件判断为 True
,执行 IF 路径; -
IF 条件判断为 False
,执行 ELSE 路径; -
ELIF 条件判断为 True
,执行 ELIF 路径; -
ELIF 条件判断为 False
,继续判断下一个 ELIF 路径或执行最后的 ELSE 路径;
条件类型
支持设置以下条件类型:
-
包含(Contains) -
不包含(Not contains) -
开始是(Start with) -
结束是(End with) -
是(Is) -
不是(Is not) -
为空(Is empty) -
不为空(Is not empty)
场景

以文本总结工作流作为示例说明各个条件:
-
IF 条件: 选择开始节点中的 summarystyle
变量,条件为包含技术
; -
IF 条件判断为 True
,执行 IF 路径,通过知识检索节点查询技术相关知识再到 LLM 节点回复(图中上半部分); -
IF 条件判断为 False
,但添加了ELIF
条件,即summarystyle
变量输入不包含技术
,但ELIF
条件内包含科技
,会检查ELIF
内的条件是否为True
,然后执行路径内定义的步骤; -
ELIF
内的条件为False
,即输入变量既不不包含技术
,也不包含科技
,继续判断下一个 ELIF 路径或执行最后的 ELSE 路径; -
IF 条件判断为 False
,即summarystyle
变量输入不包含技术
,执行 ELSE 路径,通过 LLM2 节点进行回复(图中下半部分);
多重条件判断
涉及复杂的条件判断时,可以设置多重条件判断,在条件之间设置 AND 或者 OR,即在条件之间取交集或者并集。
