CN113688223A - 一种任务型对话管理方法和装置 - Google Patents
一种任务型对话管理方法和装置 Download PDFInfo
- Publication number
- CN113688223A CN113688223A CN202111064347.9A CN202111064347A CN113688223A CN 113688223 A CN113688223 A CN 113688223A CN 202111064347 A CN202111064347 A CN 202111064347A CN 113688223 A CN113688223 A CN 113688223A
- Authority
- CN
- China
- Prior art keywords
- slot
- state
- filling
- user
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 58
- 238000012545 processing Methods 0.000 claims abstract description 32
- 230000009471 action Effects 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims description 52
- 238000001914 filtration Methods 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 20
- 230000009191 jumping Effects 0.000 claims description 6
- 238000010801 machine learning Methods 0.000 abstract description 10
- 238000005429 filling process Methods 0.000 abstract description 9
- 230000014509 gene expression Effects 0.000 abstract description 4
- 230000000694 effects Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000005352 clarification Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000002620 method output Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本发明提供一种任务型对话管理方法和装置,当获取到用户的输入内容以后,判断当前对话节点是否处于填槽状态,如果处于填槽状态,对所述用户的输入内容进行填槽处理,如果处于常规对话状态,通过匹配模型获取与所述用户的输入内容相匹配的标准问,并根据此标准问确定跳转节点位置,进一步判断此节点是否有待填槽。如果需要填槽,执行填槽流程,当检测到填槽流程结束或者是当前节点无需填槽时,调取并执行此节点对应的动作指令,向用户输出回复等待用户下一步输入,通过基于机器学习和正则匹配联合的匹配模型,能够处理用户更加复杂的对话表达。
Description
技术领域
本发明涉及机器学习及自然语言处理领域技术领域,具体涉及一种任务型对话管理方法和装置。
背景技术
任务型对话管理是指由具体任务驱动的一个控制人机对话顺利进行的决策过程。在对话过程中,文本按照如图1所示的对话循环流程来进行流动。首先对用户的输入进行自然语言理解NLU,所述自然语言理解NLU用于实现意图的槽的识别。其次将自然语言理解的结果送入对话管理系统,更新维护对话管理内部的对话状态,采用对话管理DM根据当前的对话状态选择下一步的最优动作。最后,根据具体动作生成具体答案返回给用户,完成当前一轮对话。如果当前任务需要收集的信息没有完成,则继续按照上述对话循环流程进行对话,直到任务结束。
现有技术中,存在多种任务型对话管理方案,例如,申请公布号为CN112199477A的专利公开了一种对话管理方案和对话管理语料的构建方法,其中,方法包括:根据对话场景、定义意图、词槽和/或动作构建基于规则的对话流树;遍历对话流树,转化成对话管理训练语料的格式,以构建与对话流树能力相适应的对话管理模型;在开发阶段,通过与用户模拟器或人工智能训练师进行交互,并在人机对话体验达到预设效果后,通过上线运行收集用户的真实交互数据,并且引入用户的反馈,持续不断地迭代增强对话管理模型,以实现对话管理。
CN112199477A方案中对话管理语料的构建是基于规则的,基于规则的对话管理方式会要求写出大量的规则以保证能覆盖对应意图用户有可能的表达,但是工程实际中,这种方法比较僵硬,不利于构建灵活的对话流程,而且很难处理复杂的对话表达。
发明内容
有鉴于此,本发明实施例提供一种任务型对话管理方法和装置,以实现。
为实现上述目的,本发明实施例提供如下技术方案:
一种任务型对话管理方法,包括:
获取用户输入内容;
基于所述对话状态管理模块记录的对话状态判断当前对话节点是填槽状态还是常规对话状态;
如果当前对话状态为填槽时,采用填槽分支通过NLU模块对所述用户的输入内容进行处理;
如果当前对话状态为常规对话,将所述用户的输入内容与当前节点的候选标准问送入匹配模型,模型输出与所述用户输入内容最匹配的标准问,根据此标准问确定跳转节点,并进行节点跳转。如果此跳转节点需要填槽,则采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理,当不需要填槽或填槽完成后,更新当前对话状态并完善输出对话框。
可选的的,上述任务型对话管理方法中,获取用户输入内容之后,还包括:
将用户输入与候选的过滤标准问集合送入匹配模型,若匹配模型匹配结果为空,则无需过滤;若匹配到了标准问,则跳转至对应的过滤节点,调取并执行过滤节点对应的动作指令;
当不需要过滤时,执行动作由状态跟踪模块确认当前节点是填槽状态还是常规对话状态。
可选的的,上述任务型对话管理方法中,所述采用填槽分支通过NLU模块对所述用户输入内容或标准问进行填槽处理,包括:
判断当前对话的状态是否处于填槽状态;
当处于填槽状态时,调用NLU模块对必填槽进行填槽;
在填槽过程中,更新必填槽的剩余提问次数,当槽的询问次数为0时,从必填槽中删除该槽;
当所述必填槽填完时,将当前对话的状态设置为无需填槽状态,并继续对下一必填槽进行填槽,如果必填槽没有填完,保持所述前对话的状态为正在填槽状态。
可选的的,上述任务型对话管理方法中,还包括:
当检测到用户的输入内容的类型为用户提问时,记录当前对话节点,在基于所述用户提问进行回答以后,返回记录的当前对话节点。
一种任务型对话管理装置,包括:
背景描述模块,用于实现通用标准问、普通标准问、敏感词和对话流程的结构化表示,以对当前对话任务发生的场景进行描述;
对话状态管理模块,用于记录当前对话的状态;
动作决策模块,用于获取用户的输入内容和对话状态管理模块记录的对话状态,基于所述对话状态管理模块记录的对话状态判断当前对话节点是填槽状态还是常规对话状态,如果是填槽,则采用填槽分支通过NLU模块对所述用户的输入内容进行处理,如果是常规对话,将所述用户的输入内容与当前节点的候选标准问送入匹配模型(联合机器学习与正则匹配方法的匹配模型),模型输出与所述用户输入内容最匹配的标准问,根据此标准问确定跳转节点,并进行节点跳转。如果此跳转节点需要填槽,则采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理,当不需要填槽或填槽完成后,更新当前对话状态并完善输出对话框。;
回答处理模块,用于返回整个对话流程管理系统对所述用户输入得到的回答。
可选的,上述任务型对话管理装置中,还包括:
过滤模块,所述过滤模块用于判断是否需要对用户的输入内容进行过滤、复问或者是澄清,如果需要,对所述用户的输入内容进行过滤、复问或者是澄清处理;
此时,所述动作决策模块获取到的用户的输入内容为经所述过滤模块处理后的输入内容。
可选的,上述任务型对话管理装置中,所述采用填槽分支通过NLU模块对所述用户的输入内容进行处理,包括:
判断当前对话的状态是否处于填槽状态;
当处于填槽状态时,调用NLU模块对必填槽进行填槽;
在填槽过程中,更新必填槽的剩余提问次数,当槽的询问次数为0时,从必填槽中删除该槽;
当所述必填槽填完时,将当前对话的状态设置为无需填槽状态,并继续对下一必填槽进行填槽,如果必填槽没有填完,保持所述前对话的状态为正在填槽状态。
可选的,上述任务型对话管理装置中,所述动作决策模块还用于:
当检测到用户的输入内容的类型为用户提问时,记录当前对话节点,在基于所述用户提问进行回答以后,返回记录的当前对话节点。
基于上述技术方案,本发明实施例提供的上述方案,在本申请实施例公开的技术方案中,当获取到用户的输入内容以后,判断当前对话节点是否处于填槽状态,处于填槽状态,则对所述用户的输入内容进行填槽处理,否则,通过基于机器学习与正则匹配联合的匹配模型,获取与所述用户的输入内容相匹配的标准问,根据此标准问确定跳转节点位置,进一步判断此节点是否有待填槽。如果需要填槽,执行填槽流程,如果填槽流程结束或者是当前节点无需填槽时,调取并执行此节点对应的动作指令,输出回复等待用户下一步输入,通过基于机器学习和正则匹配联合的匹配模型,能够处理用户更加复杂的对话表达。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例公开的现有是现有技术中的技术方案对应的对话流程图;
图2为本申请实施例公开的任务型对话管理方法的流程示意图;
图3为本申请实施例公开的任务型对话管理方法的对应的一个实例图;
图4为本申请实施例公开的任务型对话管理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请公开了一种任务型对话管理方法,参见图2,本方法可以包括:
步骤S101:获取用户输入内容;
所述用户输入内容可以是用户输入的语音信息也可以是用户通过敲击键盘输入的文字信息,当然,也可以是具有某些加密代码的数字或符号。
步骤S102:基于所述对话状态管理模块记录的对话状态判断当前对话节点是填槽状态还是常规对话状态;
在本方案中,处于某个对话节点时,用户输入的内容可能是用于填槽或者是进行常规对话,所谓的填槽,指的是当本方法的应用端向用户给出一个问题后,用户针对该问题的回答,该种形式的用户的输入内容称之为填槽,其他的用户输入内容记为常规对话,常规的认为,用户率先发起的对话为常规对话,例如,参见图3,当用户输入内容为“喂,你好”时,其中“喂,你好”的具体内容可以基于识别需求自行设定,该打招呼即为常规对话,应用本方案会识别到“打招呼”对应的标准问为“你好!”,此时应用本方案的装置会调取与所述标准问相对应的输出内容,并输出,例如,图3中的“您好这里是XX中心,将于XX日在XX地举行活动,请问您是否有时间来参加活动呢?”,当用户听到装置输出的这句话以后,用户会根据自身需求向装置进行反馈,例如,图3中用户反馈的输入内容为“我有时间,可以参与活动”,对应“愿意参加”这条标准问。此标准问所在节点会包含两个待填槽“姓名”和“电话”,获取两个待填槽槽值的过程即为填槽。
步骤S103:如果当前对话状态为填槽时,采用填槽分支通过NLU模块对所述用户的输入内容进行填槽处理;
在本方案中,当当前对话节点的状态为填槽时,例如,当应用本方法的装置输出“请问您需要什么呢”,此时,当前对话节点的状态就是填槽状态,采用填槽分支通过NLU模块对所述用户的输入内容进行填槽处理,在设计时,可以根据不同的应用场景设置不同的槽类型,用户在获取到应用本方法的装置输出的标准问以后,会根据标准问的内容给出相应的回答,该回答即为用户输入内容,此时用户输入内容即为填槽值,所述NLU模块基于该填槽值进行填槽处理。
步骤S104:将用户的输入内容同节点候选标准问送入匹配模型中,得到与所述用户的输入内容最相匹配的标准问;
例如,当对话状态监控当前节点为常规对话时,在前文所述的对话流程的结构化表示文件中,会在匹配模型中记录每个节点的具体匹配方法。具体的匹配方法包括正则匹配、机器学习模型或者二者结合的方法。正则匹配用于项目冷启动或者机器学习模型无法判断的状况。在项目中,可以所有节点都是采用机器学习模型的匹配方法,也可以所有节点都是正则匹配方法,或者先正则匹配后机器学习模型匹配,可以预先将这些匹配方法封装在匹配模块中。这种设计为对话管理提供了很高的灵活性,可以在数据少的情况下冷启动,也可以在数据积累多的情况下迭代机器学习模型;在本方案中,在当前节点,所述用户的输入经过匹配模块得到与所述用户的输入内容相匹配的标准问。在本方案中,每个标准问会映射到一个对话状态目标节点,当检测到用户的输入内容对应到预设的标准问后,跳转执行该标准问对应的节点。所述标准问由预设的数据库中提取,该数据库可以存储于所述背景描述模块中,所述背景描述模块内存储有:通用标准问,普通标准问,敏感词和对话流程的结构化表示,通过标准问以及敏感词和对话流程的结构化表示对当前对话任务发生的场景进行描述。
步骤S105:判断是否需要对所述标准问进行填槽,如果需要填槽,执行步骤S106,当不需要填槽时,执行步骤S107;
在本方案中,当将用户输入内容映射到某个标准问时,判断是否需要对该标准问进行填槽,如果需要填槽,则采用NLU模块对所述用户的输入内容进行填槽处理,在填槽过程中,会调取与用户的输入内容相匹配的话术进行输出,例如,参见图3中,用户的输入内容为“我有时间,可以参与活动”,此时,获取到的用户的输入内容为常规对话,此时,获取与所述常规对话相匹配的标准问“愿意参加”,通过预设逻辑判断,需要对该标准问进行填槽,此时应用本方法的装置会基于该标准问进行填槽处理,在填槽过程中,设备会输出与所述标准问槽位相匹配的提问话术,例如与标准问“愿意参加”相对应的待填槽有两个“姓名”和“电话”。首先第一个槽对应的提问话术为“您好,请问您叫什么名字?”,此时,将对话状态标记为填槽状态,当获取到用户的输入内容为“张某”、“李某”时,将结果填入“姓名”的槽位中。根据预设逻辑判断,由于当前标准问还有第二个待填槽,将对话状态仍标记为填槽状态,继续获取与第二个待填槽“电话”对应的提问话术“您好,您的电话是多少?”,同上,获取到“134XXXXXXXX”的电话号码,填入电话槽位。当检查到待填槽位为空时,说明填槽结束,根据预设逻辑填槽结束后,输出当前节点的回答“是否会携带儿童参加呢?”,为下一步节点跳转做准备。通过填槽结果可以识别用户的最终目的,基于该目的生成并执行相应的操作指令。
步骤S106:采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理;
步骤S107:当不需要填槽或填槽完成后,更新当前对话状态并完善输出对话框;
在本方案中,在进行填槽时,通过设备与用户之间的不断交互完成填槽动作,在本方案中,装置会基于用户的输入内容判断是否缺少必填槽,如果缺少,基于所述必填槽,输出与所述必填槽相匹配的话术,将用户的反馈内容作为所述必填槽的槽值。例如,如图3,用户的输入内容对应的标准问是“愿意参加”时,此时用户输入内容的必填槽为“姓名”和“电话”,对应该必填槽的话术为“您好,请问您叫什么名字”及“您好,您的电话是多少”,如果用户输入内容对应的标准问是“无法参加”时,该标准问并不缺少所需填槽的必填槽,此时直接生成并执行与所述“无法参加”相对应的处理指令。
在本申请实施例公开的技术方案中,当获取到用户的输入内容以后,判断当前对话节点是否处于填槽状态,处于填槽状态,则对所述用户的输入内容进行填槽处理,否则,基于匹配模块,获取与所述用户的输入内容相匹配的标准问,进一步判断当前标准问所在节点是否需要填槽,如果需要填槽,执行填槽流程,如果填槽流程结束或者是无需对所述用户输入内容进行填槽时,调取并执行与填槽结果或者是无需填槽的标准问相匹配的控制指令。
在本申请另一实施例公开的技术方案中,为了保证能够清晰识别用户的输入内容,本申请上述实施例公开的技术方案中,如果当用户的输入内容不清楚,例如语言模糊、嘈杂时,还可以对用户进行复问,或者是对用户的输入内容进行澄清,在复问或者澄清用户输入内容时,节点状态不发生变化,一直保持在当前节点,例如,当用户的输入内容对应的标准问的得可靠度小于设定值时,将该标准问向用户进行澄清,确定该标准问是否符合用户意图,如果当用户的输入内容无法明确识别对应的标准问时,可以对用户进行复问。此时,如果用户输入内容涉及到必填槽,此时复问、澄清过程中可能会涉及到必填槽的修改和确认,即,在当装置无法正确识别得到与用户输入内容相匹配的必填槽的内容时,可以通过澄清和复问的方式确定所述必填槽的内容。
本申请另一实施例公开的技术方案中,用户输出的输入内容中可能会匹配到一些优先级高的标准问,例如“返回”、“投诉”、“退出”等。这些标准问需要特殊处理,本方案中由过滤节点处理。在本方案的对话管理任务中,加入了节点过滤模型。过滤的是优先级高的节点。例如,用户输入内容中具有某个敏感词,该敏感词会对应某个流程节点,如果该敏感词的流程节点高于该当前对话节点,此时,优先执行该敏感词对应的节点。在这里,所谓的敏感词是指在当前任务下比较重要的词汇目标,这些词汇需要特别的识别标记出来。比如常见的“投诉”相关类的词,这些词汇的优先级是最高的。用户输出了这种词汇,需要机器人有特定的反馈,比如转人工等特殊处理,如果出现的一些敏感词的优先级较低,则,过滤(删除或修改)掉该敏感词,继续执行本节点。
即,上述方法中,在获取用户输入内容之后,还包括:
对用户的输入内容进行过滤,将用户输入内容与候选的过滤标准问集合送入匹配模型,若匹配模型匹配结果为空,则无需过滤;若匹配到了标准问,则跳转至所述标准问对应的过滤节点,调取并执行过滤节点对应的动作指令;
当无需过滤时,由状态跟踪模块确认当前节点是填槽状态还是常规对话状态,如果是常规对话,将所述用户的输入内容与当前节点的候选标准问送入匹配模型,模型输出与所述用户输入内容最匹配的标准问,根据此标准问确定跳转节点,并进行节点跳转,如果此跳转节点需要填槽,则采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理。
上述过程中在判断匹配模型匹配结果是否为空时,具体规则是判断用户输入内容中是否具有预设的敏感词,如果有,判断所述敏感词对应的节点的优先级是否大于当前对话节点的优先级,如果大于,获取该敏感词对应的过滤标准问,表明匹配模型匹配到了与敏感词对应的过滤标准问,执行该过滤标准问对应的节点,如果不大于,表明无需过滤,继续执行当前节点。
CN112270182A公开的方案主要强调对未表述清楚的分析问题通过追问方式,将关键信息补充完整以完成分析任务。但是在实际的任务型对话管理工程中,还要考虑用户体验的问题,服务端不能一直问下去,进入一个死循环。由此,所述采用填槽分支通过NLU模块对所述用户输入内容或标准问进行填槽处理,包括:
判断当前对话的状态是否处于填槽状态;
当处于填槽状态时,调用NLU模块对必填槽进行填槽;
在填槽过程中,更新必填槽的剩余提问次数,当槽的询问次数为0时,从必填槽中删除该槽;
当所述必填槽全部填完时,将当前对话的状态设置为无需填槽状态,如果必填槽没有填完,继续对下一必填槽进行填槽,保持所述前对话的状态为正在填槽状态,调用NLU模块通过与用户交互的方式对必填槽进行填槽。
在本申请实施例公开的技术方案中,在填槽过程中,如果系统无法正确识别用户的输入内容,需要重复对用户发起询问,在本方案中,为了提高用户体验度,可最多询问N次,当询问N次后仍无法正确识别用户的输入内容时,直接删除该必填槽,遍历下一必填槽,将该必填槽的槽值设置为默认值,向用户确认该默认值,所谓的向用户确认该默认值,如果用户确认该默认值,则确定该填槽值为该默认值,如果用户否定了该默认值,则对槽进行修改。
在本申请另一实施例公开的技术方案中,在设备与用户的交互过程中,用户可能会不按照我们的流程进行对话,而引起另外的对话流程。比如当系统在进行满意度调查的任务下时,在调查途中用户突然好奇调查的目的,对发起调查的公司信息进行提问。此时则需要优先处理用户的提问,当问答结束后,在返回本对话节点,此时,本方案中,还可以包括:当检测到用户的输入内容的类型为用户提问时,记录当前对话节点,在基于所述用户提问进行回答以后,返回记录的当前对话节点。
本实施例中公开了一种任务型对话管理装置,装置中的各个单元的具体工作内容,请参见上述方法实施例的内容,下面对本发明实施例提供的任务型对话管理装置进行描述,下文描述的任务型对话管理装置与上文描述的任务型对话管理装置方法可相互对应参照。
参见图4,任务型对话管理装置,其特征在于,包括:
背景描述模块100,用于实现通用标准问、普通标准问、敏感词和对话流程的结构化表示,以对当前对话任务发生的场景进行描述;
对话状态管理模块200,用于记录当前对话的状态;
动作决策模块300,用于获取用户的输入内容和对话状态管理模块记录的对话状态,基于所述对话状态管理模块记录的对话状态判断岗前对话节点是填槽还是常规对话,如果是填槽,则采用填槽分支通过NLU模块对所述用户的输入内容进行填槽处理,如果是常规对话,将所述用户的输入内容与当前节点的候选标准问发送至匹配模型,基于匹配模型的输出结果由所述背景描述模块中调取得到与所述用户的输入内容相匹配的标准问,判断是否需要对所述标准问进行填槽,如果需要填槽,则采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理,当不需要填槽或填槽完成后,更新当前对话状态并完善输出对话框;
回答处理模块400,用于提取并用户的输入内容中的敏感词。
对应于上述方法,上述装置中还包括过滤模块,所述过滤模块用于判断是否需要对用户的输入内容进行过滤、复问或者是澄清,如果需要,对所述用户的输入内容进行过滤、复问或者是澄清处理;
此时,所述动作决策模块获取到的用户的输入内容为经所述过滤模块处理后的输入内容。
对应于上述方法,所述动作决策模块300在采用填槽分支通过NLU模块对所述用户的输入内容进行处理时,还用于:
判断当前对话的状态是否处于填槽状态;
当处于填槽状态时,调用NLU模块对必填槽进行填槽;
在填槽过程中,更新必填槽的剩余提问次数,当槽的询问次数为0时,从必填槽中删除该槽;
当所述必填槽填完时,将当前对话的状态设置为无需填槽状态,并继续对下一必填槽进行填槽,如果必填槽没有填完,保持所述前对话的状态为正在填槽状态。
对应于上述方法,所述动作决策模块,还用于:
判断用户的输入内容中是否具有敏感词汇,如果具有敏感词汇,调取并执行与所述敏感词汇对应的预设流程。
与上述方法相对应,所述动作决策模块还用于:
当检测到用户的输入内容的类型为用户提问时,记录当前对话节点,在基于所述用户提问进行回答以后,返回记录的当前对话节点。
为了描述的方便,描述以上系统时以功能分为各种模块分别描述。当然,在实施本发明时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种任务型对话管理方法,其特征在于,包括:
获取用户输入内容;
基于当前对话节点的状态,由状态跟踪模块确认当前节点是填槽状态还是常规对话状态;
如果当前对话状态为填槽时,采用填槽分支通过NLU模块对所述用户的输入内容进行填槽处理;
如果当前对话状态为常规对话,将所述用户的输入内容与当前节点的候选标准问送入匹配模型,所述匹配模型输出与所述用户输入内容匹配的标准问,根据此标准问确定跳转节点,并进行节点跳转,如果此跳转节点需要填槽,则采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理,当不需要填槽或填槽完成后,更新当前对话状态并完善输出对话框。
2.根据权利要求1所述的任务型对话管理方法,其特征在于,获取用户输入内容之后,还包括:
用户输入内容与候选的过滤标准问集合送入匹配模型,若匹配模型匹配结果为空,则无需过滤;若匹配到了标准问,则跳转至所述标准问对应的过滤节点,调取并执行过滤节点对应的动作指令;
当无需过滤时,执行动作由状态跟踪模块确认当前节点是填槽状态还是常规对话状态。
3.根据权利要求1所述的任务型对话管理方法,其特征在于,采用填槽分支通过NLU模块对所述用户输入内容或标准问进行填槽处理,包括:
判断当前对话的状态是否处于填槽状态;
当处于填槽状态时,调用NLU模块对必填槽进行填槽;
在填槽过程中,更新必填槽的剩余提问次数,当槽的询问次数为0时,从必填槽中删除该槽;
当所述必填槽填完时,将当前对话的状态设置为无需填槽状态,并继续对下一必填槽进行填槽,如果必填槽没有填完,保持所述前对话的状态为正在填槽状态。
4.根据权利要求1所述的任务型对话管理方法,其特征在于,还包括:
当检测到用户的输入内容的类型为用户提问时,记录当前对话节点,在基于所述用户提问进行回答以后,返回记录的当前对话节点。
5.一种任务型对话管理装置,其特征在于,包括:
背景描述模块,用于实现通用标准问、普通标准问、敏感词和对话流程的结构化表示,以对当前对话任务发生的场景进行描述;
对话状态管理模块,用于记录当前对话的状态;
动作决策模块,用于获取用户的输入内容和对话状态管理模块记录的对话状态,基于所述对话状态管理模块记录的对话状态判断当前对话节点是填槽状态还是常规对话状态,如果是填槽,则采用填槽分支通过NLU模块对所述用户的输入内容进行填槽处理,如果是常规对话,将所述用户的输入内容与当前节点的候选标准问送入匹配模型,匹配模型输出与所述用户输入内容匹配的标准问,根据此标准问确定跳转节点,并进行节点跳转,如果此跳转节点需要填槽,则采用填槽分支通过NLU模块对所述标准问的候选槽进行填槽处理,当不需要填槽或填槽完成后,更新当前对话状态并完善输出对话框;
回答处理模块,用于返回整个对话流程管理系统对所述用户输入得到的回答。
6.根据权利要求5中的任务型对话管理装置,其特征在于,还包括:
过滤模块,所述过滤模块用于判断是否需要对用户的输入内容进行过滤、复问或者是澄清,如果需要,对所述用户的输入内容进行过滤、复问或者是澄清处理;
此时,所述动作决策模块获取到的用户的输入内容为经所述过滤模块处理后的输入内容。
7.根据权利要求5中的任务型对话管理装置,其特征在于,采用填槽分支通过NLU模块对所述用户的输入内容进行处理,包括:
判断当前对话的状态是否处于填槽状态;
当处于填槽状态时,调用NLU模块对必填槽进行填槽;
在填槽过程中,更新必填槽的剩余提问次数,当槽的询问次数为0时,从必填槽中删除该槽;
当所述必填槽填完时,将当前对话的状态设置为无需填槽状态,并继续对下一必填槽进行填槽,如果必填槽没有填完,保持所述前对话的状态为正在填槽状态。
8.根据权利要求5中的任务型对话管理装置,其特征在于,所述动作决策模块还用于:
当检测到用户的输入内容的类型为用户提问时,记录当前对话节点,在基于所述用户提问进行回答以后,返回记录的当前对话节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111064347.9A CN113688223A (zh) | 2021-09-10 | 2021-09-10 | 一种任务型对话管理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111064347.9A CN113688223A (zh) | 2021-09-10 | 2021-09-10 | 一种任务型对话管理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113688223A true CN113688223A (zh) | 2021-11-23 |
Family
ID=78586028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111064347.9A Pending CN113688223A (zh) | 2021-09-10 | 2021-09-10 | 一种任务型对话管理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688223A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180174055A1 (en) * | 2016-12-19 | 2018-06-21 | Giridhar S. Tirumale | Intelligent conversation system |
CN109493166A (zh) * | 2018-10-23 | 2019-03-19 | 深圳智能思创科技有限公司 | 一种针对电子商务导购场景任务型对话系统的构建方法 |
WO2019098409A1 (ko) * | 2017-11-15 | 2019-05-23 | (주)페르소나시스템 | 머신 러닝 기반의 챗봇용 데이터 추가 장치 |
CN110377720A (zh) * | 2019-07-26 | 2019-10-25 | 中国工商银行股份有限公司 | 智能多轮交互方法和系统 |
CN110472030A (zh) * | 2019-08-08 | 2019-11-19 | 网易(杭州)网络有限公司 | 人机交互方法、装置和电子设备 |
CN112199477A (zh) * | 2020-09-04 | 2021-01-08 | 北京邮电大学 | 对话管理方案和对话管理语料的构建方法 |
WO2021121436A1 (zh) * | 2019-12-21 | 2021-06-24 | 华南理工大学 | 一种面向任务型对话系统的对话策略方法 |
CN113239167A (zh) * | 2021-05-31 | 2021-08-10 | 百融云创科技股份有限公司 | 一种可自动生成对话策略的任务型对话管理方法和系统 |
-
2021
- 2021-09-10 CN CN202111064347.9A patent/CN113688223A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180174055A1 (en) * | 2016-12-19 | 2018-06-21 | Giridhar S. Tirumale | Intelligent conversation system |
WO2019098409A1 (ko) * | 2017-11-15 | 2019-05-23 | (주)페르소나시스템 | 머신 러닝 기반의 챗봇용 데이터 추가 장치 |
CN109493166A (zh) * | 2018-10-23 | 2019-03-19 | 深圳智能思创科技有限公司 | 一种针对电子商务导购场景任务型对话系统的构建方法 |
CN110377720A (zh) * | 2019-07-26 | 2019-10-25 | 中国工商银行股份有限公司 | 智能多轮交互方法和系统 |
CN110472030A (zh) * | 2019-08-08 | 2019-11-19 | 网易(杭州)网络有限公司 | 人机交互方法、装置和电子设备 |
WO2021121436A1 (zh) * | 2019-12-21 | 2021-06-24 | 华南理工大学 | 一种面向任务型对话系统的对话策略方法 |
CN112199477A (zh) * | 2020-09-04 | 2021-01-08 | 北京邮电大学 | 对话管理方案和对话管理语料的构建方法 |
CN113239167A (zh) * | 2021-05-31 | 2021-08-10 | 百融云创科技股份有限公司 | 一种可自动生成对话策略的任务型对话管理方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096191B (zh) | 一种人机对话方法、装置及电子设备 | |
CN107818798A (zh) | 客服服务质量评价方法、装置、设备及存储介质 | |
CN110138982A (zh) | 基于人工智能的服务实现 | |
CN116303949B (zh) | 一种对话处理方法、系统、存储介质及终端 | |
US11995523B2 (en) | Systems and methods for determining training parameters for dialog generation | |
CN109739605A (zh) | 生成信息的方法和装置 | |
Koetter et al. | Motivations, classification and model trial of conversational agents for insurance companies | |
CN116049360A (zh) | 基于客户画像的智能语音对话场景话术干预方法及系统 | |
CN111462726B (zh) | 一种外呼应答方法、装置、设备及介质 | |
Koetter et al. | Conversational agents for insurance companies: from theory to practice | |
CN106909677B (zh) | 一种生成提问的方法及装置 | |
CN116521850A (zh) | 一种基于强化学习的交互方法及装置 | |
CN111858874A (zh) | 对话服务处理方法、装置、设备及计算机可读存储介质 | |
CN113821620B (zh) | 多轮对话任务处理方法、装置及电子设备 | |
CN110489519A (zh) | 基于会话预测模型的会话方法及相关产品 | |
CN116739004B (zh) | 一种意图识别方法、装置、设备及可读存储介质 | |
CN109726002B (zh) | 一种处理流程调整方法及装置 | |
CN112069830A (zh) | 一种智能会话方法及装置 | |
CN113688223A (zh) | 一种任务型对话管理方法和装置 | |
CN115757749A (zh) | 一种对话处理方法、装置、电子设备及存储介质 | |
CN110047473A (zh) | 一种人机协作交互方法及系统 | |
CN114462376A (zh) | 基于rpa和ai的庭审笔录生成方法、装置、设备及介质 | |
Chhabria et al. | Evolving Journey of Chatbots: Insights into Business Decisions | |
Bang et al. | UX Design and Evaluation on Conversational Bot Supporting Multi-Turn and Multi-Domain Dialogues | |
CN117453372B (zh) | 一种任务规划方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |