任务式会话
任务式会话即多轮对话,支持以可视化方式配置会话流程,可以解决某些需要多轮对话才能完成的业务咨询或业务办理场景配置问题。
任务式会话包括实体、意图、会话流程三个子模块。用于为流程片段构建基础知识。除此以外,会话流程还可以调用基础资源模块的各项内容,例如使用接口指令作为业务系统通信能力。
大模型任务对话在上述普通任务对话的基础上升级,通过大模型对输入的query处理,能够捕捉和理解更复杂的语言模式和实体特征。当前大模型任务对话支持新、老两种画布形态,根据租户创建的产品版本不同,开启不同的功能支持,即小模型版仅支持小模型的意图、实体识别,大模型版或自定义选择大模型任务对话在小模型基础上支持大模型的意图、实体识别,且支持选择不同的画布形态。建立任务对话,需要提前创建实体和意图,通过对话节点自动创建,可实现任务对话快速创建。
建立任务式会话,需要提前创建实体和意图,通过对话节点自动创建,可实现任务式会话快速创建。意图分为用户意图和系统意图,系统意图10种左右系统意图,包括肯定、否定、转人工,支持一键开启。实体分为用户实体和系统实体,系统实体内置10余种系统实体,包括肯定、否定、转人工支持一键开启,以及便于通用场景的配置。
相关名词解释
- 实体:实体是对一类对象的抽象,每个对象作为实体值添加到一个实体中,从而可以在对话过程中被识别。例如在身份验证中,通过使用“身份证号实体”、“手机号码实体”、“手机验证码实体”,可以识别到用户表达的相关信息。
- 用户实体:用户实体为用户在系统中的自建实体。
- 系统实体:系统实体为系统中自带的通用实体。
- 实体值:某实体集合所包含的元素,如定义一个信用卡实体所对应的实体值可能包括白金卡、黑金卡、钻石卡等。
- 意图:用户明确表示的想要办理的业务和意愿可通过意图进行创建。例如在银行业务中,创建“信用卡账单查询意图”、“理财方式询问意图”。
- 用户意图:用户意图为用户在系统中的自建意图。
- 系统意图:系统意图为系统中的通用意图。
- 意图示例:能够触发某意图对问法。如信用卡账单询问意图,意图示例:上个月花了多少钱、我账单是多少、我花了多少钱等。
- 意图关键词/规则:用户表述中包含意图的对应关键词或匹配到模板表达式时,即回答此意图下答案。在项目初期语料不足和长难句难以识别的情况下,添加关键词和模板规则有利于识别用户意图并做出回复。
- 流程片段:为实现某一任务按照一定逻辑组织起来的节点集合,流程片段内的节点会有默认的前后顺序,以虚线连接,可手动调整。流程片段只能有一个根节点。
- 流程片段池:所有流程片段的集合。
- 接口:接口是系统对接业务系统配置流程时的第三方服务地址。
- 指令:指令是系统对接业务系统配置流程时的协议指令。
实体
实体是对一类对象的抽象,每个对象作为实体值添加到一个实体中,从而可以在对话过程中被识别,进而实现用户表述的关键信息收取和根据关键信息进行流程控制。
用户实体
- 小模型实体识别
支持普通实体、规则实体、复合实体三种类型,通过配置实体名称、实体值及同义词进行配置,主要通过规则方式实现识别。
新建实体
在“任务式会话”中点击“实体”,在“用户实体”下点击“新建实体”,填写实体名称、实体ID、实体描述后点击“保存”即可。
编辑实体
- 在需要编辑的实体右侧操作下,选择“详情”,进入实体编辑页面。
- 可对实体名称、实体ID、实体描述进行修改。
- 可对实体值进行增删改查。
- 实体值可添加同义词,在需要添加同义词的实体值右侧点击“编辑”,在右侧输入框中可添加同义词。
删除实体
点击右侧的“删除”,可删除实体及其所包含的所有实体值。
- 大模型实体识别
支持普通实体、规则实体、复合实体三种类型,其中普通实体和复合实体升级为大模型实体识别方式。普通实体新增设置实体值类型,可在系统实体基础上结合实体名称进行大模型识别;复合实体可用于解决用户问题中多属性实体的识别(如“ 帮我下个外卖单,2杯美式,要加冰,3个汉堡,2个薯条 ”,包含绑定关系的食物名称、个数、食物属性(加冰))。
- 大模型实体识别(新画布)
在新画布中,支持普通实体、复合实体类型,并升级为大模型实体识别方式。普通实体新增设置实体值类型,可在系统实体基础上结合实体名称进行大模型识别;复合实体可用于解决用户问题中多属性实体的识别(如“ 帮我下个外卖单,2杯美式,要加冰,3个汉堡,2个薯条 ”,包含绑定关系的食物名称、个数、食物属性(加冰))。
系统实体
在老画布中,系统实体默认不开启,仅在被用户实体引用后开启,不支持用户在系统实体中添加实体值;大模型实体识别功能开启后,可支持大模型识别。
在新画布中,系统实体不在此处展示,默认为全部启用的状态,在新画布的槽位收集节点中,系统实体全量支持用户引用。
系统预设了一些实体,如日期、年、月、人名、地点等。
系统实体默认不开启,仅在被用户实体引用后开启,增加“被引用数”列表,展示被引用的数量,点击可展开被引用的详情,不支持用户在系统实体中添加实体值;
启用/禁用系统实体
如需使用仅需在“实体-系统实体“下点击“启用”,点击“禁用”可停止使用。
系统实体:地点实体的高级使用
该实体内置了一套地点关联词表,在进行实体识别时会自动对词表内包括的省市区进行关联填充,填充的值会存放在属性中,供用户通过高级模式使用。例如用户表达海淀区,系统可自动为其补充国家(country):中国和省/市(province):北京。 在高级模式中使用的语法是:&city=@sys_location.extra['city'],其中&city代表一个变量,而方括号中的city代表属性值,可以替换为country、province、area、location
规则实体与复合实体
详细的使用请参考文档:https://cloud.baidu.com/doc/ICS/s/Ak9inbod6
导入、导出实体
点击右上角导入、导出按钮,可以对实体进行导入、导出。目前导入导出时仅支持用户实体中的普通实体和规则实体,以及部分系统实体的枚举值。
意图
意图作为一种知识,是解决多轮对话的关键。通过语义相似度模型,将用户表述匹配到某一意图,从而可以使对话引擎了解用户的诉求,进而配置对应的多轮对话流程,解决用户的咨询或办理需求。企业版的语义算法的精度较高,准确率和召回率均处于行业领先水平。
在项目冷启动时,可以通过意图模板来批量匹配用户query,以解决项目运行初期由于语料不足导致的泛化较弱问题以及对于含有多实体的复杂长难句无法准确识别意图的问题。
意图包括:用户意图,系统意图。用户意图支持增加、删除、修改,系统意图仅支持启用、禁用和意图示例的增加。
用户意图
用户意图是基于业务需要定义的意图,根据意图名称、意图例句,进行大小模型的识别。
新建意图
点击左上角“新建意图按钮”,填写意图名称、意图ID、意图别名和意图描述。
编辑意图
- 对于已经添加的意图,点击“详情”进入意图详情界面。
- 可对意图名称、意图ID、意图别名、意图描述进行修改。
- 可对意图示例进行增删改查。
- 添加字符、@实体ID或模板表达式作为意图关键词或模板,当语句中包含所对应字符、实体值或模板时,此意图即被命中。此方法可大幅提高意图识别率,有利于长难句的意图识别。
可对关键词或模板进行增删改查。
删除意图
点击所选意图右侧操作下的“删除”,即可删除意图及其包含的所有意图示例、意图模板等信息。
系统意图
系统意图是系统内置的通用意图,并根据意图名称、意图例句完成意图模型训练,开启大模型意图识别功能后也支持大模型识别。
在新画布中,暂不支持意图不响应问题,系统意图默认为全部启用的状态,在新画布的意图节点中,系统意图全量支持用户引用
启用/禁用系统意图
点击任务式会话中的意图,左上角转化到系统意图。通过“点击启用”、“点击禁用”实现开启或关闭系统意图。禁用后,触发此意图的问题不会被回复。
系统意图维护
点击意图名称,可进入系统意图详情,进行系统意图的维护,包括对意图示例和意图关键词/模板的增删改操作。
行业意图
选择Agent时,可选择不同的行业,选择行业之后,意图中随即出现系统内置的行业意图。行业意图目前支持银行和航空两个行业。下面以银行行业的Agent举例:
1、选择好行业并创建Agent:
2、进入意图模块:
3、使用行业意图:
点击添加至用户意图即可将此行业意图添加至用户意图,但内置的意图示例数据不可见也不可修改。
添加成功后,可以对此意图进行添加示例、删除示例的操作;删除此意图视作对对应行业意图的禁用;同一行业意图一次只能添加一个至用户意图列表。
意图模板
意图的规则模板使用详细说明请参考文档:https://cloud.baidu.com/doc/ICS/s/gk9i8ntap
导入导出意图
可通过右上角导入、导出功能将本地意图导入系统,或将已经创建好的意图导出到本地,实现多账号间意图的转移。
意图不响应问题
当某问题被设置为意图不响应问题时,用户的提问不会触发任何意图下的回复,相当于问题被加入了意图的黑名单。
- 可通过右上角意图不响应问题,为某些意图设置黑名单,使系统不响应该意图。
- 进入意图不响应问题详情页,可对不响应问题进行增删改查操作。
意图负例
开启大模型意图识别功能后,支持在意图中配置意图负例,命中负例例句,该意图不返回,提高意图识别精准度。
会话流程
在老画布中,任务对话的会话流程以流程片段的形式来承载。流程片段主要用来封装一个场景的会话流程,可以极大增加流程复用程度,减少维护成本。流程片段可实现可视化管理,既支持跨流程片段的节点自由跳转,同时支持条件判断与触发,既支持简单点选配置,同时支持复杂逻辑的表达式编写;支持实时生效,满足业务快速上线需求。
流程片段具有以下的核心功能:按照业务场景以可视化的会话树的形式封装一套业务咨询或办理流程,可以通过意图或其他判断条件触发;流程片段之间可以跳转以实现互相调用;编辑好的流程片段在BOT中进行选择拼装,以最终实现多轮对话能力。
在开启大模型任务对话功能后,流程片段的顶层节点将无法使用实体作为判断条件触发流程,以便保障大模型实体识别的效果。
企业版使用可视化编辑的方式,为流程编辑人员提供图形化的流程编辑页面。产品采用树状流程,除了以用户指定的跳转顺序遍历节点,也可按照默认的树结构的遍历顺序来一次执行各个节点。节点内支持多执行模块编辑,良好支持分条件情况处理业务。每个执行模块都可以进行接口指令外传、内容回复、变量赋值和节点跳转等操作。全局的统一变量管理,更加灵活对不同流程片段间的数据交互进行支持。
需要注意的是,大模型任务对话流程配置时,流程片段的顶层条件不支持引用实体,普通选中,会屏蔽掉实体选择逻辑;高级模式顶层节点增了加实体判断。
同时老画布会话流程支持配置推荐问流程,当用户query命中到会话流程时,可推荐出配置的推荐问,提升用户体验。
会话流程推荐问支持关联FAQ、意图以及通过表达式进行关联问的定义
老画布中,通过创建流程片段,实现针对某项任务的会话流程配置,配置完成后系统可与用户开展任务式对话,在会话流程中涉及几个关键名词:
- 节点:是会话流程中的最小模块,以一个触发区域和多个条件执行跳转组合模块为整体。节点可以具有父子关系,如果不满足父节点的触发条件,则子节点也会被跳过。
- 根节点:一段流程的起始节点,如果不满足根节点的触发条件,则整个流程片段被跳过。
- 流程片段的引用:可以在一个流程片段内引用其他的流程片段,引用不产生新的副本,仅仅是指向流程片段池中已有片段。对于引用的流程片段,可以跳转到其内部的非根节点。
流程话术管理
在老画布的操作中,作为用户,在需要修改任务式对话的回复内容时,需要对流程片段逐一筛选寻找需要修改的对话流程节点,耗时长且效率低,同时在实际业务中,不同角色分工不同,部分运营人员只可进行回复话术的修改,无需其他对应的权限。用户通过使用流程话术管理,基于话术关键字进行检索,快速定位和进行话术的修改。
输入要检索的话术,快速查询到相关的流程片段,进行快速的定位。
进入流程片段后,会列出涉及检索话术的对话流程节点,选择对应节点快速定位到节点所在位置,便于快速进行修改。
选定节点后,点击编辑即可进行节点话术的修改。
新建流程片段
新建会话可以通过新建会话流程与导入流程两种方式,在“任务式会话-会话流程”中,鼠标移动到“流程片段”,选择“导入流程片段”上传文件,或选择“新建流程片段”,填写名称和描述。
管理流程片段
点击"管理"按钮,可进入到流程片段的画布页面,并对会话树进行编辑。
编辑节点的触发条件决定是否执行节点内部配置的信息。
节点中的执行模块决定此流程片段的此节点如何回复用户。 高级模式语法规则文档
使用会话测试功能进行流程片段测试并确定编辑无误。之后点击"确认生效",此流程片段的会话树内容才能生效并被bot引用。
填写对应的版本名称以及相关的版本描述,即可提交生效。当开启流程片段画布审核时,提交生效之后需审核通过才能生效。
用户点击"查看历史版本",可以查看最近生效的10个流程片段历史版本。
点击弹窗中"查看",可以查看对应版本的流程片段画布信息。
点击弹窗中"恢复至画布",将对应版本的流程片段画布信息恢复至流程片段画布。
复制流程片段
- 点击每条会话右侧向下按钮中的“复制”,可复制已经存在的流程片段。
- 填写复制后流程片段的名称和描述。
编辑流程片段
- 点击每条会话右侧向下按钮中的“编辑”,进行编辑操作。
- 编辑内容为对话名称和描述。
删除流程片段
点击每条会话右侧向下按钮中的“删除”,可删除会话及其包含的所有信息。
流程画布详细说明
在配置一个会话流程时,最核心的工作就是利用流程画布绘制流程,设计对应的条件分支和处理节点,这项工作就需要使用到流程画布。本节具体介绍流程画布的功能和使用方式。
画布典型功能布局
流程画布的基本元素及关系
流程画布最核心的元素就是节点,图中每一个独立的小卡片就是一个节点
除了默认的树型的遍历顺序以外,产品也支持手动指定跳转到某个节点以改变条件触发时遍历顺序
- 一个流程由一个根节点(即处于最顶部无兄弟节点的那个节点)和若干子节点组成
- 每一层节点为其有连线的下方节点的父亲节点,下方节点成为其子节点,每次遍历时都会从某个节点的第1个子节点(最左边的)开始进行进入条件触发判断
- 节点本身存在“节点进入条件”和“节点执行模块”两个部分,满足节点进入条件才会进入节点执行模块
- 节点进入条件若空置即代表无任何条件可触发进入该节点(但仍然可以通过指定跳转到执行来跳过节点进入条件的判断,节点内容详细解读见下一部分)
- 在执行流程时,节点有一个默认遍历顺序(即树的前序遍历),由根节点触发,自上而下自左至右进行条件触发判断的遍历,一旦满足某个节点条件则进入该节点,从而可以根据节点执行的配置来进行相应处理
- 一个节点可以有多个执行模块,会自第一个模块开始判断条件,若满足执行模块的条件就执行该模块,执行完成后就直接结束节点,等待用户再次输入或跳转到其他节点(即在一轮对话中,即使进入了一个多执行模块的节点,也至多只有一个执行模块会被执行)
- 与节点条件不同的是,若执行模块不配置条件,则代表该执行模块无条件执行
节点的基本内容
双击一个节点的进入条件,可以配置其进入条件的内容
双击一个节点卡片可以对一个节点的内容进行配置
-
节点级操作
- 启用webhook,启用后会通过webhook配置的地址进行指令的传输
- 清除上下文,当此节点执行完成后会清空遍历到此节点位置所有的变量赋值和系统状态
- 完成节点,用于节点完成率统计,如果认为某个节点输出可视为节点完成则勾选该标记
-
执行模块
- 执行模块条件,可为空,为空代表任何情况下都执行
- 变量赋值,可以设置多个变量存储用户输入或者系统返回或者采集到的实体等;需要先在变量管理中注册才可以在节点中使用
- 指令,用来标记需要业务系统或其他系统执行的命令;需要先在指令管理中注册才可在节点中使用
- 回复内容,执行该模块后机器人会对用户输出的内容,如果是多个节点连续跳转则回复内容会拼接到一起;回复内容中可以以'{%&变量名%}'的形式拼接变量内容。
-
节点跳转
- 不跳转,执行完该执行模块后不跳转,等待用户输入后继续遍历当前节点下的子节点
- 跳转到触发,执行完该执行模块后跳转到指定节点的进入条件,如果符合则进入指定节点,如果不符合则继续遍历指定节点的兄弟节点
- 跳转到执行,执行完该执行模块后跳转到指定节点的执行模块,无需判断该节点的进入条件;按顺序判断执行模块的条件,如果有满足条件的则执行该模块,如果没有则停留在该节点等待用户再次输入
流程画布的节点菜单
在一个节点上右键或者点击节点卡片右侧的更多按钮,可以进行节点菜单操作
- 查看节点,查看节点详细内容
- 显示/隐藏节点跳转管理,可以同时查看某个节点的跳转关系
- 添加子节点,在该节点所有子节点前创建一个子节点
- 添加兄弟节点,在节点后创建一个兄弟节点
- 添加实体采集模板,填写一个表单后自动创建采集实体的流程
- 复制节点,在该节点后复制出一个与该节点内容相同的兄弟节点
- 复制节点分支,在该节点后复制出一个与该节点分支(所选节点及其所有子节点)相同的兄弟节点分支,其中分支内部的跳转关系会保留,跳转到分支外部的跳转关系也会保留,跳转到分支内部的跳转关系会忽略
- 编辑进入条件,即编辑节点的进入条件
- 编辑节点,即编辑节点的内容,包括执行模块
- 删除节点,删除该节点及其所有子节点
除菜单操作外,画布还提供几个全局功能
- 节点拖动
- 画布缩放
自动跳回类型流程片段
平台还提供了一种自动跳回类型流程片段,在创建时可以选择。此功能有两个作用:第一,设置自动跳回节点;第二,屏蔽意图切换功能。
创建完成后可以在流程中对某个节点设置自动跳回。
自动跳回功能是指:若进入此流程片段是由外部节点(即其他流程片段的节点)跳转而来的,且此时流程执行到设置了自动跳回的节点,当该节点执行完成后会自动返回跳转到该流程片段的外部节点上。
会话流程(新画布)
画布概述
在新画布中,任务对话的会话流程以“主题”的形式来承载。“主题”类似流程片段,主要用来封装一个场景的会话流程,极大增加流程复用程度,减少维护成本。每个“主题”拥有一个画布空间,能够通过支持多种节点类型以完成不同的功能需要,支持拖动『节点』进入画布,可在需要的步骤节点通过大模型进行理解和生成,满足复杂场景配置的同时满足任务对话交互效果。
主题画布具有以下的核心功能:按照业务场景将一套业务咨询或办理流程封装在主题画布中,画布中支持多类型的节点,将不同类型不同功能的节点组合之后可实现不同的流程需要;主题之间可以跳转以实现互相调用;编辑好的主题在BOT中进行选择装配,以最终实现多轮对话能力。
用户进入画布的配置界面,其中包含以下可配置区域:
主题配置:您可以将不同的业务场景划分到不同的主题,每个主题以不同的用户意图作为起始步骤;
画布区:您可以拖动左侧的步骤进入画布,在画布右侧的配置区完成选中步骤的具体配置,通过排序和连线的方式设计任务对话流程。步骤在画布中可以单独或排列组合成节点;
为了满足多用户同时配置一个AI客服的不同画布的场景,多个用户可以同时编辑一个AI客服下面的不同主题(子主题),针对同一主题(子主题),仅支持一个用户编辑,其他用户可实时查看该用户的最新编辑状态。
在画布中,支持撤销和恢复。撤销快捷键为control+Z(Windows),command+Z(mac);恢复快捷键control+shift+Z(Windows),command+shift+Z(mac)。
在任务对话的画布中,支持鼠标的框选模式和抓手模式的切换:
框选模式:选择节点操作是单击或长按框选;移动画布操作是 [Space]+长按移动后者双指移动(触摸板);
抓手模式:移动画布操作为长按移动;选择节点操作为:[Shift]+长按框选;缩放画布操作为滚动鼠标滑轮缩放。
在任务对话的画布中,支持搜索该主题的节点或步骤中的文案,选择后可定位到该节点或步骤。
在任务对话的画布中,支持在连线的尾部直接选择步骤,如下图,提高画布配置效率和体验。
主题与节点
一个AI客服可以配置多个主题和子主题,每个主题是个单独的画布,您可以将不同的业务场景划分到不同的主题,以便于您清晰的配置和管理多场景会话流程。
画布中默认有一个起始主题,该主题下默认有一个开始步骤,为该AI客服的开始。用户可以创建多个起始主题,以供不同的Bot绑定使用。支持增加一级主题和子主题,增加的主题均自带一个意图步骤,可通过配置「意图」进入该主题流程。
节点类型与功能介绍:
- 意图节点:作为某个流程的起始节点,支持绑定意图,当用户query命中该意图,则会命中该节点
-
信息表达节点:信息表达节点主要用于配置回复用户的话术,支持两种回复节点:
-
大模型回复:大模型回复节点利用大模型能力,让回复不局限于固定的话术,该节点支持选择大模型通识或已有知识库进行回复;支持prompt、记忆或两者皆有的驱动方式,支持在prompt中引用实体或变量;支持配置该节点的大模型参数,包括温度,人设。
-
文本回复:文本回复节点支持纯文本回复或富文本回复,支持在文本回复中引用变量和实体。
-
-
信息收集:信息收集节点主要囊括了偏收集功能的各类节点类型
-
按钮:当配置了按钮节点后,用户可以通过点击按钮进入下一步流程,而无需手动输入query,这在某些场景中能够为访客提供了一种更加快捷方便的交互方式,同时也能够确保访客意图不过于发散。按钮节点支持输入引导按钮点击的话术,支持编辑按钮名称和添加按钮的动作,支持按钮跳转到意图、变量赋值、URL打开、API调用。
-
收集槽位实体:该节点主要用于收集相关信息,该槽位能够通过大模型从用户的query中抽取需要收集的实体,并将值进行填充。该节点支持配置多个待收集的实体(普通实体/复合实体)
-
收集用户回复:该节点会让AI客服停下来收听用户全部回复内容,并将用户的回复内容赋值到固定的变量中,方便进行后续的流程,常用于流程中的意图判断。
-
- 条件判断节点:在配置对话流程中,常常需要进行逻辑判断,来决策下一步的动作。该节点能够对各类条件进行判断,例如实体、变量的值是否满足某个条件,同时支持配置在该条件下的下一步动作,例如跳转到某个意图或转到全局识别。
-
动作:动作类节点主要囊括了一些功能性节点
-
普通变量赋值:支持将单值、多值、表达式赋值到某个变量中,支持其他变量和实体的引用。
-
大模型变量赋值:该节点可使用大模型的生成和推理能力,将大模型的输出结果赋值到选定的变量。支持节点描述;支持选择数据来源来自于大模型通识或知识库,支持prompt、记忆或两者皆有的驱动方式;支持设置prompt并赋值到变量;支持配置该节点的大模型参数,包括温度,人设。
-
指令节点:指令节点一般是一个对话的终点,可在该节点中选择需要触发的指令,并且配置参数。系统预置了常用指令,如果没有合适的指令,可以新建指令
-
API调用节点:该节点能够进行外部API的调用,支持GET/POST方式请求,支持url,url支持变量引用;支持headers,parameters中的键值对设置,支持capture response赋值到变量。
-
版本管理
主题支持版本的管理,来确保配置数据的一致性和可追溯性,同时通过版本管理,可以有效地跟踪和记录数据的变更历史,如因配置错误导致业务流程异常,可通过历史版本快速完成历史版本的恢复,来实现业务的快速恢复。
版本基于主题进行版本的生效,点击生效后,输入当前生效的版本并填写版本变更的内容,可用户版本变更内容的追溯。
版本生效后,生成版本记录,在历史版本管理中,可查看历史版本的配置详情,同时可支持历史版本的快速恢复。
接口指令
在任务式会话中点击“接口指令”,进入接口指令编辑页面。
新建指令
点击指令左上角“新建指令”,填写指令名称、标识、描述。
使用指令
在流程片段中配置指令,流程片段会将指令标志一并传入上游,由上游解析,使用。
编辑指令
可对指令进行增删改查操作。
配置接口
点击接口,进入接口页面,点击右上角“编辑”按钮,进行接口配置
操作步骤:
- 点击“启用”启动webhook。
- 填写基础信息:URL地址、用户认证。
- 填写headers,headers支持增删改。
任务式会话配置示例
相关名称解释
- 满足条件:在“普通模式”下,可选择意图、实体、变量作为执行必须满足的条件,可选择满足“以下全部条件”或“其中任何条件”时方可执行动作。在“高级模式”下,可自主编辑代码,具体可参考“表达式说明”。
- 执行模块:条件满足后,可以进行的操作,包括:指令、回复内容、变量赋值、节点跳转,节点跳转下可选择不跳转、节点触发或节点执行。 在同一节点下可添加多个满足条件和执行模块。
点击每条会话右侧“管理”,进入流程画布编辑会话流程。
以“信用卡账单查询”为例,先来梳理逻辑。用户发起意图“我要查询信用卡账单”时,开始进行身份验证,若身份验证成功,则向用户收集银行卡号,然后向用户通报账单金额;若身份验证失败,则不会进入收集银行卡号和通报账单流程。身份验证是通过身份证号码和手机号进行验证。
此时需要配置两个流程片段,一个是完成“查询账单”这一主业务流程片段,一个是完成“身份验证”的流程片段。
身份验证
配置根节点条件
选择“添加触发条件”,选择意图-身份验证。
配置根节点信息
配置节点名称,并“新建执行模块”,按需配置执行条件和动作。
在子节点中收集需要的信息
以收集身份证号为例
- 建立子节点。添加节点名称为“身份证号收集”。
- 配置子节点条件。先来梳理一下逻辑,若用户已经提供身份信息则不需要收集,若用户未提供身份信息,此时需要收集其身份id。选择“添加触发条件”,选择变量-身份id不存在。
- 配置子节点信息。“新建执行模块”,在执行模块中配置回复话术“请输入身份证号”。
- 身份证号收集存在“成功”和“失败”两种情况,两种情况下回复话术和动作不同。若成功则进行下一个动作“收集手机号码”,若失败则需跳回根结点重新收集身份证信息。
配置成功收集节点。条件为“身份证实体存在”,节点跳转配置下一个收集节点。
配置失败收集节点。条件为“其他不为空的输入”,节点信息中,回复话术配置会拼在“身份证号收集”节点回复内容前。节点跳转配置触发身份证号收集节点。
- 据此配置“手机号收集”和“验证码收集”。
- 身份证号、手机号、验证码收集成功后,进入“身份验证完成节点”,身份验证完成。
- 配置变量。这里的变量用于跳转回原流程片段,“身份验证”这一流程片段的结果有两种,“成功”和“失败”,若成功,则需要跳转回原片段的“验证成功”节点,若失败,则需要跳转回原片段的“验证失败”节点。
在成功时,配置执行内容:变量“&IDcheck=1”,在原流程片段的验证成功节点配置条件“&IDcheck=1”。
在失败时,配置执行内容:变量“&IDcheck=0”,在原流程片段的验证失败节点配置条件“&IDcheck=0”。
查询账单
先来梳理逻辑,用户进行“查询账单”任务时,需要先触发“查询账单”意图,进入“查询账单”会话流程。进入流程后,首先进行身份验证,如果验证成功是本人,则进行接下来的“银行卡号收集”和“账单指令查询”,若不是本人,则无法进行下面的流程。
进行身份验证通过跳转至上面配置的“身份验证”流程片段实现。
- 配置根节点。配置欢迎语话术和跳转至身份验证,并且配置变量用于由身份验证跳转回来。
- 配置身份验证成功和失败节点。根据身份验证返回的变量信息,进行条件配置。
- 配置身份验证成功后收集银行卡号的节点。
- 配置余额查询节点,调用webhook获取余额信息。
- 配置结束节点。