1.一种流程驱动的对话系统实现方法,其特征在于,包括以下步骤:
1)首先进行业务分析,开发人员根据需求分析出对话场景,抽象出相对应对话流程,然后根据相应的对话场景分析出相对应对话流程图;
2)基于步骤1)分析出的对话流程图,准备相对应的对话语料、意图、槽位值;
3)基于步骤1)与步骤2)使用BPMN2.0规范绘制对话流程;
4)基于步骤3)部署对话流程分为三部分内容:
一是部署对话流程的业务流程BPMN文件;
二是将用户准备的相关语料写入数据库中;
三是将用户准备语料写入相应的自然语言理解相关文件和配置文件中,训练对话系统;
最后完成整个部署对话流程;
5)基于步骤4)部署中第一部分内容部署对话流程中的BPMN文件,通过步骤3)画的对话流程的BPMN文件,通过流程引擎进行部署对话流程图;
6)基于步骤4)部署中第二部分内容,将用户准备的语料、意图、槽位数据写入步骤2)数据库表中,并且将对话流程图中的每个流程节点与相对应的对话意图、语料写入到相应的数据库表中,用户可以根据要求,查看每个流程节点相对应的意图、语料和槽位值内容;
7)基于步骤4)部署中第三部分内容训练传统对话系统,首先编写脚本创建运行传统对话系统所对应的文件,然后将步骤6)写入数据库的语料、意图、槽位信息写入传统对话系统的自然语言理解文件和配置文件中,然后进行模型训练、训练完成则整个对话流程部署成功;
8)基于步骤7)部署完成后,进行测试体验,通过传统对话系统自带的前端界面进行用户体验,然后申请发布,完成流程驱动的对话系统的构建。
2.如权利要求1所述流程驱动的对话系统实现方法,其特征在于,步骤1)中,首先进行业务分析,开发人员根据需求分析出对话场景,抽象出相对应对话流程,然后根据相应的对话场景分析出相对应对话流程图,具体包括:(1)业务场景分析,分析该业务场景所涉及对话场景;
(2)分析业务,根据对话场景,定义相关的对话意图;
(3)整理对话逻辑,判断是任务型对话还是闲聊型对话。
3.如权利要求1所述流程驱动的对话系统实现方法,其特征在于,步骤7)中,运行传统对话系统所对应的文件为自然语言理解、配置、领域文件。
4.一种基于工作流引擎对话机器人,部署如权利要求1~3任一项所述流程驱动的对话系统实现方法,其特征在于,部署对话流程引擎方法,具体包括:(1)部署流程引擎分为三步:定义流程、将相关语料传统对话系统的相关文件中、训练对话机器人;
(2)使用BPMN2.0相关规范,通过流程定义工具画出对话流程图;
(3)部署Activiti工作流引擎,然后部署流程定义即部署对话流程图;
(4)使用的传统对话系统为Rasa;
(5)将准备的相关语料、意图、槽位值写入数据库和Rasa相关的重要文件中;
(6)配置Rasa框架的配置文件Config.yml。
5.根据权利要求4所述的基于工作流引擎对话机器人,其特征在于,训练对话流机器人,具体包括:(1)使用Rasa用于构建对话机器人的开源机器学习框架,进行Rasa NLU和Rasa Core的训练,其中Rasa NLU负责自然语言理解训练,Rasa Core负责对话管理的训练;
(2)使用Rasa X,Rasa X是一个对话驱动工具,Rasa X生成一个网址给测试用户,进行相关的对话测试。