CN115952272A - 一种生成对话信息的方法、装置、设备及可读存储介质 - Google Patents
一种生成对话信息的方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN115952272A CN115952272A CN202310227722.XA CN202310227722A CN115952272A CN 115952272 A CN115952272 A CN 115952272A CN 202310227722 A CN202310227722 A CN 202310227722A CN 115952272 A CN115952272 A CN 115952272A
- Authority
- CN
- China
- Prior art keywords
- information
- dialogue
- memory information
- user
- text
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 97
- 230000015654 memory Effects 0.000 claims abstract description 369
- 239000013598 vector Substances 0.000 claims abstract description 116
- 238000012549 training Methods 0.000 claims description 52
- 230000006399 behavior Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 16
- 239000012634 fragment Substances 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 32
- 241000282414 Homo sapiens Species 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 230000006872 improvement Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000005070 sampling Methods 0.000 description 8
- 238000013473 artificial intelligence Methods 0.000 description 5
- 235000013353 coffee beverage Nutrition 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 235000015123 black coffee Nutrition 0.000 description 2
- 235000015115 caffè latte Nutrition 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种生成对话信息的方法、装置、设备及可读存储介质,通过将用户输入的第一对话信息和上下文对话信息输入编码器得到目标向量,进而基于目标向量查找到相似的记忆信息的向量,从而确定目标记忆信息,将目标记忆信息以及上下文对话信息输入预训练的语言模型,得到语言模型输出的文本,将其作为第二对话信息返回给用户。可见,基于查找到的目标记忆信息和上下文对话信息,通过预训练的语言模型,生成第二对话信息的方式,第二对话信息能够基于目标记忆信息保证智能对话系统在与用户对话过程中具备人格、性格等与真实人类相近的设定,并在跨对话轮次的对话中保持观点和属性在表达上的一致性,提高了智能对话系统的表达能力。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种生成对话信息的方法、装置、设备及可读存储介质。
背景技术
随着计算机技术的发展和业务深入融合的需要,人工智能技术在人们日常生活中的应用逐渐广泛。如何基于用户输入的对话信息自动生成反馈信息,实现人机对话,已经成为人工智能领域中的一个重要研究方向。
现有的生成对话信息的方法中,基于用户输入的对话信息,确定用户的意图,然后根据用户的意图从预先设置的模板中确定意图对应的模板,并基于模板生成对话信息,并反馈给用户。
但是,上述基于模板生成对话信息的方案,仅适用于任务导向型的人机对话场景,智能对话系统仍无法具备人格、性格等与真实人类相近的设定,进而无法使得智能对话系统拥有与真实人类一样的表达能力。
基于此,本发明提供一种生成对话信息的方法。
发明内容
本发明提供一种生成对话信息的方法、装置、设备及可读存储介质,以部分的解决现有技术存在的上述问题。
本发明采用下述技术方案:
本发明提供了一种生成对话信息的方法,包括:
响应于用户输入的第一对话信息,将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量;
根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量,并根据与所述目标向量相似的记忆信息的向量确定目标记忆信息;
将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,并将所述第二对话信息返回给所述用户。
可选地,在将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息之前,所述方法还包括:
获取第一提示文本;所述第一提示文本包含记忆样例和所述记忆样例对应的对话信息,所述第一提示文本用于提示语言模型根据输入的记忆信息执行第二对话信息的预测任务;
将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,具体包括:
将所述第一提示文本、所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息。
可选地,根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量之前,所述方法还包括:
获取第二提示文本;所述第二提示文本包含第一对话样例和所述第一对话样例对应的记忆信息,所述第二提示文本用于提示语言模型根据输入的对话信息执行记忆信息的提取任务;
将所述第二提示文本,以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为记忆信息;
将所述记忆信息输入所述编码器,得到所述记忆信息的向量,并将所述记忆信息的向量存储在数据库中。
可选地,获取第二提示文本,具体包括:
获取所述智能对话系统和所述用户的多轮对话,其中,所述多轮对话中的每一轮对话包含所述用户输入的第一对话信息和所述智能对话系统输出的第二对话信息;
从所述多轮对话中截取包含若干对话信息的对话片段;
根据所述对话片段包含的最后一个对话信息的对话主体,确定第二提示文本的类型;其中,所述对话主体为所述智能对话系统或所述用户;
根据所述类型,从数据库存储的对话样例和记忆信息中,查找得到所述类型对应的对话样例和所述类型对应的记忆信息作为第二提示文本。
可选地,所述第二提示文本还包括第二对话样例,所述第二对话样例包含的各对话信息中不存在记忆信息。
可选地,获取第一提示文本,具体包括:
当所述目标记忆信息包括所述用户的目标记忆信息,和所述智能对话系统的目标记忆信息时,分别确定所述用户对应的第一提示文本和所述智能对话系统对应的第一提示文本;
将所述第一提示文本、所述目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,具体包括:
将所述用户对应的第一提示文本、所述用户的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第一文本;
将所述智能对话系统对应的第一提示文本、所述智能对话系统的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第二文本;
根据所述第一文本和所述第二文本确定第二对话信息。
可选地,预先训练编码器,具体包括:
预先获取参考记忆信息,以及智能对话系统和参考用户之间的历史对话,作为训练样本;
确定所述参考记忆信息和所述历史对话之间的匹配度,作为所述训练样本的标注;
将所述训练样本输入由所述编码器以及预测层构成的预测模型,得到所述编码器输出的所述训练样本的特征;
将所述训练样本的特征输入所述预测模型的预测层,得到所述预测层输出的所述训练样本包含的历史对话和参考记忆信息之间的预测匹配度;
以所述预测匹配度和所述训练样本的标注的差异的最小化为训练目标,训练所述预测模型;
根据训练完成的预测模型,得到训练完成的编码器。
可选地,所述方法还包括:
响应于用户输入的智能对话系统的第一描述文本,所述第一描述文本用于描述所述智能对话系统的虚拟行为和虚拟属性,根据所述第一描述文本生成所述智能对话系统的记忆信息,并将所述智能对话系统的记忆信息存储在数据库中;和/或
响应于用户输入的所述用户的第二描述文本,所述第二描述文本用于描述所述用户的行为和属性,根据所述第二描述文本生成所述用户的记忆信息,并将所述用户的记忆信息存储在数据库中。
本发明提供了一种生成对话信息的装置,包括:
目标向量确定模块,用于响应于用户输入的第一对话信息,将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量;
记忆信息查找模块,用于根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量,并根据与所述目标向量相似的记忆信息的向量确定目标记忆信息;
第二对话信息确定模块,用于将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,并将所述第二对话信息返回给所述用户。
本发明提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述生成对话信息的方法。
本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述生成对话信息的方法。
本发明采用的上述至少一个技术方案能够达到以下有益效果:
本发明提供的生成对话信息的方法中,通过将用户输入的第一对话信息和上下文对话信息输入编码器得到目标向量,进而基于目标向量查找到相似的记忆信息的向量,从而确定目标记忆信息,将目标记忆信息以及上下文对话信息输入预训练的语言模型,得到语言模型输出的文本,将其作为第二对话信息返回给用户。可见,基于查找到的目标记忆信息和上下文对话信息,通过预训练的语言模型,生成第二对话信息的方式,第二对话信息能够基于目标记忆信息保证智能对话系统在与用户对话过程中具备人格、性格等与真实人类相近的设定,并在跨对话轮次的对话中保持观点和属性在表达上的一致性,提高了智能对话系统的表达能力。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明中一种生成对话信息的方法的流程示意图;
图2为本发明中一种生成对话信息的方法的流程示意图;
图3为本发明中一种生成对话信息的方法的流程示意图;
图4为本发明中一种生成对话信息的方法的流程示意图;
图5为本发明提供的一种生成对话信息的装置的示意图;
图6为本发明提供的对应于图1的电子设备示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
另外,需要说明的是,本发明中所有获取信号、信息或数据的动作都是在遵照所在地相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
随着人工智能技术的发展,人们越来越多地使用人工智能技术对工作生活中的业务进行处理。以人工智能技术应用在智能对话领域为例,用户与智能对话系统之间可通过一定的交互方式,完成人与智能对话系统之间的信息交换。
通常情况下,智能对话系统可由语音唤醒(Keyword Spotting,KWS)、语音识别(Automatic Speech Recognition,ASR)、自然语音处理(Natural Language Processing,NLP)、自然语言生成(Natural Language Generation,NLG)等技术实现。
人机对话的核心在于智能对话系统能够在预设的系统框架下,根据先验的数据训练或学习,自动对用户输入的信息进行理解和分析,并给出有意义的回复。其中,用户输入的信息可以涉及业务咨询、业务办理等任务导向型信息,也可以是闲聊等非任务导向型信息,并且,用户输入的信息可以是以语音、文字、图片等形态存在的信息,本发明对用户输入的信息的类型以及形态不做限定。
目前,常用的生成对话信息的方案由基于模板的方法、基于机器学习模型的方法等。具体的,基于模板的方法指的是根据用户的输入,识别用户的对话意图,基于对话意图匹配对话信息模板,之后基于对话信息模板生成对话信息,基于模板的方法中模板是预定义的,模板的更新周期较长,无法实时更新对用户的理解。另一种基于机器学习模型的方法,训练用于生成对话信息的机器学习模型需要大量的训练数据和较为准确的标注,并且只能使用与用户对话的有限轮的上下文信息,智能对话系统仍无法具备人格、性格等与真实人类相近的设定,进而无法使得智能对话系统拥有与真实人类一样的表达能力。
基于此,本发明提供一种生成对话信息的方法,基于查找到的目标记忆信息和上下文对话信息,通过预训练的语言模型,生成第二对话信息的方式,第二对话信息能够基于目标记忆信息保证智能对话系统在与用户对话过程中具备人格、性格等与真实人类相近的设定,并在跨对话轮次的对话中保持观点和属性在表达上的一致性,提高了智能对话系统的表达能力。
以下结合附图,详细说明本发明各实施例提供的技术方案。
图1为本发明提供的一种生成对话信息的方法的流程示意图。
S100:响应于用户输入的第一对话信息,将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量。
本发明实施例中提供的一种生成对话信息的方法,该方法的执行过程可由用于执行对话信息生成的服务器等电子设备执行。另外,本发明实施例提供的生成对话信息的方法中所涉及到的语言模型以及编码器可以是预先训练的,语言模型和编码器的训练过程可以用于机器学习模型训练的电子设备执行,执行生成对话信息的方法的电子设备和执行模型训练方法的电子设备可以相同也可以不同,本发明对此不做限定。
在实际应用中,用户使用配置有智能对话系统的智能对话设备时,与智能对话设备进行人机对话交互。在人机对话的过程中,可通过首先接收并处理由用户输入的第一对话信息,其次基于第一对话信息分析用户的意图,然后根据用户的意图输出第二对话信息这三个过程完成一轮智能对话系统与用户的对话。当然,为了实现用户的意图,智能对话系统可以与用户进行多轮对话。在本发明实施例中,并不限制智能对话系统和用户之间对话的具体场景,可以是任务导向型的人机对话场景,也可以是如闲聊的非任务导向型的人机对话场景。
在人机对话过程中,智能对话系统可将由用户输入的第一对话信息以及智能对话系统响应于该第一对话信息输出的第二对话信息进行记录,生成至少一轮对话信息。通常,每轮对话信息可包括由用户输入的至少一个第一对话信息以及由智能对话系统输出的第二对话信息。其中,第一对话信息和第二对话信息的形态可以是以语音、文字、图片等形态,本发明对此不做限定。
并且,为了进一步提高智能对话系统的表达能力的真实性,在本发明实施例中并不限制每一轮对话中对话的发起方是否为用户,也就是说,智能对话系统在特定场景下可以自发的与用户交流,并通过输出的第二对话信息向用户传递信息。
为了提高智能对话系统输出的第二对话信息的真实性,在本发明实施例中,可以基于用户在当前轮对话中输入的第一对话信息和当前轮之前的若干轮对话的对话信息,从数据库中召回用户的记忆信息和/或智能对话系统的记忆信息,并基于召回的记忆信息生成第二对话信息。
结合用户的记忆信息生成第二对话信息,可以使得智能对话系统随着与用户的对话轮次的增加,对用户的各方面认知越来越强,在当前轮对话以及后续对话中可以基于用户的记忆信息生成对话连接感更强的第二对话信息,缩短智能对话系统的表达能力和真实人类的表达能力之间的差距。
结合智能对话系统的记忆信息生成第二对话信息,可以保证智能对话系统在与用户的多次不同对话过程中,保持智能对话系统自身的立场、观点、经历的一致性,减轻不同时间、场景下多次人机对话的割裂感。
所谓记忆信息可以是用于描述用户或者智能对话系统的行为或者属性的自然语言文本。例如,用户在人机对话中的名称为小明,则用户的单条记忆信息可以是“{小明}喜欢打篮球”。
在此步骤中,为了从数据库中召回用户的记忆信息和/或智能对话系统的记忆信息,可以基于用户输入的第一对话信息和当前轮对话之前的上下文对话信息进行编码,得到目标向量,利用目标向量在数据库存储的记忆信息的向量中检索得到当前论对话所需要的目标记忆信息。
其中,编码器是预先基于参考记忆信息以及智能对话系统和参考用户之间的历史对话信息训练得到的。因此,编码器能够将记忆信息和对话信息映射在同一空间中。本发明对编码器的具体模型结构不做限定。
S102:根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量,并根据与所述目标向量相似的记忆信息的向量确定目标记忆信息。
具体的,数据库中存储的记忆信息的向量也可以是基于上述步骤S100所述的编码器得到的。其中,数据库除了存储的记忆信息的向量,还可以存储由记忆信息的向量和记忆信息之间的对应关系,这样,通过向量检索的方式,即可通过查找与目标向量相似的记忆信息的向量的方式,查找到当前轮对话生成第二对话信息所需的目标记忆信息。
数据库中存储的记忆信息可包括用户的记忆信息和智能对话系统的记忆信息,其中,用户的记忆信息可以通过用户输入得到、或者基于用户的历史对话提取得到、还可以是响应于用户的生成指令由智能对话系统生成。智能对话系统的记忆信息可以通过用户输入得到、或者基于与用户的历史对话提取得到,还可以是在特定场景下根据历史对话生成得到。用户的记忆信息和智能对话系统的记忆信息的获得方式可以根据具体的应用场景灵活应用,本发明对此不做具体限定。
在此步骤中,由于记忆信息通常也是自然语言文本,在自然语言处理中,可以通过将文本表示为数值向量,数值向量的每个维度对应于文本的一个特征,之后,在确定两个文本在数值向量上的相似度。因此,可以基于向量检索的方式,通过确定目标向量和数据库中存储的各记忆信息的向量之间的距离,确定向量相似度,并将向量相似度较高的若干各记忆信息的向量,作为与目标向量相似的记忆信息的向量。进而将与目标向量相似的记忆信息的向量对应的记忆信息作为目标记忆信息。其中,目标向量和各记忆信息的向量之间的距离的确定方案可以是现有的任一向量距离确定方案,如欧式距离、切比雪夫距离、余弦距离等,本发明对此不做限定。
目标记忆信息的向量和目标向量在同一空间中的距离是较小的,说明目标记忆信息在语义方面与用户在当前轮对话中输入的第一对话信息以及上下文对话信息综合得到的语义是相近的,基于目标记忆信息生成第二对话信息有助于提升第二对话信息的准确度和真实性。
S104:将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,并将所述第二对话信息返回给所述用户。
在此步骤中,通过预训练的语言模型,综合从数据库中召回的目标记忆信息,以及智能对话系统和用户之间对话的上下文对话信息,生成对话信息。其中,预训练的语言模型可以的任一用于生成文本的语言模型,如预训练模型(generative pre-training,GPT)、预训练语言模型(Pre-trained Language Model,PLM)、大规模预训练语言模型(LargeLanguage Model,LLM)、语言模型嵌入模型(Embedding from Language Model,ELMo)等,本发明对预训练语言模型的具体类型不做限定。
由于通过目标向量检索存储有记忆信息的数据库,得到目标记忆信息,并将目标记忆信息将上下文对话信息结合输入到预训语言模型,生成第二对话信息。由于引入了与上下文对话信息相关的目标记忆信息,智能对话系统能够基于记忆信息更好的产生与用户的共鸣,并伴随着人机对话的轮次的增加,越来越了解用户。另一方面还可以在人机对话中保持相对一致和真实的人格和表达,综合提升智能对话系统输出第二对话信息的真实性和准确性。
本说明提供的生成对话信息的方法中,通过将用户输入的第一对话信息和上下文对话信息输入编码器得到目标向量,进而基于目标向量查找到相似的记忆信息的向量,从而确定目标记忆信息,将目标记忆信息以及上下文对话信息输入预训练的语言模型,得到语言模型输出的文本,将其作为第二对话信息返回给用户。可见,基于查找到的目标记忆信息和上下文对话信息,通过预训练的语言模型,生成第二对话信息的方式,第二对话信息能够基于目标记忆信息保证智能对话系统在与用户对话过程中具备人格、性格等与真实人类相近的设定,并在跨对话轮次的对话中保持观点和属性在表达上的一致性,提高了智能对话系统的表达能力。
在本发明实施例中,用户的记忆信息和智能对话系统的记忆信息在底层数据组织上一致,记忆信息可以有结构化信息与非结构化信息两种形态,结构化信息描述用户/智能对话系统的固有属性,包含名称、ID、基本配置信息(性格、性别)等。非结构化信息则是以自然语言文本表示的用户/智能对话系统的记忆列表,列表中的每一项对应了用户/智能对话系统的单条记忆,单条记忆通常以单句的自然语言文本呈现,记忆信息用于表征用户或者智能对话系统的“虚拟”行为或“虚拟”经历,如“{用户名称}喜欢喝可乐。”,“{智能对话系统名称}出生于1982年”。
可以理解的是,用户的记忆信息中包含的用于描述“虚拟”行为或“虚拟”经历的自然语言文本中,所谓的“虚拟”是用于指示该行为或经历是由用户陈述(预先输入或从用户输入的第一对话信息中总结)的,并不一定是客观事实,本发明实施例中,对记忆信息的客观真实性并不做限定。
在本发明一个或多个实施例中,在如图1步骤S104所示将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息之前,为了使得语言模型输出的文本能够直接作为第二对话信息,可以通过给语言模型输入提示的方式,使得预训练的语言模型在不进行参数更新的情况下,通过输入中加入的提示文本,就能让语言模型学习到当前执行的任务需要输出什么样的文本,具体方案如下,如图2所示:
S200:获取第一提示文本;所述第一提示文本包含记忆样例和所述记忆样例对应的对话信息,所述第一提示文本用于提示语言模型根据输入的记忆信息执行第二对话信息的预测任务。
在实际应用中,预训练的语言模型具备涌现能力(Emergent ability),也即情境学习(In-Context Learning,ICL)能力,预训练的语言模型可以在提示文本的指导下,完成提示文本对应的文本预测任务,并且无需带标注的数据来微调预训练的语言模型,就能够直接应用于提示文本所提示的下游任务,从而避免调整预训练语言模型的参数产生的大量开销。
在此步骤中,第一提示文本用于提示预训练的语言模型基于输入模型的记忆信息生成第二对话信息。因此,第一提示文本包括记忆样例和记忆样例对应的对话信息。记忆样例可以是从存储的当前用户的记忆信息采样得到,也可以是从其他用户的记忆信息采样得到,当然,还可以人工预先编写的。记忆样例对应的对话信息可以视为是符合记忆样例包含的记忆信息的智能对话系统可输出的第二对话信息,同样,记忆样例对应的对话信息可以是从当前用户的人机对话记录中采样得到的,也可以是从其他用户的人机对话记录中采样得到,当然,还可以是人工预先编写的。本发明对记忆样例和记忆样例对应的对话信息的具体来源和具体内容不做限定。
另外,可以将一个记忆样例和一个记忆样例对应的对话信息作为一条提示文本,第一提示文本中可以包括多条提示文本,第一提示文本包含的提示文本的数量可以根据具体的应用场景确定,本发明对此不做限定。
例如,第一提示文本可以为:
“这是一个第二对话信息生成任务。
{小红}喜欢喝咖啡→你喜欢喝黑咖啡还是拿铁咖啡?
{小红}是大学生→你的大学食堂味道如何?”
其中,由于预训练的语言模型的任务是生成应当由智能对话系统输出的第二对话信息,因此,记忆样例对应的对话信息通常是以智能对话系统为对话主体的。一般的,第一提示文本包含的记忆样例所表征的记忆信息与如图1步骤S102检索得到的目标记忆信息可以不相关,也即,第一提示文本仅用于提示语言模型执行基于记忆信息生成第二对话信息的任务,并不涉及基于何种记忆信息生成第二对话信息。
S202:将所述第一提示文本、所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息。
由于第一提示文本、目标记忆信息和上下文对话信息均可以是自然语言文本的形式,因此,可以将第一提示文本、目标记忆信息和上下文对话信息拼接起来,一起输入预训练的语言模型中。预训练的语言模型可以基于输入中包含的第一提示文本明确当前任务为预测第二对话信息的文本预测任务,根据输入中包含的目标记忆信息和上下文对话信息确定当前对话场景、对话意图以及与当前对话情景相关联的用户和智能对话系统的记忆信息。这样,预训练的语言模型可以在第一提示文本的任务引导下,基于目标记忆信息和上下文对话信息生成较为真实的第二对话信息。
例如,仍然以上述步骤S200给出的示例为例,第一提示文本、目标记忆信息和上下文对话信息拼接到一起可以为:
“这是一个第二对话信息生成任务。
第一提示文本:
{小红}喜欢喝咖啡→你喜欢喝黑咖啡还是拿铁咖啡?
{小红}是大学生→你的大学食堂味道如何?
上下文对话信息:
小明:你昨天干什么了?
虚拟人:我昨天看书了,你呢?
小明:我昨天在家打游戏。
目标记忆信息:
{小明}喜欢打篮球。”
在本发明一个或多个实施例中,在如图2步骤S200所示获取第一提示文本中,由于第一提示文本是用于提示语言模型结合目标记忆信息执行输出第二对话信息的任务的,而基于用户输入的第一对话信息和上下文对话信息查找到的目标记忆信息可以是用户的记忆信息,也可以是智能对话系统的记忆信息,语言模型可以基于不同对话主体的记忆信息执行输出不同风格的第二对话信息的任务,那么,用于提示语言模型的第一提示文本也可以根据目标记忆信息对应的对话主体进行动态调整,具体方案如下,如图3所示:
S300:当所述目标记忆信息包括所述用户的目标记忆信息,和所述智能对话系统的目标记忆信息时,分别确定所述用户对应的第一提示文本和所述智能对话系统对应的第一提示文本。
数据库中既可以存储用户的记忆信息,也可以存储智能对话系统的记忆信息。因此,基于目标向量检索得到的目标记忆信息中可以包含用户的目标记忆信息和/或智能对话系统的目标记忆信息。
如果检索得到的目标记忆信息中包括用户的目标记忆信息,和所述智能对话系统的目标记忆信息,则在获取第一提示文本时,需要根据不同的目标记忆信息对应的主体,确定不同的主体对应的第一提示文本。其中,所谓主体指的就是用户或者智能对话系统。
在实际应用中,虽然目标记忆信息对应的主体无论是用户还是智能对话系统,第一提示文本的作用都是提示预训练的语言模型根据输入的记忆信息生成第二对话信息,但是,在第一提示文本包含的记忆样例对应的对话信息中可以通过动态调整对话信息的表达内容和表达方式,凸显当前对话信息生成任务中输入的目标记忆信息的主体。
可以理解的是,用户对应第一提示文本和智能对话系统对应的第一提示文本在形式上是类似的,仅在文本的具体内容上存在差异,用户对应的第一提示文本中的记忆样例可以是用户(当前用户或者其他用户)的记忆信息,记忆样例对应的对话信息可以是以用户为主要出发点的第二对话信息。相对应的,稚嫩古蒂花系统对应的第一提示文本中的记忆样例可以是智能对话系统的记忆信息,记忆样例对应的对话信息可以是以智能对话系统作为度化的主要出发点的第二对话信息。
S302:将所述用户对应的第一提示文本、所述用户的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第一文本。
基于上述步骤S300确定的用户的第一提示文本,和智能对话系统的第一提示文本,将两种类型的第一提示文本混合共同输入预训练的语言模型可能会导致语言模型混淆当前任务的主题,因此,将用户的第一提示文本和智能对话系统的第一提示文本分别输入预训练语言模型中,以提示语言模型分别执行不同类型的第二对话信息的预测任务。
相应的,目标记忆信息也可以根据主体的不同进行拆分,因此,将所述用户对应的第一提示文本、所述用户的目标记忆信息以及所述智能对话系统和所述用户的对话作为一组输入,输入预训练的语言模型,得到第一文本。将所述智能对话系统对应的第一提示文本、所述智能对话系统的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到第二文本。
S304:将所述智能对话系统对应的第一提示文本、所述智能对话系统的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第二文本。
S306:根据所述第一文本和所述第二文本确定第二对话信息。
基于上述步骤S302和S304得到的第一文本和第二文本,将第一文本和第二文本均作为第二对话信息,一起返回给用户。在本发明实施例中,并不限制智能对话系统返回给用户的第二对话信息包含的文本的字数和语句数。可见,在从数据库中检索到的目标记忆信息包含用户的目标记忆信息和智能对话系统的目标记忆信息时,智能对话系统可以返回给用户包含至少两句文本的第二对话信息,丰富了智能对话系统的表达能力,以及提升了真人对话的模拟程度。
在本发明一个或多个实施例中,在基于如图1所示的生成对话信息的方法确定第二对话信息并返回给用户的智能对话系统和用户的实时对话过程中,可以基于智能对话系统和用户的实时对话的上下文对话信息,实时地得到用户的记忆信息和智能对话系统的记忆信息,并将从上下文对话信息中总结得到的记忆信息存储在数据库中,便于上述如图1步骤S102所示根据目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量。基于智能对话系统和用户的实时对话的上下文对话信息,实时地得到用户的记忆信息和智能对话系统的记忆信息的具体方案如下,如图4所示:
S400:获取第二提示文本;所述第二提示文本包含第一对话样例和所述第一对话样例对应的记忆信息,所述第二提示文本用于提示语言模型根据输入的对话信息执行记忆信息的提取任务;
基于上述说明,本发明一个或多个实施例提供的生成对话信息的方法中,从数据库中查找到目标记忆信息至为重要,而数据库中存储的记忆信息的来源,可以是从用户和智能对话系统的实时对话中提取。为了降低提取记忆信息所耗费的人力资源,提取的方式可以为基于预训练的语言模型进行记忆的提取和总结。具体的,仍然是利用预训练的语言模型的情境学习能力,通过将第二提示文本引导预训练的语言模型执行从若干轮对话的对话信息中执行记忆信息的提取任务。
在此步骤中,第二提示文本用于提示预训练的语言模型基于输入模型的对话信息中总结和提取出记忆信息。因此,第二提示文本包括第一对话样例和所述第一对话样例对应的记忆信息。第一对话样例可以是从当前用户的人机对话记录中采样得到的,也可以是从其他用户的人机对话记录中采样得到,当然,还可以是人工预先编写的。同样,第一对话样例对应的记忆信息可以是从存储的当前用户的记忆信息采样得到,也可以是从其他用户的记忆信息采样得到,当然,还可以人工预先编写的。本发明对第一对话样例和所述第一对话样例对应的记忆信息的具体来源和具体内容不做限定。
另外,可以将一个第一对话样例和一个第一对话样例对应的记忆信息作为一条提示文本,第二提示文本中可以包括多条提示文本,第二提示文本包含的提示文本的数量可以根据具体的应用场景确定,本发明对此不做限定。
例如,第二提示文本可以为:
“这是一个根据上下文提取记忆信息的任务。
小红:我今天买了便利店的咖啡。智能对话系统:咖啡的味道如何?小红:我还挺喜欢的。→{小红}喜欢咖啡。
小红:学校的作业留的很多,你可以帮我写吗?智能对话系统:我可不能帮你写作业哦,不过我可以跟你讨论难题,你遇到的问题是哪个学科的呢?小红:高等数学。→{小红}是大学生?”
可选地,所述第二提示文本还包括第二对话样例,所述第二对话样例包含的各对话信息中不存在记忆信息。在实际应用中,用户和智能对话系统的人机对话中,并不是所有轮次的对话中均能够提取出记忆信息的。在本发明实施例中,记忆信息通常指的是与用户和智能对话系统可以存在的主观信息相关的信息,如性格、性别、人设、喜好等属性信息,又如看书、打篮球等行为信息。对于客观存在的信息,一般不作为记忆信息从对话中提取和总结出来,如“昨天天气晴朗”、“数学是一门学科”这种客观存在的信息和事情,即使出现在用户和智能对话系统的对话信息中,也不能从中提取文本作为记忆信息。为了避免预训练的语言模型出现上述情况,可以在第二提示文本中增加第二对话样例,第二对话样例包含的各对话信息中不存在与用户和智能对话系统可以存在的主观信息相关的信息,也即,从第二对话样例中不能提取出本发明实施例定义的记忆信息,因此,在第二提示文本,第二对话样例对应的记忆信息为空文本,即,不存在与第二对话样例对应的记忆信息。
S402:将所述第二提示文本,以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为记忆信息。
此处与上述步骤S202类似,此处不再赘述。
S404:将所述记忆信息输入所述编码器,得到所述记忆信息的向量,并将所述记忆信息的向量存储在数据库中。
由于数据库中存储的记忆信息用于在如图1步骤S102中查找得到与目标向量相似的记忆信息的向量,因此,可以将通过上述步骤S400~S402得到的各记忆信息分别输入预先训练的编码器中,将编码器输出的记忆信息的向量存储在数据库中。
另外,需要说明的是,在本发明实施例中,如图4所示的从用户和智能对话系统的对话信息中提取记忆信息的过程,可以是在智能对话系统与用户的实时对话中进行的,也可以是在智能对话系统与用户的对话结束之后进行的,本发明对此不做限定。并且,进一步地,为了在智能对话系统与用户的实时对话过程中,针对当前的实时对话加强智能对话系统对用户的理解,在智能对话系统与用户的实时对话过程中,进行提取记忆信息的过程时,如图4所示提取记忆信息的过程,与如图1所示生成第二对话信息的过程,这两个过程,不必须是如图4所示的过程先于如图1所示的过程,两个过程可以异步执行。例如,假设智能对话系统和用户在进行第四轮对话,在第四轮对话中,用户已经输入的第一对话信息,此时,服务器等电子设备可以在同时根据智能对话系统和用户的前三轮对话提取记忆信息,当然,如果基于前三轮对话提取记忆信息的过程已经完成,则可以基于前三轮对话以及第四轮对话中用户输入的第一对话信息进行记忆信息的提取过程。
在本发明一个或多个实施例中,在如图4所示的从用户和智能对话系统的对话信息中提取记忆信息的过程中,同样存在提取的记忆信息的主体是用户或者是智能对话系统的问题,因此在步骤S400所示获取第二提示文本中,需要根据输入到预训练的语言模型中上下文对话信息确定第二提示文本,具体通过下述方案实施:
第一步:获取所述智能对话系统和所述用户的多轮对话,其中,所述多轮对话中的每一轮对话包含所述用户输入的第一对话信息和所述智能对话系统输出的第二对话信息。
第二步:从所述多轮对话中截取包含若干对话信息的对话片段。
在此步骤中,由于从对话信息中提取记忆信息这一过程可以在用户和智能对话系统的实时对话过程中同时进行,并且提取记忆信息的过程不一定在图1所示步骤S102查找到目标记忆信息之前就进行完成。因此,可以将用户和智能对话系统的多轮对话分割成多个包含若干对话信息的对话片段,各对话片段包含的对话信息中至少存在部分对话信息是不同的。
进而针对每个对话片段,从该对话片段中提取用户和/或智能对话系统的记忆信息。
第三步:根据所述对话片段包含的最后一个对话信息的对话主体,确定第二提示文本的类型;其中,所述对话主体为所述智能对话系统或所述用户。
具体的,对话主体即为输入对话信息的一方,在用户和智能对话系统的人机对话过程中,对话主体可以是用户,也可以是智能对话系统,一般不会出现第三方。
由于第二提示文本用于提示预训练的语言模型从对话信息中提取记忆信息,因此,可分为从对话信息中提取用户的记忆信息,以及从对话信息中提取智能对话系统的记忆信息。为此,需要区分两种类型的第二提示文本,即用户类型的第二提示文本,以及智能对话系统类型的第二提示文本。
于是,用户类型的第二提示文本用于提示预训练的语言模型从对话信息中提取用户的记忆信息,智能对话系统类型的第二提示文本永不提示预训练的语言模型从对话信息中提取智能对话系统的记忆信息。二者的差异与上述如图3所示步骤S300所提到的用户对应的第一提示文本和智能对话系统对应的提示文本的差异类似,此处不再赘述。
第四步:根据所述类型,从数据库存储的对话样例和记忆信息中,查找得到所述类型对应的对话样例和所述类型对应的记忆信息作为第二提示文本。
在本发明一个或多个实施例中,在如图1步骤S100所示将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量,和如图4步骤S404所示将所述记忆信息输入所述编码器,得到所述记忆信息的向量,均采用了预先训练的编码器得到记忆信息的向量,编码器的训练过程如下所示:
首先,预先获取参考记忆信息,以及智能对话系统和参考用户之间的历史对话,作为训练样本。
其次,确定所述参考记忆信息和所述历史对话之间的匹配度,作为所述训练样本的标注。
其中,作为训练样本的标注的参考记忆信息和所述历史对话之间的匹配度可以由人工标注得到。
之后,将所述训练样本输入由所述编码器以及预测层构成的预测模型,得到所述编码器输出的所述训练样本的特征。
然后,将所述训练样本的特征输入所述预测模型的预测层,得到所述预测层输出的所述训练样本包含的历史对话和参考记忆信息之间的预测匹配度。
预测匹配度用于表征基于训练样本的特征得到的训练样本包含的历史对话和参考记忆信息之间的相关性。即,预测匹配度较高,则说明基于训练样本的特征得到的相关性较大,反之,预测匹配度较低,则说明基于训练样本的特征得到的相关性较小。
进一步的,以所述预测匹配度和所述训练样本的标注的差异的最小化为训练目标,训练所述预测模型。
最后,根据训练完成的预测模型,得到训练完成的编码器。
在本发明一个可选的实施例中,在如图1步骤S102所示从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量之前,还可以基于用户输入的描述文本得到用户的记忆信息或者智能对话系统的记忆信息,并存储,具体方案如下:
响应于用户输入的智能对话系统的第一描述文本,所述第一描述文本用于描述所述智能对话系统的虚拟行为和虚拟属性,根据所述第一描述文本生成所述智能对话系统的记忆信息,并将所述智能对话系统的记忆信息存储在数据库中;和/或
响应于用户输入的所述用户的第二描述文本,所述第二描述文本用于描述所述用户的行为和属性,根据所述第二描述文本生成所述用户的记忆信息,并将所述用户的记忆信息存储在数据库中。
具体的,数据库中存储的记忆信息可包括用户的记忆信息和智能对话系统的记忆信息,其中,用户的记忆信息和智能对话系统的记忆信息均可以通过用户输入得到。在用户与智能对话系统对话之前,用户可以根据自身的需求,输入描述文本,描述文本可以是描述行为或者属性的文本,基于描述文本可以生成记忆信息。
其中,第一描述文本用于描述智能对话系统的行为和属性,第二描述文本用于描述用户的行为和属性。描述文本的具体内容和数量本发明不做限定。
在本发明一个可选的实施例中,在如图1步骤S102所示从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量之前,如果数据库中不包含记忆信息,或者在步骤S102中,没有基于目标向量从数据库中查找到目标记忆信息,则可以由智能对话系统基于上下文对话信息,按照记忆信息的格式,实时生成与当前上下文对话信息相关的智能对话系统的记忆信息,并将该实时生成的记忆信息作为目标记忆信息。
图5为本发明提供的一种生成对话信息的装置示意图,具体包括:
目标向量确定模块500,用于响应于用户输入的第一对话信息,将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量;
记忆信息查找模块502,用于根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量,并根据与所述目标向量相似的记忆信息的向量确定目标记忆信息;
第二对话信息确定模块504,用于将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,并将所述第二对话信息返回给所述用户。
可选地,所述装置还包括:
第一提示文本获取模块506,具体用于获取第一提示文本;所述第一提示文本包含记忆样例和所述记忆样例对应的对话信息,所述第一提示文本用于提示语言模型根据输入的记忆信息执行第二对话信息的预测任务;
可选地,所述第二对话信息确定模块504具体用于,将所述第一提示文本、所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息。
可选地,所述装置还包括:
记忆信息确定模块508,具体用于获取第二提示文本;所述第二提示文本包含第一对话样例和所述第一对话样例对应的记忆信息,所述第二提示文本用于提示语言模型根据输入的对话信息执行记忆信息的提取任务;将所述第二提示文本,以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为记忆信息;将所述记忆信息输入所述编码器,得到所述记忆信息的向量,并将所述记忆信息的向量存储在数据库中。
可选地,所述记忆信息确定模块508具体用于,获取所述智能对话系统和所述用户的多轮对话,其中,所述多轮对话中的每一轮对话包含所述用户输入的第一对话信息和所述智能对话系统输出的第二对话信息;从所述多轮对话中截取包含若干对话信息的对话片段;根据所述对话片段包含的最后一个对话信息的对话主体,确定第二提示文本的类型;其中,所述对话主体为所述智能对话系统或所述用户;根据所述类型,从数据库存储的对话样例和记忆信息中,查找得到所述类型对应的对话样例和所述类型对应的记忆信息作为第二提示文本。
可选地,所述第二提示文本还包括第二对话样例,所述第二对话样例包含的各对话信息中不存在记忆信息。
可选地,所述第一提示文本获取模块506具体用于,当所述目标记忆信息包括所述用户的目标记忆信息,和所述智能对话系统的目标记忆信息时,分别确定所述用户对应的第一提示文本和所述智能对话系统对应的第一提示文本;
可选地,所述第二对话信息确定模块504具体用于,将所述用户对应的第一提示文本、所述用户的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第一文本;将所述智能对话系统对应的第一提示文本、所述智能对话系统的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第二文本;根据所述第一文本和所述第二文本确定第二对话信息。
可选地,所述装置还包括:
训练模块510,具体用于预先获取参考记忆信息,以及智能对话系统和参考用户之间的历史对话,作为训练样本;确定所述参考记忆信息和所述历史对话之间的匹配度,作为所述训练样本的标注;将所述训练样本输入由所述编码器以及预测层构成的预测模型,得到所述编码器输出的所述训练样本的特征;将所述训练样本的特征输入所述预测模型的预测层,得到所述预测层输出的所述训练样本包含的历史对话和参考记忆信息之间的预测匹配度;以所述预测匹配度和所述训练样本的标注的差异的最小化为训练目标,训练所述预测模型;根据训练完成的预测模型,得到训练完成的编码器。
可选地,所述装置还包括:
输入模块512,具体用于响应于用户输入的智能对话系统的第一描述文本,所述第一描述文本用于描述所述智能对话系统的虚拟行为和虚拟属性,根据所述第一描述文本生成所述智能对话系统的记忆信息,并将所述智能对话系统的记忆信息存储在数据库中;和/或响应于用户输入的所述用户的第二描述文本,所述第二描述文本用于描述所述用户的行为和属性,根据所述第二描述文本生成所述用户的记忆信息,并将所述用户的记忆信息存储在数据库中。
本发明还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图1所示的生成对话信息的方法。
本发明还提供了图6所示的电子设备的示意结构图。如图6所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图6所示的生成对话信息的方法。当然,除了软件实现方式之外,本发明并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本发明中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (11)
1.一种生成对话信息的方法,其特征在于,包括:
响应于用户输入的第一对话信息,将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量;
根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量,并根据与所述目标向量相似的记忆信息的向量确定目标记忆信息;
将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,并将所述第二对话信息返回给所述用户。
2.如权利要求1所述的方法,其特征在于,在将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息之前,所述方法还包括:
获取第一提示文本;所述第一提示文本包含记忆样例和所述记忆样例对应的对话信息,所述第一提示文本用于提示语言模型根据输入的记忆信息执行第二对话信息的预测任务;
将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,具体包括:
将所述第一提示文本、所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息。
3.如权利要求1所述的方法,其特征在于,根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量之前,所述方法还包括:
获取第二提示文本;所述第二提示文本包含第一对话样例和所述第一对话样例对应的记忆信息,所述第二提示文本用于提示语言模型根据输入的对话信息执行记忆信息的提取任务;
将所述第二提示文本,以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为记忆信息;
将所述记忆信息输入所述编码器,得到所述记忆信息的向量,并将所述记忆信息的向量存储在数据库中。
4.如权利要求3所述的方法,其特征在于,获取第二提示文本,具体包括:
获取智能对话系统和所述用户的多轮对话,其中,所述多轮对话中的每一轮对话包含所述用户输入的第一对话信息和所述智能对话系统输出的第二对话信息;
从所述多轮对话中截取包含若干对话信息的对话片段;
根据所述对话片段包含的最后一个对话信息的对话主体,确定第二提示文本的类型;其中,所述对话主体为所述智能对话系统或所述用户;
根据所述类型,从数据库存储的对话样例和记忆信息中,查找得到所述类型对应的对话样例和所述类型对应的记忆信息作为第二提示文本。
5.如权利要求3所述的方法,其特征在于,所述第二提示文本还包括第二对话样例,所述第二对话样例包含的各对话信息中不存在记忆信息。
6.如权利要求2所述的方法,其特征在于,获取第一提示文本,具体包括:
当所述目标记忆信息包括所述用户的目标记忆信息,和智能对话系统的目标记忆信息时,分别确定所述用户对应的第一提示文本和所述智能对话系统对应的第一提示文本;
将所述第一提示文本、所述目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,具体包括:
将所述用户对应的第一提示文本、所述用户的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第一文本;
将所述智能对话系统对应的第一提示文本、所述智能对话系统的目标记忆信息以及所述智能对话系统和所述用户的对话作为输入,输入预训练的语言模型,得到所述语言模型输出的第二文本;
根据所述第一文本和所述第二文本确定第二对话信息。
7.如权利要求1所述的方法,其特征在于,预先训练编码器,具体包括:
预先获取参考记忆信息,以及智能对话系统和参考用户之间的历史对话,作为训练样本;
确定所述参考记忆信息和所述历史对话之间的匹配度,作为所述训练样本的标注;
将所述训练样本输入由所述编码器以及预测层构成的预测模型,得到所述编码器输出的所述训练样本的特征;
将所述训练样本的特征输入所述预测模型的预测层,得到所述预测层输出的所述训练样本包含的历史对话和参考记忆信息之间的预测匹配度;
以所述预测匹配度和所述训练样本的标注的差异的最小化为训练目标,训练所述预测模型;
根据训练完成的预测模型,得到训练完成的编码器。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
响应于用户输入的智能对话系统的第一描述文本,所述第一描述文本用于描述所述智能对话系统的虚拟行为和虚拟属性,根据所述第一描述文本生成所述智能对话系统的记忆信息,并将所述智能对话系统的记忆信息存储在数据库中;和/或
响应于用户输入的所述用户的第二描述文本,所述第二描述文本用于描述所述用户的行为和属性,根据所述第二描述文本生成所述用户的记忆信息,并将所述用户的记忆信息存储在数据库中。
9.一种生成对话信息的装置,其特征在于,包括:
目标向量确定模块,用于响应于用户输入的第一对话信息,将所述第一对话信息,和上下文对话信息输入预先训练的编码器,得到所述编码器输出的目标向量;
记忆信息查找模块,用于根据所述目标向量,从数据库存储的记忆信息的向量中,查找与所述目标向量相似的记忆信息的向量,并根据与所述目标向量相似的记忆信息的向量确定目标记忆信息;
第二对话信息确定模块,用于将所述目标记忆信息以及所述上下文对话信息作为输入,输入预训练的语言模型,得到所述语言模型输出的文本作为第二对话信息,并将所述第二对话信息返回给所述用户。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~8任一项所述的方法。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310227722.XA CN115952272B (zh) | 2023-03-10 | 2023-03-10 | 一种生成对话信息的方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310227722.XA CN115952272B (zh) | 2023-03-10 | 2023-03-10 | 一种生成对话信息的方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115952272A true CN115952272A (zh) | 2023-04-11 |
CN115952272B CN115952272B (zh) | 2023-05-26 |
Family
ID=85891375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310227722.XA Active CN115952272B (zh) | 2023-03-10 | 2023-03-10 | 一种生成对话信息的方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115952272B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076650A (zh) * | 2023-10-13 | 2023-11-17 | 之江实验室 | 一种基于大语言模型的智能对话方法、装置、介质及设备 |
CN117093679A (zh) * | 2023-06-19 | 2023-11-21 | 无码科技(杭州)有限公司 | 一种大语言模型智能问诊对话方法、系统、设备及介质 |
CN117131845A (zh) * | 2023-09-01 | 2023-11-28 | 四川大学 | 一种基于预训练语言模型和白化风格化的简历重构方法 |
CN117332823A (zh) * | 2023-11-28 | 2024-01-02 | 浪潮电子信息产业股份有限公司 | 目标内容自动生成方法、装置、电子设备及可读存储介质 |
CN117421416A (zh) * | 2023-12-19 | 2024-01-19 | 数据空间研究院 | 交互检索方法、装置和电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169113A (zh) * | 2017-05-19 | 2017-09-15 | 网易(杭州)网络有限公司 | 用于基于用户性格实现人工智能对话的方法及设备 |
CN108829668A (zh) * | 2018-05-30 | 2018-11-16 | 平安科技(深圳)有限公司 | 文本信息的生成方法、装置、计算机设备及存储介质 |
US20200395008A1 (en) * | 2019-06-15 | 2020-12-17 | Very Important Puppets Inc. | Personality-Based Conversational Agents and Pragmatic Model, and Related Interfaces and Commercial Models |
FR3104768A1 (fr) * | 2019-12-17 | 2021-06-18 | Worldline | Systeme et methode d’exploitation d’un contexte d’evenements historiques pour l’amelioration du gestionnaire de dialogue d’un chatbot |
CN113672714A (zh) * | 2021-08-20 | 2021-11-19 | 上海大参林医疗健康科技有限公司 | 一种多轮对话装置及方法 |
CN114239605A (zh) * | 2021-12-20 | 2022-03-25 | 平安科技(深圳)有限公司 | 辅助沟通内容生成方法、装置、设备及存储介质 |
CN115146601A (zh) * | 2022-06-30 | 2022-10-04 | 北京三快在线科技有限公司 | 语言处理任务的执行方法、装置、可读存储介质以及设备 |
CN115617972A (zh) * | 2022-12-14 | 2023-01-17 | 成都明途科技有限公司 | 一种机器人对话方法、装置、电子设备及存储介质 |
-
2023
- 2023-03-10 CN CN202310227722.XA patent/CN115952272B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107169113A (zh) * | 2017-05-19 | 2017-09-15 | 网易(杭州)网络有限公司 | 用于基于用户性格实现人工智能对话的方法及设备 |
CN108829668A (zh) * | 2018-05-30 | 2018-11-16 | 平安科技(深圳)有限公司 | 文本信息的生成方法、装置、计算机设备及存储介质 |
US20200395008A1 (en) * | 2019-06-15 | 2020-12-17 | Very Important Puppets Inc. | Personality-Based Conversational Agents and Pragmatic Model, and Related Interfaces and Commercial Models |
FR3104768A1 (fr) * | 2019-12-17 | 2021-06-18 | Worldline | Systeme et methode d’exploitation d’un contexte d’evenements historiques pour l’amelioration du gestionnaire de dialogue d’un chatbot |
CN113672714A (zh) * | 2021-08-20 | 2021-11-19 | 上海大参林医疗健康科技有限公司 | 一种多轮对话装置及方法 |
CN114239605A (zh) * | 2021-12-20 | 2022-03-25 | 平安科技(深圳)有限公司 | 辅助沟通内容生成方法、装置、设备及存储介质 |
CN115146601A (zh) * | 2022-06-30 | 2022-10-04 | 北京三快在线科技有限公司 | 语言处理任务的执行方法、装置、可读存储介质以及设备 |
CN115617972A (zh) * | 2022-12-14 | 2023-01-17 | 成都明途科技有限公司 | 一种机器人对话方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
杨成彪;吕荣荣;吴刚;: "一种基于记忆网络的多轮对话下的意图识别方法", 电子技术与软件工程 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117093679A (zh) * | 2023-06-19 | 2023-11-21 | 无码科技(杭州)有限公司 | 一种大语言模型智能问诊对话方法、系统、设备及介质 |
CN117093679B (zh) * | 2023-06-19 | 2024-04-02 | 无码科技(杭州)有限公司 | 一种大语言模型智能问诊对话方法、系统、设备及介质 |
CN117131845A (zh) * | 2023-09-01 | 2023-11-28 | 四川大学 | 一种基于预训练语言模型和白化风格化的简历重构方法 |
CN117131845B (zh) * | 2023-09-01 | 2024-04-12 | 四川大学 | 一种基于预训练语言模型和白化风格化的简历重构方法 |
CN117076650A (zh) * | 2023-10-13 | 2023-11-17 | 之江实验室 | 一种基于大语言模型的智能对话方法、装置、介质及设备 |
CN117076650B (zh) * | 2023-10-13 | 2024-02-23 | 之江实验室 | 一种基于大语言模型的智能对话方法、装置、介质及设备 |
CN117332823A (zh) * | 2023-11-28 | 2024-01-02 | 浪潮电子信息产业股份有限公司 | 目标内容自动生成方法、装置、电子设备及可读存储介质 |
CN117332823B (zh) * | 2023-11-28 | 2024-03-05 | 浪潮电子信息产业股份有限公司 | 目标内容自动生成方法、装置、电子设备及可读存储介质 |
CN117421416A (zh) * | 2023-12-19 | 2024-01-19 | 数据空间研究院 | 交互检索方法、装置和电子设备 |
CN117421416B (zh) * | 2023-12-19 | 2024-03-26 | 数据空间研究院 | 交互检索方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115952272B (zh) | 2023-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115952272B (zh) | 一种生成对话信息的方法、装置、设备及可读存储介质 | |
CN110288985B (zh) | 语音数据处理方法、装置、电子设备及存储介质 | |
CN111226224B (zh) | 用于翻译语音信号的方法及电子设备 | |
CN111695345B (zh) | 文本中实体识别方法、以及装置 | |
CN110457449B (zh) | 在线训练模型的方法、装置、设备及存储介质 | |
CN115082602B (zh) | 生成数字人的方法、模型的训练方法、装置、设备和介质 | |
CN117173504A (zh) | 一种文生图模型的训练方法、装置、设备及存储介质 | |
CN111144126A (zh) | 一种语义分析模型的训练方法、语义分析方法及装置 | |
CN117521675A (zh) | 基于大语言模型的信息处理方法、装置、设备及存储介质 | |
CN117331561B (zh) | 一种智能低代码页面开发系统及方法 | |
CN115146601A (zh) | 语言处理任务的执行方法、装置、可读存储介质以及设备 | |
CN111399629A (zh) | 一种终端设备的操作引导方法、终端设备及存储介质 | |
CN112597301A (zh) | 一种语音意图识别方法及装置 | |
CN117555644B (zh) | 一种基于自然语言交互的前端页面构建方法及装置 | |
CN116127328B (zh) | 一种对话状态识别模型的训练方法、装置、介质及设备 | |
CN112784030B (zh) | 一种生成样本的方法、装置、存储介质及电子设备 | |
CN115019781A (zh) | 一种对话业务执行方法、装置、存储介质及电子设备 | |
CN114297352A (zh) | 对话状态追踪方法、装置、人机对话系统及作业机械 | |
CN114925206A (zh) | 人工智能体、语音信息识别方法、存储介质和程序产品 | |
CN116501852B (zh) | 一种可控对话模型训练方法、装置、存储介质及电子设备 | |
CN111161706A (zh) | 交互方法、装置、设备和系统 | |
CN113642305A (zh) | 一种文本生成方法、装置、存储介质及电子设备 | |
CN117891922A (zh) | 一种人机交互方法、系统、电子设备及存储介质 | |
CN117933387A (zh) | 对话数据生成方法、系统、模型训练方法、对话处理方法 | |
CN115658891A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |