一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

语句生成方法、设备以及计算机可读介质与流程

2021-12-17 18:43:00 来源:中国专利 TAG:


1.本技术涉及信息技术领域,尤其涉及一种语句生成方法、设备以及计算机可读介质。


背景技术:

2.庭审是一个特殊的多人对话场景,参与者包括法官方、原告方(包含原告和代理人等)、被告方(包含被告和代理人等),其中法官是庭审的组织者,法官不仅要向原告、被告发出提问了解事实,还需要维护庭审秩序,推动庭审过程。
3.为了推送庭审,法官一般会通过一些相对固定的语句来要求庭审中的其它参与方作出相应的答复或者陈述,这些相对固定的语句即为流程性提示语句,例如“原被告的身份信息”、“原被告宣读起诉书、答辩状”等。在常规的庭审过程中,这些流程性提示语句都需要由法官在合适的时机向庭审的其它参与方说出。由于流程性提示语句的内容相对固定,在理论上存在自动生成的可能性,从而可以减少法官在庭审过程中的负担。
4.在信息技术领域中,庭审时流程性提示语句的自动生成可以定义为一个自然语言生成的问题,解决方案通常有两种,即基于规则的生成方法和抽象式的生成方法。其中,而抽象式的生成方法目前仍有技术瓶颈,生成的语句通常不完整,或者部分内容重复,或者是有其它语病,无法在实际场景中直接应用。而基于规则的生成方法需要针对不同的案由预先定制大量的规则,通用性较差、工作量大。


技术实现要素:

5.本技术的一个目的是提供一种语句生成方法、设备以及计算机可读介质,用以解决通用性差、工作量大的问题。
6.本技术实施例中提供了一种语句生成方法,该方法包括:
7.基于有限状态机确定当前所处的流程状态节点;
8.根据以所述流程状态节点为根节点的逻辑树,获取所述流程状态节点的激活状态;
9.如果所述流程状态节点的激活状态为已激活,根据所述逻辑树中的模板节点生成所述流程状态节点对应的流程性提示语句;
10.如果所述流程状态节点的激活状态为未激活、或者所述流程状态节点对应的流程性提示语句已全部输出,根据所述有限状态机切换至下一个流程状态节点。
11.本技术实施例还提供了一种语句生成设备,该设备包括:
12.状态控制模块,用于基于有限状态机确定当前所处的流程状态节点,以及如果所述流程状态节点的激活状态为未激活、或者所述流程状态节点对应的流程性提示语句已全部输出,根据所述有限状态机切换至下一个流程状态节点;
13.语句生成模块,用于根据以所述流程状态节点为根节点的逻辑树,获取所述流程状态节点的激活状态,如果所述流程状态节点的激活状态为已激活,根据所述逻辑树中的
模板节点生成所述流程状态节点对应的流程性提示语句。
14.本技术的一些实施例还提供了一种计算设备,其中,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行前述语句生成方法。
15.本技术的另一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现所述语句生成方法。
16.本技术实施例提供的一种语句生成方案中,该方案可以基于有限状态机确定当前所处的流程状态节点,然后根据以所述流程状态节点为根节点的逻辑树,获取所述流程状态节点的激活状态,如果所述流程状态节点的激活状态为已激活,根据所述逻辑树中的模板节点生成所述流程状态节点对应的流程性提示语句,如果所述流程状态节点的激活状态为未激活、或者所述流程状态节点对应的流程性提示语句已全部输出,根据所述有限状态机切换至下一个流程状态节点。由于采用了有限状态机结合逻辑推理图谱的方式,即通过有限状态机表示来管理场景中的流程状态节点,并采用逻辑树所形成的逻辑推理图谱来控制流程性提示语句的生成和流程状态节点的切换,对于庭审场景可以通过灵活配置有限状态机中包含的状态以及逻辑树中的模板节点来适用于不同的案由,因此可以减少应用于不同案由时的工作量,通用性好。
附图说明
17.通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本技术的其它特征、目的和优点将会变得更明显:
18.图1为本技术实施例提供的一种语句生成方法的处理流程图;
19.图2为在庭审场景中提示语句的一种发出时序图;
20.图3为本技术实施例中流程状态节点的一种节点转移状态图;
21.图4为本技术实施例中一种节点转移状态图对应的逻辑推理图谱;
22.图5为本技术实施例中的以流程状态节点4为根节点的逻辑树;
23.图6为本技术实施例中生成流程状态节点对应的流程性提示语句时的流程图;
24.图7为本技术实施例中一种标记节点之间访问顺序的方式示意图;
25.图8为本技术实施例提供的一种语句生成设备的结构示意图;
26.图9为可以应用于庭审场景的一种自动发问系统的系统框架图;
27.图10为本技术实施例提供的一种用于实现语句生成的计算设备的结构示意图;
28.附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
29.下面结合附图对本技术作进一步详细描述。
30.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
31.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措
辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
32.本技术实施例提供了一种语句生成方法,该方法采用了有限状态机结合逻辑推理图谱的方式,即通过有限状态机表示来管理场景中的流程状态节点,并采用逻辑树所形成的逻辑推理图谱来控制流程性提示语句的生成和流程状态节点的切换,对于庭审场景可以通过灵活配置有限状态机中包含的状态以及逻辑树中的模板节点来适用于不同的案由,因此可以减少应用于不同案由时的工作量,通用性好。
33.在实际场景中,该方法的执行主体可以是用户设备、网络设备或者用户设备与网络设备通过网络相集成所构成的设备,此外也可以是运行于上述设备中的程序。所述用户设备包括但不限于计算机、手机、平板电脑等各类终端设备;所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现。在此,云由基于云计算(cloud computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。
34.图1示出了本技术实施例提供的一种语句生成方法的处理流程,可以至少包括以下处理步骤:
35.步骤s101,基于有限状态机确定当前所处的流程状态节点。
36.该方案可以应用于具有相对固定的交互流程的场景,例如庭审、会议等。在这些场景中,一般会需要由特定的人员来推动交互过程的进行,以庭审场景为例,法官会通过一系列提示语句让参与庭审的人员回答问题或者陈述意见,以推动庭审的进行。其中,法官的提示语句可以包括事实性提示语句,主要是针对原被告的起诉书、答辩状,法官询问的一些跟案件事实情况相关的问题;而庭审过程中的流程性提示语句是指用于推动庭审的一些相对固定的语句,如“原被告的身份信息”、“原被告宣读起诉书、答辩状”等。
37.图2示出了在庭审过程中提示语句的一种发出时序,其中开始节点为庭审开始的节点,流程节点为流程性提示语句的发出节点,事实节点为事实性提示语句的发出节点,结束节点为庭审结束的节点,数字表示节点之间的切换顺序。由此可知,在该图对应的场景中法官会在1、2、5、6对应的状态切换时,先庭审参与人员发出流程性提示语句,来推动庭审的进行。
38.根据实际场景的不同,例如不同案由的庭审、不同主题的会议等,可以将场景推进的整个流程划分为不同的流程状态节点,每个流程状态节点表示场景推进过程中的一个状态或者分支,在这个状态或分支下,可能提出一个或者多个流程性提示语句。对于不同场景,流程状态节点的总集是可以预先确定的,例如在庭审开始时,首先会发出一个用户介绍本次庭审的流程性提示语句:xx法院今天依法公开审理原告aaa与被告bbb关于xx案由一案,然后会根据庭审参与方的实际到庭情况,发出要求各方核实身份信息的流程性提示语句,如原告身份、被告身份、涉案第三方身份等。
39.由于流程状态节点的总集是可以预先确定的,并且对于相似的场景,如相似案由的庭审、相近主题的会议等,场景推进过程中的流程状态节点也会相似,因此可以采用有限
状态机(finite state machine,fsm)来表示场景中所包含的流程状态节点,例如图3示出了一种有限状态机对应的节点转移状态示意图,由此可知,该场景对应的推进过程会在流程状态节点4、6、7、8之间依次顺序转移。
40.由此,在基于有限状态机确定当前所处的流程状态节点时,若是首次处理,则可以将有限状态机中的第一个节点确定为当前所处的流程状态节点;若并非首次处理,则可以根据已经访问过的流程状态节点,确定当前所处的流程状态节点,以图3所示的节点转移状态示意图为例,若前一次已经处理完流程状态节点4,则可以在本次处理时,将流程状态节点6确定当前所处的流程状态节点。
41.步骤s102,根据以所述流程状态节点为根节点的逻辑树,获取所述流程状态节点的激活状态。
42.步骤s103,如果所述流程状态节点的激活状态为已激活,根据所述逻辑树中的模板节点生成所述流程状态节点对应的流程性提示语句。
43.其中,有限状态机中的各个流程状态节点对应一个以自身为根节点的逻辑树,这些逻辑树即构成的逻辑推理图谱可以用于控制流程性提示语句的生成和流程状态节点的切换。例如,对于图3所示的节点转移状态示意图,其对应的逻辑推理图谱可以如图4所示,以其中的流程状态节点4为例,以其为根节点的逻辑树根节点本身以及其它节点a1-a8组成。
44.其中,根节点之外的其它节点可以是概念要素节点、模板节点或逻辑计算节点中的一种,节点之间的关联关系以及每个节点的具体内容可以根据实际场景需求预先设定,在生成流程性提示语句时直接调用逻辑推理图谱中相应的逻辑树即可。
45.所述概念要素节点表示实际采集到的信息所表示节点,例如在庭审场景中,概念要素节点可以是“是否存在被告到庭”、“是否是简易程序”、“是否普通程序”等,这些概念要素节点的具体值可以是布尔值,即其取值可以是真(true)或假(false)。实际场景中,可以采用预设的方式获取输入信息来确定概念要素节点的值。例如,输入信息可以是庭审参与方的陈述内容、提交的材料等,通过语音识别、文字识别或人工输入等方式获取,并采用关键词抽取、神经网络模型分类等方式来确定概念要素节点的值。
46.所述模板节点包含了其所属的逻辑树所对应的流程状态节点中可能需要发出的流程性提示语句,如“xx法院今天依法公开审理原告aaa与被告bbb的yy案由一案”、“双方能否保证上述陈述属实”、“如果存在虚假陈述,需要承担虚假诉讼的法律后果,是否听清”等等。在实际场景中,一个模板节点可以对应一个或多个流程性提示语句,当流程状态节点为激活状态时,可以根据对应逻辑树中包含的模板节点确定生成流程性提示语句。例如,可以根据预设的规则选取所属的全部或部分模板节点,根据选取的模板节点生成流程状态节点对应的流程性提示语句。对于模板节点的取值,若所述模板节点为逻辑树中的叶子节点,则可以将该叶子节点的布尔值确定为真,例如节点a1和a2为模板节点时,则节点a1和a2取值为真;若模板节点为非叶子节点,则根据其子节点的值确定该模板节点的值,例如节点a4为模板节点,其子节点是节点a1,此时当节点a1的取值为真时,模板节点a4的取值也为真,反之当节点a1的取值为假时,模板节点a4的取值也为假。
47.所述逻辑计算节点表示对其子节点进行相应逻辑计算的结果,逻辑计算可以包括“与”、“或”、“非”等,在对其子节点进行相应的逻辑计算后,获得的结果即为逻辑计算节点
的取值。例如,节点a7为逻辑计算节点,且对应的逻辑运算符为“或”,此时,若其对应的子节点a4、a5均为假,则逻辑计算节点a7为假,若子节点a4、a5中至少有一个为真,则逻辑计算节点a7为真。
48.本技术的一些实施例中,在获取流程状态节点的激活状态时,可以先获取以所述流程状态节点为根节点的逻辑树中叶子节点的布尔值,例如以流程状态节点4为根节点的逻辑树中,叶子节点为节点a1、a2和a3。由于逻辑计算节点的取值需要依赖于子节点,而叶子节点没有对应的子节点,因此本实施例中的叶子节点可以是概念要素节点或模板节点。如果叶子节点为概念要素节点,可以根据输入信息确定所述叶子节点的布尔值,而如果叶子节点为模板节点,可以直接将所述叶子节点的布尔值确定为真。
49.在获取到叶子节点的布尔值之后,即可根据所述叶子节点的布尔值,基于逻辑树中各个节点之间的关系计算出流程状态节点的布尔值。例如,图5示出了本技术实施例中的以流程状态节点4为根节点的逻辑树,该逻辑树中,节点a1、a2、a3为概念要素节点,节点a4、a5、a6为模板节点,节点a7和a8为逻辑计算节点,从叶子节点开始,逐层计算父节点的布尔值,可以确定根节点(即流程状态节点)的布尔值。若本实施例中,节点a1、a2、a3的布尔值分别为真、假、真,则可以确定节点a4~a8以及流程状态节点4的布尔值分别为真、假、真、真、真、真。
50.在实际场景中,可以根据一定的规则确定节点布尔值的获取顺序,例如可以采用后序遍历的方式访问每个节点,在访问每个节点时确定当前节点的布尔值,由此可以确定逻辑树中包括流程状态节点在内的所有节点的布尔值。如果流程状态节点的布尔值为真,流程状态节点的激活状态为已激活,而如果流程状态节点的布尔值为假,流程状态节点的激活状态为未激活。
51.对于已激活的流程状态节点,在生成其对应的流程性提示语句时,可以采用如图6所示的处理流程,包括以下处理步骤:
52.步骤s601,获取以所述流程状态节点为根节点的逻辑树中叶子节点的布尔值。
53.步骤s602,根据所述叶子节点的布尔值,获取所述逻辑树中包含的模板节点的布尔值。在实际场景中,基于逻辑树中的叶子节点可以确定逻辑树中所有节点的布尔值,若在前述根节点布尔值的过程中已经计算了逻辑树中包含的模板节点的布尔值,则可以合并两个部分计算过程,直接调用前述计算结果。以图5所示的逻辑树为例,若在计算流程状态节点4的布尔值的过程中,已经计算过模板节点a4、a5、a6的布尔值,则可以直接调用已有的计算结果,而无需重复计算。
54.步骤s603,确定所述逻辑树中布尔值为真的模板节点。在节点a1、a2、a3的布尔值分别为真、假、真时,布尔值为真的模板节点即为a4和a6。
55.步骤s604,根据布尔值为真的模板节点所对应的文本模板信息,生成所述流程状态节点对应的流程性提示语句。对于每个模板节点,可以预先配置对应于一个或多个流程性提示语句的文本模板信息,当模板节点的布尔值为真时,会生成相应的流程性提示语句,反之,若模板节点的布尔值为假,则不会生成相应的流程性提示语句。
56.模板节点中文本模板信息的内容可以由固定内容和变量内容组成。其中,变量内容可以根据输入信息确定,将所述变量内容填充至布尔值为真的模板节点所对应的文本模板信息中,即可生成所述流程状态节点对应的流程性提示语句。其中,此处的输入信息与前
述确定逻辑要素节点取值的输入信息类似,也可以是庭审参与方的陈述内容、提交的材料等,通过语音识别、文字识别或人工输入等方式获取,并采用关键词抽取、神经网络模型分类等方式确定对应的模板内容。
57.例如,一个模板节点中的文本模板信息可以是“<slot>受理法院</slot>,今天依法公开审理原告<slot>原告列表</slot>与被告<slot>被告列表</slot>的<slot>案由</slot>一案”,变量内容采用<slot>和</slot>进行标记,其余部分即为固定内容。若本实施例中,根据输入信息确定的受理法院为xx法院,原告列表包括了aaa,被告列表包括了bbb,案由为yy案由,将变量内容填充至文本模板信息中后,即可生成如下的流程性提示语句“xx法院今天依法公开审理原告aaa与被告bbb的yy案由一案”。
58.在一个流程状态节点对应的逻辑树下,可能会包含多个布尔值为真的模板节点,此时可能会生成多个流程性提示语句。由此,可以将产生的多个流程性提示语以列表的形式保存,该列表即为流程状态节点的语句列表。在实际场景中,可以根据用户的输出请求,从所述流程状态节点的语句列表中提取流程提示语句并输出。其中,用户是指各个场景中推动流程进行的人员,如庭审场景中的法官、会议场景中的主持人等,可以通过不同操作发送输出请求。流程提示语句在从语句列表中提取并输出后,语句列表就会减少该条流程提示语句,直至语句列表为空。如果所述语句列表为空,即可确定所述流程状态节点对应的流程提示语句已经全部输出,表示该流程状态节点已经处理完成,可以进入下一个流程状态节点进行处理,例如流程状态节点4对应的流程提示语句全部输出之后,即可进入下一个流程状态节点6。
59.在本技术的一些实施例中,根据预设的顺序访问逻辑树中的模板节点,并基于这些模板节点对应的流程性提示语句添加至流程状态节点的语句列表中。例如,采用先序遍历的方式访问所述逻辑树中的节点,若节点的布尔值为真,则继续访问所述节点对应的子节点,若节点的布尔值为假,则停止访问所述节点及其对应的子节点,直至确定所述逻辑树中布尔值为真的模板节点。以图5所示的逻辑树为例,若节点a7的布尔值为假,则无需继续遍历该分支下的所有子节点a1、a2、a4和a5,反之节点a7的布尔值为真,则需要从节点a4、a5继续往下遍历,直至叶子节点。
60.在节点的布尔值为真,且需要继续遍历其子节点时,可以预先设定遍历时的访问顺序。例如,节点a7的布尔值为真,需要从节点a4、a5继续往下遍历时,可以预先设定时先遍历节点a5还是节点a4。本实施例中,可以通过在逻辑树中添加顺序标记的方式设定遍历顺序,图7中节点连线之间的数字即为顺序标记,其中节点a7至节点a5之间的数字为1,节点a7至节点a4之间的数字为2,表示在访问节点a7之后,先遍历节点a5,再遍历节点a4。
61.在采用先序遍历的方式访问所述逻辑树中的节点时,可以先对节点的布尔值是否为真进行判断,若访问的节点的布尔值为真,可以继续判断所述节点是否为模板节点,由此提高遍历的效率。在访问到模板节点时,可以通过前述调用节点包含的文本模板信息的方式生成流程性提示语句,并将生成的流程提示语句添加至流程状态节点的语句列表中。
62.步骤s104,如果所述流程状态节点的激活状态为未激活、或者所述流程状态节点对应的流程性提示语句已全部输出,根据所述有限状态机切换至下一个流程状态节点。对于当前处理的流程状态节点,若其激活状态为未激活,或者是所述流程状态节点对应的流程性提示语句全部输出之后,即表示该流程状态节点已处理完成,通过有限状态机确定下
一个流程状态节点,即可切换至下一个流程状态节点。例如,对于若当前处理的流程状态节点为流程状态节点4,若流程状态节点4的激活状态为未激活,或者是流程状态节点4的语句列表中所有流程性提示语句已经全部输出后,即可切换至流程状态节点6继续处理,直至处理完有限状态机中的最后一个流程状态节点。
63.本技术实施例提供的方案可以应用于各类具有相对固定的交互流程的场景中,以自动生成推进交互过程的各种流程性提示语句。例如,可以应用庭审场景中,自动为法官生成在用于提示原被告双方进行后续庭审环节的语句,例如“原告宣读起诉书”、“被告宣读答辩状”等。还如,也可以应用于会议场景中,自动为会议主持人生成用于提示其它参会人员进行后续环节的语句,例如“有请下一位嘉宾发言”等。在实际场景中,该本技术实施例提供的方案可以采用云服务的形式提供给用户,用户通过终端设备连接云平台之后即可使用该语句生成方案,从而为用户提供更好的赋能服务。此外,还可以用于仲裁、调解等部门;还可以对输出的声音、语调进行个性化,把情感色彩增加进去;原被告的方言识别出来后,还可以输出相应的方言等。
64.基于同一发明构思,本技术实施例中还提供了一种语句生成设备,所述设备对应的方法是前述实施例中语句生成方法,并且其解决问题的原理与该方法相似。
65.本技术实施例提供的一种语句生成设备采用了有限状态机结合逻辑推理图谱的方式,即通过有限状态机表示来管理场景中的流程状态节点,并采用逻辑树所形成的逻辑推理图谱来控制流程性提示语句的生成和流程状态节点的切换,对于庭审场景可以通过灵活配置有限状态机中包含的状态以及逻辑树中的模板节点来适用于不同的案由,因此可以减少应用于不同案由时的工作量,通用性好。
66.在实际场景中,所述生成设备可以是用户设备、网络设备或者用户设备与网络设备通过网络相集成所构成的设备,此外也可以是运行于上述设备中的程序。所述用户设备包括但不限于计算机、手机、平板电脑等各类终端设备;所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集或基于云计算的计算机集合等实现。在此,云由基于云计算(cloud computing)的大量主机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟计算机。
67.图8示出了本技术实施例提供的一种语句生成设备的结构,包括状态控制模块810和语句生成模块820。其中,状态控制模块810用于基于有限元状态机确定当前所处的流程状态节点,以及如果所述流程状态节点的激活状态为未激活、或者所述流程状态节点对应的流程提示语句已全部输出,根据所述有限元状态机切换至下一个流程状态节点。而语句生成模块820用于根据以所述流程状态节点为根节点的逻辑树,获取所述流程状态节点的激活状态,如果所述流程状态节点的激活状态为已激活,根据所述逻辑树中的模板节点生成所述流程状态节点对应的流程提示语句。
68.该方案可以应用于具有相对固定的交互流程的场景,例如庭审、会议等。在这些场景中,一般会需要由特定的人员来推动交互过程的进行,以庭审场景为例,法官会通过一系列提示语句让参与庭审的人员回答问题或者陈述意见,以推动庭审的进行。其中,法官的提示语句可以包括事实性提示语句,主要是针对原被告的起诉书、答辩状,法官询问的一些跟案件事实情况相关的问题;而庭审过程中的流程性提示语句是指用于推动庭审的一些相对固定的语句,如“原被告的身份信息”、“原被告宣读起诉书、答辩状”等。
69.图2示出了在庭审过程中提示语句的一种发出时序,其中开始节点为庭审开始的节点,流程节点为流程性提示语句的发出节点,事实节点为事实性提示语句的发出节点,结束节点为庭审结束的节点,数字表示节点之间的切换顺序。由此可知,在该图对应的场景中法官会在1、2、5、6对应的状态切换时,先庭审参与人员发出流程性提示语句,来推动庭审的进行。
70.根据实际场景的不同,例如不同案由的庭审、不同主题的会议等,可以将场景推进的整个流程划分为不同的流程状态节点,每个流程状态节点表示场景推进过程中的一个状态或者分支,在这个状态或分支下,可能提出一个或者多个流程性提示语句。对于不同场景,流程状态节点的总集是可以预先确定的,例如在庭审开始时,首先会发出一个用户介绍本次庭审的流程性提示语句:xx法院今天依法公开审理原告aaa与被告bbb关于xx案由一案,然后会根据庭审参与方的实际到庭情况,发出要求各方核实身份信息的流程性提示语句,如原告身份、被告身份、涉案第三方身份等。
71.由于流程状态节点的总集是可以预先确定的,并且对于相似的场景,如相似案由的庭审、相近主题的会议等,场景推进过程中的流程状态节点也会相似,因此可以采用有限状态机(finite state machine,fsm)来表示场景中所包含的流程状态节点,例如图3示出了一种有限状态机对应的节点转移状态示意图,由此可知,该场景对应的推进过程会在流程状态节点4、6、7、8之间依次顺序转移。
72.由此,在基于有限状态机确定当前所处的流程状态节点时,若是首次处理,则可以将有限状态机中的第一个节点确定为当前所处的流程状态节点;若并非首次处理,则可以根据已经访问过的流程状态节点,确定当前所处的流程状态节点,以图3所示的节点转移状态示意图为例,若前一次已经处理完流程状态节点4,则可以在本次处理时,将流程状态节点6确定当前所处的流程状态节点。
73.有限状态机中的各个流程状态节点对应一个以自身为根节点的逻辑树,这些逻辑树即构成的逻辑推理图谱可以用于控制流程性提示语句的生成和流程状态节点的切换。例如,对于图3所示的节点转移状态示意图,其对应的逻辑推理图谱可以如图4所示,以其中的流程状态节点4为例,以其为根节点的逻辑树根节点本身以及其它节点a1-a8组成。
74.其中,根节点之外的其它节点可以是概念要素节点、模板节点或逻辑计算节点中的一种,节点之间的关联关系以及每个节点的具体内容可以根据实际场景需求预先设定,在生成流程性提示语句时直接调用逻辑推理图谱中相应的逻辑树即可。
75.所述概念要素节点表示实际采集到的信息所表示节点,例如在庭审场景中,概念要素节点可以是“是否存在被告到庭”、“是否是简易程序”、“是否普通程序”等,这些概念要素节点的具体值可以是布尔值,即其取值可以是真(true)或假(false)。实际场景中,可以采用预设的方式获取输入信息来确定概念要素节点的值。例如,输入信息可以是庭审参与方的陈述内容、提交的材料等,通过语音识别、文字识别或人工输入等方式获取,并采用关键词抽取、神经网络模型分类等方式来确定概念要素节点的值。
76.所述模板节点包含了其所属的逻辑树所对应的流程状态节点中可能需要发出的流程性提示语句,如“xx法院今天依法公开审理原告aaa与被告bbb的yy案由一案”、“双方能否保证上述陈述属实”、“如果存在虚假陈述,需要承担虚假诉讼的法律后果,是否听清”等等。在实际场景中,一个模板节点可以对应一个或多个流程性提示语句,当流程状态节点为
激活状态时,可以根据对应逻辑树中包含的模板节点确定生成流程性提示语句。例如,可以根据预设的规则选取所属的全部或部分模板节点,根据选取的模板节点生成流程状态节点对应的流程性提示语句。对于模板节点的取值,若所述模板节点为逻辑树中的叶子节点,则可以将该叶子节点的布尔值确定为真,例如节点a1和a2为模板节点时,则节点a1和a2取值为真;若模板节点为非叶子节点,则根据其子节点的值确定该模板节点的值,例如节点a4为模板节点,其子节点是节点a1,此时当节点a1的取值为真时,模板节点a4的取值也为真,反之当节点a1的取值为假时,模板节点a4的取值也为假。
77.所述逻辑计算节点表示对其子节点进行相应逻辑计算的结果,逻辑计算可以包括“与”、“或”、“非”等,在对其子节点进行相应的逻辑计算后,获得的结果即为逻辑计算节点的取值。例如,节点a7为逻辑计算节点,且对应的逻辑运算符为“或”,此时,若其对应的子节点a4、a5均为假,则逻辑计算节点a7为假,若子节点a4、a5中至少有一个为真,则逻辑计算节点a7为真。
78.本技术的一些实施例中,在获取流程状态节点的激活状态时,语句生成模块可以先获取以所述流程状态节点为根节点的逻辑树中叶子节点的布尔值,例如以流程状态节点4为根节点的逻辑树中,叶子节点为节点a1、a2和a3。由于逻辑计算节点的取值需要依赖于子节点,而叶子节点没有对应的子节点,因此本实施例中的叶子节点可以是概念要素节点或模板节点。如果叶子节点为概念要素节点,可以根据输入信息确定所述叶子节点的布尔值,而如果叶子节点为模板节点,可以直接将所述叶子节点的布尔值确定为真。
79.在获取到叶子节点的布尔值之后,语句生成模块即可根据所述叶子节点的布尔值,基于逻辑树中各个节点之间的关系计算出流程状态节点的布尔值。例如,图5示出了本技术实施例中的以流程状态节点4为根节点的逻辑树,该逻辑树中,节点a1、a2、a3为概念要素节点,节点a4、a5、a6为模板节点,节点a7和a8为逻辑计算节点,从叶子节点开始,逐层计算父节点的布尔值,可以确定根节点(即流程状态节点)的布尔值。若本实施例中,节点a1、a2、a3的布尔值分别为真、假、真,则可以确定节点a4~a8以及流程状态节点4的布尔值分别为真、假、真、真、真、真。
80.在实际场景中,可以根据一定的规则确定节点布尔值的获取顺序,例如可以采用后序遍历的方式访问每个节点,在访问每个节点时确定当前节点的布尔值,由此可以确定逻辑树中包括流程状态节点在内的所有节点的布尔值。如果流程状态节点的布尔值为真,流程状态节点的激活状态为已激活,而如果流程状态节点的布尔值为假,流程状态节点的激活状态为未激活。
81.对于已激活的流程状态节点,语句生成模块在生成其对应的流程性提示语句时,可以采用如图6所示的处理流程,包括以下处理步骤:
82.步骤s601,获取以所述流程状态节点为根节点的逻辑树中叶子节点的布尔值。
83.步骤s602,根据所述叶子节点的布尔值,获取所述逻辑树中包含的模板节点的布尔值。在实际场景中,基于逻辑树中的叶子节点可以确定逻辑树中所有节点的布尔值,若在前述根节点布尔值的过程中已经计算了逻辑树中包含的模板节点的布尔值,则可以合并两个部分计算过程,直接调用前述计算结果。以图5所示的逻辑树为例,若在计算流程状态节点4的布尔值的过程中,已经计算过模板节点a4、a5、a6的布尔值,则可以直接调用已有的计算结果,而无需重复计算。
84.步骤s603,确定所述逻辑树中布尔值为真的模板节点。在节点a1、a2、a3的布尔值分别为真、假、真时,布尔值为真的模板节点即为a4和a6。
85.步骤s604,根据布尔值为真的模板节点所对应的文本模板信息,生成所述流程状态节点对应的流程性提示语句。对于每个模板节点,可以预先配置对应于一个或多个流程性提示语句的文本模板信息,当模板节点的布尔值为真时,会生成相应的流程性提示语句,反之,若模板节点的布尔值为假,则不会生成相应的流程性提示语句。
86.模板节点中文本模板信息的内容可以由固定内容和变量内容组成。其中,变量内容可以根据输入信息确定,将所述变量内容填充至布尔值为真的模板节点所对应的文本模板信息中,即可生成所述流程状态节点对应的流程性提示语句。其中,此处的输入信息与前述确定逻辑要素节点取值的输入信息类似,也可以是庭审参与方的陈述内容、提交的材料等,通过语音识别、文字识别或人工输入等方式获取,并采用关键词抽取、神经网络模型分类等方式确定对应的模板内容。
87.例如,一个模板节点中的文本模板信息可以是“<slot>受理法院</slot>,今天依法公开审理原告<slot>原告列表</slot>与被告<slot>被告列表</slot>的<slot>案由</slot>一案”,变量内容采用<slot>和</slot>进行标记,其余部分即为固定内容。若本实施例中,根据输入信息确定的受理法院为xx法院,原告列表包括了aaa,被告列表包括了bbb,案由为yy案由,将变量内容填充至文本模板信息中后,即可生成如下的流程性提示语句“xx法院今天依法公开审理原告aaa与被告bbb的yy案由一案”。
88.在一个流程状态节点对应的逻辑树下,可能会包含多个布尔值为真的模板节点,此时可能会生成多个流程性提示语句。由此,可以将产生的多个流程性提示语以列表的形式保存,该列表即为流程状态节点的语句列表。在实际场景中,可以根据用户的输出请求,从所述流程状态节点的语句列表中提取流程提示语句并输出。其中,用户是指各个场景中推动流程进行的人员,如庭审场景中的法官、会议场景中的主持人等,可以通过不同操作发送输出请求。流程提示语句在从语句列表中提取并输出后,语句列表就会减少该条流程提示语句,直至语句列表为空。如果所述语句列表为空,即可确定所述流程状态节点对应的流程提示语句已经全部输出,表示该流程状态节点已经处理完成,可以进入下一个流程状态节点进行处理,例如流程状态节点4对应的流程提示语句全部输出之后,即可进入下一个流程状态节点6。
89.在本技术的一些实施例中,语句生成模块根据预设的顺序访问逻辑树中的模板节点,并基于这些模板节点对应的流程性提示语句添加至流程状态节点的语句列表中。例如,采用先序遍历的方式访问所述逻辑树中的节点,若节点的布尔值为真,则继续访问所述节点对应的子节点,若节点的布尔值为假,则停止访问所述节点及其对应的子节点,直至确定所述逻辑树中布尔值为真的模板节点。以图5所示的逻辑树为例,若节点a7的布尔值为假,则无需继续遍历该分支下的所有子节点a1、a2、a4和a5,反之节点a7的布尔值为真,则需要从节点a4、a5继续往下遍历,直至叶子节点。
90.在节点的布尔值为真,且需要继续遍历其子节点时,可以预先设定遍历时的访问顺序。例如,节点a7的布尔值为真,需要从节点a4、a5继续往下遍历时,可以预先设定时先遍历节点a5还是节点a4。本实施例中,可以通过在逻辑树中添加顺序标记的方式设定遍历顺序,图7中节点连线之间的数字即为顺序标记,其中节点a7至节点a5之间的数字为1,节点a7
至节点a4之间的数字为2,表示在访问节点a7之后,先遍历节点a5,再遍历节点a4。
91.在采用先序遍历的方式访问所述逻辑树中的节点时,语句生成模块可以先对节点的布尔值是否为真进行判断,若访问的节点的布尔值为真,可以继续判断所述节点是否为模板节点,由此提高遍历的效率。在访问到模板节点时,可以通过前述调用节点包含的文本模板信息的方式生成流程性提示语句,并将生成的流程提示语句添加至流程状态节点的语句列表中。
92.对于当前处理的流程状态节点,若其激活状态为未激活,或者是所述流程状态节点对应的流程性提示语句全部输出之后,即表示该流程状态节点已处理完成,通过有限状态机确定下一个流程状态节点,即可切换至下一个流程状态节点。例如,对于若当前处理的流程状态节点为流程状态节点4,若流程状态节点4的激活状态为未激活,或者是流程状态节点4的语句列表中所有流程性提示语句已经全部输出后,即可切换至流程状态节点6继续处理,直至处理完有限状态机中的最后一个流程状态节点。
93.本技术实施例提供的方案可以应用于各类具有相对固定的交互流程的场景中,以自动生成推进交互过程的各种流程性提示语句。例如,可以应用庭审场景中,自动为法官生成在用于提示原被告双方进行后续庭审环节的语句,例如“原告宣读起诉书”、“被告宣读答辩状”等。还如,也可以应用于会议场景中,自动为会议主持人生成用于提示其它参会人员进行后续环节的语句,例如“有请下一位嘉宾发言”等。在实际场景中,该本技术实施例提供的方案可以采用云服务的形式提供给用户,用户通过终端设备连接云平台之后即可使用该语句生成方案,从而为用户提供更好的赋能服务。此外,还可以用于仲裁、调解等部门;还可以对输出的声音、语调进行个性化,把情感色彩增加进去;原被告的方言识别出来后,还可以输出相应的方言等
94.图9示出了可以应用于庭审场景的一种自动发问系统的系统框架,包括以下的模块:语音识别模块910、语义理解模块920、提问管理模块930、问题生成模块940和语音合成模块950。该系统中采用了本技术实施提供的语句生成方案来生成用于发问的问题,其中,语音识别模块910和语义理解模块920可以分别通过自动语音识别(automatic speech recognition,asr)和自然语义理解(natural language understanding,nlu)的相关技术,根据庭审中各个参与方的对话,获取流程性提示语句生成时需要的输入信息。所述提问管理模块930和问题生成模块940分别用于实现本技术实施例提供的语句生成方案,从而生成在庭审过程中需要自动提出的问题。语音合成模块950通过文本转语音(text to speech,tts)技术将生成的问题的文本转换为语音播放输出,从而完成自动庭审过程中的自动发问。
95.另外,本技术的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本技术的方法和/或技术方案。而调用本技术的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据程序指令运行的计算机设备的工作存储器中。在此,根据本技术的一些实施例包括一个如图10所示的计算设备,该设备包括存储有计算机可读指令的一个或多个存储器1010和用于执行计算机可读指令的处理器1020,其中,当该计算机可读指令被该处理器执行时,使得设备执行基于前述本技术的多个实施例的方法和/或技术方案。
96.此外,本技术的一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,计算机可读指令可被处理器执行以实现前述本技术的多个实施例的方法和/或技术方案。
97.需要注意的是,本技术可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(asic)、通用目的计算机或任何其他类似硬件设备来实现。在实施例中,本技术的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本技术的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,ram存储器,磁或光驱动器或软磁盘及类似设备。另外,本技术的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
98.本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
99.本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
100.对于本领域技术人员而言,显然本技术不限于上述示范性实施例的细节,而且在不背离本技术的精神或基本特征的情况下,能够以其他的具体形式实现本技术。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本技术的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本技术内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献