掌桥专利:专业的专利平台
掌桥专利
首页

文本生成方法、装置、电子设备及存储介质

文献发布时间:2024-04-18 20:00:50


文本生成方法、装置、电子设备及存储介质

技术领域

本申请涉及计算机技术领域,特别是涉及一种文本生成方法、装置、电子设备及存储介质。

背景技术

在人工智能领域,大语言模型是大型语言模型(Large Language Modeling,LLM)的简称,是指使用大量文本数据训练的深度学习模型,可以生成自然语言文本或理解语言文本的含义,大语言模型可以处理多种自然语言任务,例如文本分类、问答、对话等。

目前,在处理对话任务时,虽然大语言模型具备较优的文本理解和生成能力,但是在许多情况下,大语言模型生成的响应文本会出现错误,导致响应文本的生成效果较差,大语言模型的泛化性能较低。

发明内容

以下是对本申请详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。

本申请实施例提供了一种文本生成方法、装置、电子设备及存储介质,能够提高大语言模型的泛化性能,从而生成效果较好的响应文本。

一方面,本申请实施例提供了一种文本生成方法,包括:

获取多个轮次的历史对话文本、多个预设的候选文本和各个所述候选文本对应的参考知识文本,在多个所述候选文本中筛选出与所述历史对话文本相似的目标文本;

根据所述目标文本和对应的所述参考知识文本构建第一提示文本,根据所述历史对话文本构建第二提示文本,其中,所述第一提示文本用于提示所述目标文本与对应的所述参考知识文本之间的关联关系,所述第二提示文本用于提示生成所述历史对话文本的预测知识文本;

将所述第一提示文本和所述第二提示文本拼接后输入大语言模型进行文本预测,生成所述预测知识文本;

将多个轮次的历史对话文本与所述预测知识文本进行拼接,得到目标拼接文本,将所述目标拼接文本输入所述大语言模型进行文本预测,生成当前轮次的响应文本。

另一方面,本申请实施例还提供了一种文本生成装置,包括:

获取模块,用于获取多个轮次的历史对话文本、多个预设的候选文本和各个所述候选文本对应的参考知识文本,在多个所述候选文本中筛选出与所述历史对话文本相似的目标文本;

提示构建模块,用于根据所述目标文本和对应的所述参考知识文本构建第一提示文本,根据所述历史对话文本构建第二提示文本,其中,所述第一提示文本用于提示所述目标文本与对应的所述参考知识文本之间的关联关系,所述第二提示文本用于提示生成所述历史对话文本的预测知识文本;

知识生成模块,用于将所述第一提示文本和所述第二提示文本拼接后输入大语言模型进行文本预测,生成所述预测知识文本;

回复生成模块,用于将多个轮次的历史对话文本与所述预测知识文本进行拼接,得到目标拼接文本,将所述目标拼接文本输入所述大语言模型进行文本预测,生成当前轮次的响应文本。

进一步,所述候选文本的知识粒度类型的数量为至少一种,上述获取模块具体用于:

在多个轮次的所述历史对话文本中提取出查询文本,其中,所述查询文本包括至少两个轮次的所述历史对话文本,或者包括单个轮次的所述历史对话文本;

在所述知识粒度类型与所述查询文本对应的所述候选文本中,筛选出与所述查询文本相似的目标文本。

进一步,所述参考知识文本的知识粒度类型包括第一知识粒度类型和第二知识粒度类型,所述第一知识粒度类型的粒度范围大于所述第二知识粒度类型的粒度范围,上述获取模块具体用于:

在所述第一知识粒度类型的所述候选文本中,筛选出与至少两个轮次的所述历史对话文本相似的目标文本;

在所述第二知识粒度类型的所述候选文本中,筛选出与单个轮次的所述历史对话文本相似的目标文本。

进一步,所述预测知识文本包括所述第一知识粒度类型对应的第一知识文本,以及所述第二知识粒度类型对应的第二知识文本,上述回复生成模块具体用于:

根据所述第一知识文本构建第一背景文本;

将最后至少两个轮次的所述历史对话文本分别与对应的所述第二知识文本进行拼接,得到各个轮次的所述历史对话文本对应的第一拼接文本;

按照轮次顺序将各个轮次的所述第一拼接文本依次进行拼接,得到第二拼接文本;

将所述第一背景文本和所述第二拼接文本进行拼接,得到目标拼接文本。

进一步,所述预测知识文本包括所述第一知识粒度类型对应的第一知识文本,以及所述第二知识粒度类型对应的第二知识文本,上述回复生成模块具体用于:

根据所述第一知识文本构建第一背景文本;

将所述第一背景文本和当前轮次的所述历史对话文本对应的所述第二知识文本进行拼接,得到第二背景文本;

按照轮次顺序将各个轮次的所述历史对话文本依次进行拼接,得到第三拼接文本;

将所述第二背景文本和所述第三拼接文本进行拼接,得到目标拼接文本。

进一步,上述获取模块具体用于:

将所述第一知识粒度类型的各个所述候选文本分别输入预训练的自然语言处理模型进行编码处理,得到各个所述候选文本的候选向量;

将至少两个轮次的所述历史对话文本输入所述自然语言处理模型进行编码处理,得到查询向量;

分别计算所述查询向量和各个所述候选向量之间的相似度,根据所述相似度从各个所述候选文本中筛选出目标文本。

进一步,上述获取模块具体用于:

在多个轮次的所述历史对话文本中提取出当前轮次之前所有轮次的所述历史对话文本,作为查询文本;

或者,将在多个轮次的所述历史对话文本中提取出单个轮次的所述历史对话文本,作为查询文本。

进一步,上述提示构建模块具体用于:

确定所述目标文本的知识粒度类型的类型名称;

将所述目标文本、所述类型名称、预设的连接符号和所述目标文本对应的所述参考知识文本依次进行拼接,得到第一提示文本。

进一步,上述提示构建模块具体用于:

确定所述目标文本的知识粒度类型的类型名称;

将所述历史对话文本、所述类型名称和预设的连接符号依次进行拼接,得到第二提示文本。

进一步,上述知识生成模块具体用于:

获取知识生成指令,所述知识生成指令用于提示生成所述历史对话文本的预测知识文本;

将所述知识生成指令、所述第一提示文本和所述第二提示文本拼接后输入大语言模型进行文本预测,生成所述预测知识文本。

进一步,上述回复生成模块具体用于:

获取回复生成指令,所述回复生成指令用于提示生成当前轮次的响应文本;

将所述回复生成指令和所述目标拼接文本拼接后输入所述大语言模型进行文本预测,生成所述响应文本。

另一方面,本申请实施例还提供了一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的文本生成方法。

另一方面,本申请实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行实现上述的文本生成方法。

另一方面,本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行实现上述的文本生成方法。

本申请实施例至少包括以下有益效果:通过获取历史对话文本、候选文本和参考知识文本,参考知识文本相当于外部知识,然后在多个候选文本中筛选出与历史对话文本相似的目标文本,能够确保目标文本与历史对话文本之间的相关性,进而确保外部知识与历史对话文本之间的相关性,然后根据目标文本和对应的参考知识文本构建第一提示文本,以及根据历史对话文本构建第二提示文本,将蕴含丰富外部知识的第一提示文本和第二提示文本输入大语言模型,激发大语言模型的知识储备,利用大语言模型处理知识文本的文本生成任务,推理出准确的预测知识文本,由于大语言模型的知识储备深厚,所以由大语言模型生成的预测知识文本的类型和来源广泛,然后通过拼接历史对话文本和预测知识文本得到内容丰富的目标拼接文本,再次利用大语言模型处理响应文本的文本生成任务,能够提高大语言模型的泛化性能,避免响应文本出现错误,从而生成效果较好的响应文本,基于此,相对于传统的文本生成方法,本申请实施例提供的文本生成方法所生成的响应文本在相关性、多样性、知识性和流畅性上都有显著提升。

本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。

附图说明

附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。

图1为本申请实施例提供的一种可选的实施环境的示意图;

图2为本申请实施例提供的文本生成方法的一种可选的流程示意图;

图3为本申请实施例提供的数据库的一种可选的架构示意图;

图4为本申请实施例提供的数据库的另一种可选的架构示意图;

图5为本申请实施例提供的第一聊天界面的另一种可选的界面示意图;

图6为本申请实施例提供的第二聊天界面的一种可选的界面示意图;

图7为本申请实施例提供的第二聊天界面的另一种可选的界面示意图;

图8为本申请实施例提供的文本生成方法的一种可选的构架示意图;

图9为本申请实施例提供的智能语音助手的一种可选的架构示意图;

图10为本申请实施例提供的文本生成装置的一种可选的结构示意图;

图11为本申请实施例提供的终端的部分结构框图;

图12为本申请实施例提供的服务器的部分结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据目标对象属性信息或属性信息集合等与目标对象特性相关的数据进行相关处理时,都会先获得目标对象的许可或者同意,而且,对这些数据的收集、使用和处理等,都会遵守相关法律法规和标准。其中,目标对象可以是用户。此外,当本申请实施例需要获取目标对象属性信息时,会通过弹窗或者跳转到确认页面等方式获得目标对象的单独许可或者单独同意,在明确获得目标对象的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的目标对象相关数据。

为便于理解本申请实施例提供的技术方案,这里先对本申请实施例使用的一些关键名词进行解释:

云技术(Cloud technology),是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。云技术基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互系统、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

机器学习(Machine Learning,简称ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。

目前,在处理对话任务时,虽然大语言模型具备较优的文本理解和生成能力,但是在许多情况下,大语言模型生成的响应文本会出现错误,导致响应文本的生成效果较差,大语言模型的泛化性能较低。

基于此,本申请实施例提供了一种文本生成方法、装置、电子设备及存储介质,能够提高大语言模型的泛化性能,从而生成效果较好的响应文本。

参照图1,图1为本申请实施例提供的一种可选的实施环境的示意图,该实施环境包括终端101和服务器102,其中,终端101和服务器102之间通过通信网络连接。

示例性地,服务器102可以获取多个轮次的历史对话文本、多个预设的候选文本和各个候选文本对应的参考知识文本,在多个候选文本中筛选出与历史对话文本相似的目标文本;根据目标文本和对应的参考知识文本构建第一提示文本,根据历史对话文本构建第二提示文本,其中,第一提示文本用于提示目标文本与对应的参考知识文本之间的关联关系,第二提示文本用于提示生成历史对话文本的预测知识文本;将第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本;将多个轮次的历史对话文本与预测知识文本进行拼接,得到目标拼接文本,将目标拼接文本输入大语言模型进行文本预测,生成当前轮次的响应文本,将当前轮次的响应文本发送至终端101。

服务器102通过获取历史对话文本、候选文本和参考知识文本,参考知识文本相当于外部知识,然后在多个候选文本中筛选出与历史对话文本相似的目标文本,能够确保目标文本与历史对话文本之间的相关性,进而确保外部知识与历史对话文本之间的相关性,然后根据目标文本和对应的参考知识文本构建第一提示文本,以及根据历史对话文本构建第二提示文本,将蕴含丰富外部知识的第一提示文本和第二提示文本输入大语言模型,激发大语言模型的知识储备,利用大语言模型处理知识文本的文本生成任务,推理出准确的预测知识文本,由于大语言模型的知识储备深厚,所以由大语言模型生成的预测知识文本的类型和来源广泛,然后通过拼接历史对话文本和预测知识文本得到内容丰富的目标拼接文本,再次利用大语言模型处理响应文本的文本生成任务,能够提高大语言模型的泛化性能,避免响应文本出现错误,从而生成效果较好的响应文本,基于此,相对于传统的文本生成方法,本申请实施例提供的文本生成方法所生成的响应文本在相关性、多样性、知识性和流畅性上都有显著提升。

服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。另外,服务器102还可以是区块链网络中的一个节点服务器。

终端101可以是手机、电脑、智能语音交互设备、智能家电、车载终端等,但并不局限于此。终端101以及服务器102可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例在此不做限制。

本申请实施例提供的方法可应用于各种场景,包括但不限于云技术、人工智能、聊天、智慧交通、辅助驾驶等场景。

参照图2,图2为本申请实施例提供的文本生成方法的一种可选的流程示意图,该文本生成方法可以由服务器执行,或者也可以由终端执行,或者也可以由服务器配合终端执行,该文本类型确定方法包括但不限于以下步骤201至步骤204。

步骤201:获取多个轮次的历史对话文本、多个预设的候选文本和各个候选文本对应的参考知识文本,在多个候选文本中筛选出与历史对话文本相似的目标文本。

其中,历史对话文本是指人机对话场景中对话的文本,人机对话场景可以是指相关人员与聊天机器人或其他人工智能系统进行对话的场景,多个轮次的历史对话文本是指多个历史对话中的文本;单个轮次的历史对话文本可以包括相关人员输入的待处理文本和聊天机器人生成的响应文本,聊天机器人能够基于待处理文本生成相应的响应文本,例如,目标轮次的待处理文本为相关人员输入的用于提出疑问的提问文本,目标轮次的响应文本为聊天机器人生成的用于解答该疑问的回复文本;当前轮次的历史对话文本可以仅包括相关人员输入的待处理文本,聊天机器人在后续能够生成当前轮次的响应文本。

可知,一个对话过程可以包含多个轮次的对话,可以存储各个轮次的对话文本,可以将所有轮次的对话文本分别作为历史对话文本,也可以将最后的Z个轮次的对话文本分别作为历史对话文本,进而快捷准确地从被存储的对话文本中获取相应的历史对话文本,其中,Z是预设的轮次阈值,比如,Z可取10,当一个对话过程包含30个轮次的对话时,可以将最后的10个轮次的对话文本分别作为历史对话文本,仅获取最后10个轮次的对话文本,忽略其他轮次的对话文本,能够减少数据处理量,从而提高数据处理效率。

具体地,相关人员可以通过键盘、鼠标等手动输入待处理文本,相关人员也可以通过麦克风输入待处理语音,然后通过自动语音识别(Automatic Speech Recognition,ASR)技术,在待处理语音中识别出待处理文本,也可以通过光学字符识别(Optical CharacterRecognition,OCR)技术,在待处理图像中识别出待处理文本,本申请实施例对待处理文本的具体获取方式不作限定。

其中,候选文本和对应的参考知识文本可以从开源的知识源中获取,也可以从预先构建的知识源中获取,候选文本和对应的参考知识文本可以按照文本对的结构进行存储在知识源中,候选文本可以为评论文本、角色描述文本、百科文本或者其他类型的内容文本,参考知识文本用于指示候选文本所蕴含的知识信息,由于候选文本可来源于多种数据集,所以参考知识文本相当于多来源多类型的外部知识;

例如,评论文本通常可以反映评论者的情感,假设作为评论文本的候选文本T1为“我昨天去电影院看了最新上映的电影A,剧情扣人心弦,演员的表演也很出色,是一部非常值得观看的电影”,该候选文本T1可以反映评论者的赞扬情感,该候选文本T1对应的参考知识文本可以为“赞扬”;

又例如,角色描述文本可以反映角色的性格、爱好、行为等画像要素,假设作为角色描述文本的候选文本T1为“小明在作文里面写到他最喜欢的水果是香蕉”,该候选文本T1反映角色的爱好,该候选文本T2对应的参考知识文本可以为“小明喜欢香蕉”;

其中,参考知识文本的知识类型可以是多种多样的,不同知识类型的参考知识文本可以存储在不同的知识源中,假设知识类型包括主题知识类型、角色知识类型、情感知识类型、事件知识类型和一般世界知识类型,共五种知识类型,相应地,可以预先获取该五种知识类型的知识源,进而从各个知识类型的知识源中分别获取候选文本和相应的参考知识文本;可知,各个知识类型的知识可以按照具体的知识分类策略进行划分,以情感知识类型为例,情感知识类型包括但不限于:积极情感、消极情感和中性情感等等,情感知识还可以进一步细分,例如,积极情感包括但不限于:喜悦情感、感激情感、赞扬情感等等,本申请实施例对知识分类策略不作具体的限定。

具体地,多个轮次的历史对话文本通常涉及相同的主题,以及反映角色的特征,所以,能够确定多个轮次的历史对话文本对应的主题知识类型以及角色知识类型的知识,各个轮次的历史对话文本通常能反映相应的情感、事件和一般世界知识,一般世界知识也可以认为是通识,通常是指在社会中广为人知的基本信息,即不需要进行专门的培训而在社会中普通共享的常识,一般世界知识通常涵盖了各种领域,包括历史、地理、文化、科学等,例如,历史事件、地理知识、科学原理等等。

基于此,在获取得到的多个候选文本中,各个候选文本所蕴含的知识信息通常是特定的,历史对话文本所蕴含的参考知识文本通常也是特定的,可以将与历史对话文本相似的候选文本作为目标文本,能够确保目标文本与历史对话文本之间具备一定的相关性,因此,目标文本对应的参考知识文本与历史对话文本之间也具备一定的相关性,后续可以基于目标文本对应的参考知识文本生成效果较好的响应文本,得到高质量的回复。

具体地,可以计算出各个候选文本与历史对话文本之间的相似度,将相似度大于或者等于预设相似度阈值的候选文本视为与历史对话文本相似,将相似度小于预设相似度阈值的候选文本视为与历史对话文本不相似,通常情况下,相似度阈值的取值范围在0至1之间,例如,将相似度阈值预设为0.8,能够有效地筛选出合适的目标文本,本申请实施例对相似度阈值的具体取值不作限定。

其中,历史对话文本和候选文本可为不同语种类型的文本,在确定候选文本与历史对话文本是否相似之前,若历史对话文本和候选文本之间的语种类型相同,可以直接确定转换历史对话文本与候选文本是否相似,反之,若历史对话文本和候选文本之间的语种类型不同,可以对历史对话文本的语种类型进行转换处理,使得历史对话文本和候选文本之间的语种类型相同,再确定转换语种类型后的历史对话文本与候选文本是否相似,能够提高相似确定结果的准确性。

步骤202:根据目标文本和对应的参考知识文本构建第一提示文本,根据历史对话文本构建第二提示文本。

具体地,第一提示文本可以通过多种方式构建得到,比如,可以将目标文本和参考知识文本依次拼接得到第一提示文本,也可以将参考知识文本和目标文本依次拼接得到第一提示文本,也可以将标文本和参考知识文本填入特定的构建模板得到第一提示文本,采用不同的拼接方式可能会影响后续参考知识文本的生成质量,在实际情况下可以通过多次调试确定合适的构建方式,从而在后续得到更加准确的参考知识文本,本申请对第一提示文本的具体构建方式不作限定,同样地,本申请对第二提示文本的具体构建方式也不作限定。

基于此,第一提示文本用于提示目标文本与对应的参考知识文本之间的关联关系,由于第一提示文本是由目标文本和对应的参考知识文本构建得到的,例如,第一提示文本是目标文本和对应的参考知识文本的拼接结果,所以,第一提示文本可以包含目标文本和对应的参考知识文本,第一提示文本可以包含通过目标文本确定对应的参考知识文本的提示信息,第一提示文本可以作为提示指令(Prompt)的一部分,提示指令可以理解为一种启动大语言模型的方式,提示指令能够指导大语言模型生成特定类型、主题或格式的输出,在后续利用质量较高的提示指令启动大语言模型,能够在不重新训练大语言模型的情况下,将第一提示文本的提示信息临时注入到大语言模型中,使得大语言模型能够储备目标文本与对应的参考知识文本之间的关联关系;

同样地,第二提示文本用于提示生成历史对话文本的预测知识文本,由于第二提示文本是由历史对话文本构建得到的,所以,第二提示文本可以包含历史对话文本,第二提示文本可以包含需要生成历史对话文本的预测知识文本的提示信息,第二提示文本相当于提示模板,在后续将质量较高的提示模板输入大语言模型,使得大语言模型能够有效完成生成历史对话文本的预测知识文本的推理任务。

步骤203:将第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本。

其中,大语言模型是使用大量文本数据训练的深度学习模型,可以生成自然语言文本或理解语言文本的含义;大语言模型一般采用循环神经网络(RNN)或变种,如长短时记忆网络(LSTM)和门控循环单元(GRU),以捕捉文本序列中的上下文信息,从而实现自然语言文本的生成、语言模型评估、文本分类、情感分析等任务;在自然语言处理领域,大语言模型已经被广泛应用,例如语音识别、机器翻译、自动摘要、对话系统、智能问答等。大语言模型用于生成与任务需求信息匹配的目标任务;具体地,通过增加基于Transformers架构的深度学习模型的参数规模和训练数据规模,可以增强深度学习模型的知识储备,使深度学习模型获得相同架构但规模更小的其他同类模型所不具备的能力,例如,获得涌现能力和上下文学习能力。

基于此,可以将生成预测知识文本作为大语言模型的文本生成任务,通过以演示形式组织的若干个示例或者指令来使大语言模型学习任务,第一提示文本包含了任务相关的参考示例,通过若干个参考示例以特定形式进行演示,第二提示文本也包含了任务相关的目标示例,第二提示文本也按照特定形式进行演示,将第一提示文本和第二提示文本拼接在一起作为大语言模型的输入,使用提示文本的方式,可以在大语言模型不重新训练的情况下,将目标文本与对应的参考知识文本之间的关联关系的相关知识临时插入到大语言模型中,大语言模型可以将蕴含丰富外部知识的第一提示文本和第二提示文本输入大语言模型,激发大语言模型的知识储备,利用大语言模型处理知识文本的文本生成任务,使得大语言模型能够更好地理解当前的知识文本生成任务,从而推理出准确的预测知识文本;简单理解,就是通过若干个完整的示例,使大语言模型更好地理解当前的文本生成任务,能够做出更加准确的预测,从而获得更准确的用于指示历史对话文本所蕴含的知识信息的预测知识文本。

另外,大语言模型可以移除临时插入的知识,例如,将知识移除指令输入大语言模型,大语言模型能够移除知识移除指令所指示的知识信息,例如,知识移除指令用于提示大语言模型移除第一提示文本和第二提示文本。

步骤204:将多个轮次的历史对话文本与预测知识文本进行拼接,得到目标拼接文本,将目标拼接文本输入大语言模型进行文本预测,生成当前轮次的响应文本。

其中,历史对话文本与预测知识文本之间的拼接方式可以是多样的,比如,可以将预测知识文本拼接在历史对话文本的前面,也可以将预测知识文本拼接在历史对话文本的后面,也可以将预测知识文本拼接在历史对话文本的中间,也可以按照预测知识文本的知识类型,将不同知识类型的预测知识文本分别拼接历史对话文本的特定位置,采用不同的拼接方式可能会影响响应文本的生成质量,在实际情况下可以通过多次调试确定合适的拼接方式,从而得到效果较好的响应文本,本申请对历史对话文本与预测知识文本之间的具体拼接方式不作限定。

基于此,由于目标拼接文本是由历史对话文本和预测知识文本拼接得到的,目标拼接文本在包含各个轮次的历史对话文本的同时,还包含历史对话文本的预测知识文本,通常情况下,当前轮次的历史对话文本仅包含待处理文本,可以将生成当前轮次的响应文本作为大语言模型的文本生成任务;假设当前轮次的历史对话文本包含待处理文本和初始响应文本,可以忽略该初始响应文本,然后将再次生成当前轮次的响应文本作为大语言模型的文本生成任务;由于大语言模型的知识储备深厚,所以由大语言模型生成的预测知识文本的类型和来源广泛,然后通过拼接历史对话文本和预测知识文本得到内容丰富的目标拼接文本,将目标拼接文本输入大语言模型,能够丰富大语言模型的输入内容,弥补相关技术中输入内容缺乏知识的不足,能够提高大语言模型的泛化性能,从而生成效果更好的响应文本,得到更流畅、知识性更高、更多样的回复,还能够降低大语言模型的开销,基于此,相对于传统的文本生成方法,本申请实施例提供的文本生成方法所生成的响应文本在相关性、多样性、知识性和流畅性上都有显著提升。

具体地,响应文本的效果评估指标包括但不限于:连贯性、信息量、真实性和吸引力,通常情况下,连贯性是基于响应文本与给定的历史对话文本之间的矛盾程度确定的,矛盾程度越低,响应文本的连贯性越高,响应文本的效果越好,反之,矛盾程度越高,响应文本的连贯性越低,响应文本的效果越差;信息量是基于响应文本中有用信息的数量确定的,有用信息的数量越多,响应文本的信息量越多,响应文本的效果越好,反之,有用信息的数量越少,响应文本的信息量越少,响应文本的效果越差;真实性是基于响应文本与真实世界的事实之间的一致性程度确定的,一致性程度越高,响应文本的真实性越高,响应文本的效果越好,反之,一致性程度越低,响应文本的真实性越低,响应文本的效果越差;吸引力是基于相关人员与聊天机器人之间对话的轮次数量确定的,轮次数量越多,响应文本的吸引力越高,响应文本的效果越好,反之,轮次数量越少,响应文本的吸引力越低,响应文本的效果越差。

具体地,参考图5,图5为本申请实施例提供的第一聊天界面的一种可选的界面示意图。

其中,聊天机器人可以进行敏感检测,当聊天机器人检测出待处理文本存在敏感信息时,会在第一聊天界面中显示“涉及敏感内容,请重新输入”。

具体地,参考图6和图7,图6为本申请实施例提供的第二聊天界面的一种可选的界面示意图,图7为本申请实施例提供的第二聊天界面的另一种可选的界面示意图。

其中,相关人员可以通过麦克风输入待处理语音,聊天机器人可以识别待处理语音,并在第二聊天界面显示语音识别结果,当聊天机器人识别出有效内容时,会生成并显示的响应文本,反之,当聊天机器人未识别出有效内容时,会在第二聊天界面中显示“未识别出有效内容,请重新输入”的提示。

在一种可能的实现方式中,候选文本的知识粒度类型的数量为至少一种,在多个候选文本中筛选出与历史对话文本相似的目标文本,具体可以是在多个轮次的历史对话文本中提取出查询文本,其中,查询文本包括至少两个轮次的历史对话文本,或者包括单个轮次的历史对话文本;在知识粒度类型与查询文本对应的候选文本中,筛选出与查询文本相似的目标文本。

其中,知识粒度类型可以对应于一个或多个知识类型,例如,粒度范围较大的粗粒度知识类型对应的知识类型包括但不限于:主题知识类型和角色知识类型,粒度范围较小的细知识粒度类型对应的知识类型包括但不限于:情感知识类型、事件知识类型和一般世界知识类型,各个知识类型都有对应的知识源,例如,知识源包括但不限于:{D

具体地,不同知识类型的知识源可以分别存储在不同的候选数据库中,在各个候选数据库中,候选文本和对应的参考知识文本以文本对的结构存储在候选数据库中,例如,文本对的结构为

例如,参照图3,图3为本申请实施例提供的数据库的一种可选的架构示意图。

其中,不同知识类型的候选文本存储在不同的候选数据库中,各个候选数据库存储有多个文本对

另外,不同知识类型的知识源可以存储在相同的数据库中,在各个数据库中,候选文本、对应的参考知识文本和知识类型以特定连接结构存储在数据库中,例如,特定连接结构为

例如,参照图4,图4为本申请实施例提供的数据库的另一种可选的架构示意图。

其中,不同知识类型的候选文本存储在相同的数据库中,数据库中存储有多个特定连接结构

在一种可能的实现方式中,参考知识文本的知识粒度类型包括第一知识粒度类型和第二知识粒度类型,第一知识粒度类型的粒度范围大于第二知识粒度类型的粒度范围,具体可以是在第一知识粒度类型的候选文本中,筛选出与至少两个轮次的历史对话文本相似的目标文本;在第二知识粒度类型的候选文本中,筛选出与单个轮次的历史对话文本相似的目标文本。

其中,限定了知识粒度类型包括第一知识粒度类型和第二知识粒度类型,可以将粒度范围较大的第一知识粒度类型作为粗知识粒度类型,以及将粒度范围较小的第二知识粒度类型作为细知识粒度类型,由于第一知识粒度类型的粒度范围较大,第一知识粒度类型的候选文本所蕴含的知识较少,而单个轮次的历史对话文本所蕴含的知识较少,两个或连个以上轮次的历史对话文本所蕴含的知识较多,所以,可以利用至少两个轮次的历史对话文本来准确地筛选出第一知识粒度类型的目标文本;

另外,由于第二知识粒度类型的粒度范围较小,第二知识粒度类型的候选文本所蕴含的知识较少,单个轮次的历史对话文本所蕴含的知识也较少,所以,可以利用单个轮次的历史对话文本来准确地筛选出第二知识粒度类型的目标文本。

在一种可能的实现方式中,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本,具体可以是根据第一知识文本构建第一背景文本;将最后至少两个轮次的历史对话文本分别与对应的第二知识文本进行拼接,得到各个轮次的历史对话文本对应的第一拼接文本;按照轮次顺序将各个轮次的第一拼接文本依次进行拼接,得到第二拼接文本;将第一背景文本和第二拼接文本进行拼接,得到目标拼接文本。

其中,第一知识文本对应的第一知识粒度类型的粒度范围较大,粒度范围较大的第一知识文本所蕴含的知识较多,所以可以通过第一知识文本构建第一背景文本,第一背景文本能够有效地指示历史对话文本所蕴含的背景知识,例如,背景知识可以指历史对话文本所蕴含的主题知识或者角色知识。

其中,一个轮次的历史对话文本可以包括待处理文本或响应文本,其中,待处理文本可以是相关人员输入的,响应文本可以是聊天机器人生成的,因此,将最后至少两个轮次的历史对话文本分别与对应的第二知识文本进行拼接,具体可以是将最后至少两个轮次的待处理文本或响应文本分别与对应的第二知识文本进行拼接;

假设某个轮次的历史对话文本需要拼接第二知识文本,而该历史对话文本仅包含待处理文本,可以将该待处理文本与第二知识文本拼接,又假设某个轮次的历史对话文本需要拼接第二知识文本,而该历史对话文本同时包含待处理文本和响应文本,可以仅将该待处理文本与第二知识文本拼接,也可以将待处理文本和响应文本分别与第二知识文本拼接;

完成第二知识文本的拼接后,可以得到第一拼接文本,第一拼接文本会包含各个轮次的历史对话文本以及与历史对话文本拼接的第二知识文本,然后可以将第一背景文本和第二拼接文本进行拼接,得到目标拼接文本,实现了语句级细粒度知识注入,利用目标拼接文本生成响应文本,能够生成效果更好的响应文本;

具体可以将第一背景文本拼接在第二拼接文本之前,也可以将第一背景文本拼接在第二拼接文本之后,本申请实施例在此不作限定。

具体地,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本,相当于,预测知识文本可以包括多种知识类型的知识,假设第一知识粒度类型对应的知识类型包括:主题知识类型和角色知识类型,第二知识粒度类型对应的知识类型包括:情感知识类型、事件知识类型和一般世界知识类型,最后两个轮次分别为第t-1个轮次和第t个轮次;

目标拼接文本的一种可选的形式如下:

/>

其中,

第一背景文本

其中,K

U

其中,

S

其中,S

U

其中,

在另一种可能的实现方式中,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本,具体可以是根据第一知识文本构建第一背景文本;将第一背景文本和当前轮次的历史对话文本对应的第二知识文本进行拼接,得到第二背景文本;按照轮次顺序将各个轮次的历史对话文本依次进行拼接,得到第三拼接文本;将第二背景文本和第三拼接文本进行拼接,得到目标拼接文本。

其中,第一知识文本对应的第一知识粒度类型的粒度范围较大,粒度范围较大的第一知识文本所蕴含的知识较多,所以可以通过第一知识文本构建第一背景文本,第一背景文本能够有效地指示历史对话文本所蕴含的背景知识,例如,背景知识可以指历史对话文本所蕴含的主题知识或者角色知识;第二知识文本对应的第二知识粒度类型的粒度范围较小,粒度范围较小的第二知识文本所蕴含的知识较少,由于对话双方往往会更关注最新的对话信息,所以,越靠近当前轮次的历史对话文本对应的第二知识文本对生成响应文本的影响越大,可以将选出当前轮次的历史对话文本对应的第二知识文本,然后将第一背景文本和当前轮次的历史对话文本对应的第二知识文本进行拼接,得到第二背景文本,使得第二背景文本能够关注当前轮次的对话信息,第三拼接文本是由各个轮次的历史对话文本拼接得到的,第三拼接文本相当于整个对话上下文,进而通过拼接第二背景文本和第三拼接文本得到目标拼接文本,实现了对话级粗粒度知识注入,利用目标拼接文本生成响应文本,能够生成效果更好的响应文本。

具体地,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本,相当于,预测知识文本可以包括多种知识类型的知识,假设第一知识粒度类型对应的知识类型包括:主题知识类型和角色知识类型,第二知识粒度类型对应的知识类型包括:情感知识类型、事件知识类型和一般世界知识类型,最后两个轮次分别为第t-1个轮次和第t个轮次,一个轮次的历史对话文本可以包括待处理文本或响应文本,其中,待处理文本可以是相关人员输入的,响应文本可以是聊天机器人生成的;

目标拼接文本的另一种可选的形式如下:

其中,

第二背景文本

其中,K

可见,除了可以通过上述两种拼接方式得到目标拼接文本之外,还可以通过其他拼接方式得到目标拼接文本,但是需要确保目标拼接文本包含第一知识粒度类型对应的第一知识文本,以及包含第二知识粒度类型对应的第二知识文本,本申请实施例对目标拼接文本的拼接方式不作具体限定。

在一种可能的实现方式中,在第一知识粒度类型的候选文本中,筛选出与至少两个轮次的历史对话文本相似的目标文本,具体可以是将第一知识粒度类型的各个候选文本分别输入预训练的自然语言处理模型进行编码处理,得到各个候选文本的候选向量;将至少两个轮次的历史对话文本输入自然语言处理模型进行编码处理,得到查询向量;分别计算查询向量和各个候选向量之间的相似度,根据相似度从各个候选文本中筛选出目标文本。

基于此,预训练的自然语言处理模型能够有效地提取文本特征,所以,能够通过自然语言处理模型提取候选向量和查询向量,通常情况下,候选向量和查询向量之间的相似度越高,代表候选文本和历史对话文本越相近,即候选文本所蕴含的知识和历史对话文本所蕴含的知识也会越相近,反之,候选向量和查询向量之间的相似度越低,代表候选文本和历史对话文本越不相近,即候选文本所蕴含的知识和历史对话文本所蕴含的知识也会越不相近。

具体地,第一知识粒度类型的候选文本的数量可以是多个,为了提高数据处理效率,可以限定第一知识粒度类型对应的目标文本的最大数量,例如,假设第一知识粒度类型的候选文本的数量大于n,第一知识粒度类型对应的目标文本的最大数量可设为n,在计算出查询向量和候选向量之间的相似度之后,可以将各个候选文本按照对应的相似度由大到小的顺序进行排序,然后将排列前n个的候选文本作为目标文本,能够提高目标文本整体的相似程度,进行在后续生成效果更好的响应文本;

也可以通过将依次计算得到的相似度分别与预设的相似度阈值进行比较,依次确定各个候选向量是否与查询向量相似,将最先确定相似的n个候选向量对应的候选样本作为目标文本,能够快速筛选出目标文本,从而提高整体的处理效率。

在一种可能的实现方式中,在第二知识粒度类型的候选文本中,筛选出与单个轮次的历史对话文本相似的目标文本,具体可以是将第二知识粒度类型的各个候选文本分别输入预训练的自然语言处理模型进行编码处理,得到各个候选文本的候选向量;将单个轮次的历史对话文本输入自然语言处理模型进行编码处理,得到查询向量;分别计算查询向量和各个候选向量之间的相似度,根据相似度从各个候选文本中筛选出目标文本。

基于此,第二知识粒度类型对应的目标文本的确定方法,与第一知识粒度类型对应的目标文本的确定方法类似,在此不再赘述。

具体地,查询向量和各个候选向量之间的相似度可采用余弦相似度,余弦相似度的一种可选的计算公式如下:

其中,Q

在一种可能的实现方式中,在多个轮次的历史对话文本中提取出查询文本,具体可以是在多个轮次的历史对话文本中提取出当前轮次之前所有轮次的历史对话文本,作为查询文本;或者,将在多个轮次的历史对话文本中提取出单个轮次的历史对话文本,作为查询文本。

其中,候选文本的知识粒度类型可以包括第一知识粒度类型或第二知识粒度类型,假设第一知识粒度类型的粒度范围大于第二知识粒度类型的粒度范围,可以将第一知识粒度类型作为粗知识粒度类型,以及将第二知识粒度类型作为细知识粒度类型,为了适配粒度范围较大的粗知识粒度类型,可以将多个轮次的历史对话文本作为查询文本,具体可将当前轮次之前所有轮次的历史对话文本作为查询文本,为了适配粒度范围较小的细知识粒度类型,可以将单个轮次的历史对话文本作为查询文本,具体可将当前轮次的历史对话文本作为查询文本,或者将当前轮次的前一个轮次的历史对话文本作为查询文本。

具体地,粗知识粒度类型对应的知识类型包括但不限于:主题知识类型和角色知识类型,细知识粒度类型对应的知识类型包括但不限于:情感知识类型、事件知识类型和一般世界知识类型,五种知识类型的查询文本可以分别记为{Q

其中,Q

例如,将第x个轮次的历史对话文本作为查询文本时,将查询文本Q

在一种可能的实现方式中,根据目标文本和对应的参考知识文本构建第一提示文本,具体可以是确定目标文本的知识粒度类型的类型名称;将目标文本、类型名称、预设的连接符号和目标文本对应的参考知识文本依次进行拼接,得到第一提示文本。

基于此,目标文本可以是从知识源中采样得到的,不同知识源对应的知识类型是不同的,例如,知识粒度类型对应的知识类型包括但不限于:主题知识类型、角色知识类型、情感知识类型、事件知识类型和一般世界知识类型,可以预先设置有上述五种知识类型的知识源,然后可以根据目标文本对应的知识类型确定目标文本的知识粒度类型的类型名称,假设目标文本对应的知识类型是情感知识类型,可以确定类型名称为“情感”,由于第一提示文本是由目标文本、类型名称、预设的连接符号和目标文本对应的参考知识文本依次拼接得到的,相当于第一提示文本包含了任务相关的参考示例,使得大语言模型能够推理出准确的预测知识文本。

具体地,第一提示文本的一种可选的形式如下:

其中,

相当于提示符,例如,目标文本为“这电影真好看”,知识类型的类型名称为“情感”,对应的参考知识文本为“赞扬”,可确定第一提示文本为:[这电影真好看;情感/>

在一种可能的实现方式中,根据历史对话文本构建第二提示文本,具体可以是确定目标文本的知识粒度类型的类型名称;将历史对话文本、类型名称和预设的连接符号依次进行拼接,得到第二提示文本。

基于此,与第一提示文本的构造类似,第二提示文本也会包含历史对话文本、类型名称和预设的连接符号,第二提示文本与第一提示文本的区别在于,第二提示文本未包含知识文本,这是因为第二提示文本的预测知识文本还未被生成,所以,通过结合第一提示文本和第二提示文本,能够激发大语言模型预测出与历史对话文本相关的知识,能够更好地理解当前的知识文本生成任务,从而推理出准确的预测知识文本。

具体地,第二提示文本的一种可选的形式如下:

其中,Q

相当于提示符,例如,查询文本为“请推荐与电影A类似的电影”,知识类型的类型名称为“情感”,可确定第二提示文本为:[请推荐与电影A类似的电影;情感/>

在一种可能的实现方式中,可以先利用大语言模型对查询文本进行初步的知识推理,将查询文本和初步的知识推理结果拼接,作为新的查询文本,再根据新的查询文本、类型名称和连接符号依次进行拼接,得到第二提示文本,第二提示文本蕴含一定的知识,在后续能够推理出准确的预测知识文本。

在一种可能的实现方式中,将第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本,具体可以是获取知识生成指令,知识生成指令用于提示生成历史对话文本的预测知识文本;将知识生成指令、第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本。

其中,知识生成指令可以作为提示指令的一部分,通过拼接知识生成指令、第一提示文本和第二提示文本,能够得到质量较高的第一提示指令,将质量较高的第一提示指令输入大语言模型进行文本预测,能够推理出准确的预测知识文本。

其中,可以根据需要将多个知识划分至不同知识类型,例如,知识类型包括但不限于:主题知识类型、角色知识类型、情感知识类型、事件知识类型和一般世界知识类型,针对不同知识类型的知识预测过程,可以选用同一指令文本的知识生成指令,例如,对于不同知识类型的知识预测过程,知识生成指令的指令文本可以均为“请尝试理解输入的内容,并生成相应的知识”;

针对不同知识类型的知识预测过程,也可以选用不同指令文本的知识生成指令,例如,对于主题知识类型,知识生成指令的指令文本可以为“请尝试理解输入的内容,并生成主题知识类型的知识”,又例如,对于事件知识类型,知识生成指令的指令文本可以为“请尝试理解输入的内容,并生成事件知识类型的知识”,本申请实施例对知识生成指令的具体指令文本不作限定。

具体地,预测知识文本的一种可选的生成公式如下:

其中,

在一种可能的实现方式中,将目标拼接文本输入大语言模型进行文本预测,生成当前轮次的响应文本,具体可以是获取回复生成指令,回复生成指令用于提示生成当前轮次的响应文本;将回复生成指令和目标拼接文本拼接后输入大语言模型进行文本预测,生成响应文本。

其中,回复生成指令可以作为提示指令的一部分,通过拼接回复生成指令和目标拼接文本,能够得到质量较高的第二提示指令,将质量较高的第二提示指令输入大语言模型进行文本预测,能够推理出效果更好的响应文本。

具体地,响应文本的一种可选的生成公式如下:

其中,

除此之外,响应文本的另一种可选的生成公式如下:

其中,

下面详细说明文本生成方法的完整过程。

参照图8,图8为本申请实施例提供的文本生成方法的一种可选的构架示意图。

首先,获取多个轮次的历史对话文本、多个预设的候选文本和各个候选文本对应的参考知识文本。

然后,在多个轮次的历史对话文本中提取出当前轮次之前所有轮次的历史对话文本,作为查询文本;或者,将在多个轮次的历史对话文本中提取出单个轮次的历史对话文本,作为查询文本;其中,参考知识文本的知识粒度类型包括第一知识粒度类型和第二知识粒度类型,第一知识粒度类型的粒度范围大于第二知识粒度类型的粒度范围,查询文本包括至少两个轮次的历史对话文本,或者包括单个轮次的历史对话文本。

然后,将第一知识粒度类型的各个候选文本分别输入预训练的自然语言处理模型进行编码处理,得到各个候选文本的候选向量;将至少两个轮次的历史对话文本输入自然语言处理模型进行编码处理,得到查询向量;分别计算查询向量和各个候选向量之间的相似度,根据相似度从各个候选文本中筛选出目标文本。

然后,将第二知识粒度类型的各个候选文本分别输入预训练的自然语言处理模型进行编码处理,得到各个候选文本的候选向量;将单个轮次的历史对话文本输入自然语言处理模型进行编码处理,得到查询向量;分别计算查询向量和各个候选向量之间的相似度,根据相似度从各个候选文本中筛选出目标文本。

然后,确定目标文本的知识粒度类型的类型名称;将目标文本、类型名称、预设的连接符号和目标文本对应的参考知识文本依次进行拼接,得到第一提示文本;其中,第一提示文本用于提示目标文本与对应的参考知识文本之间的关联关系。

然后,确定目标文本的知识粒度类型的类型名称;将历史对话文本、类型名称和预设的连接符号依次进行拼接,得到第二提示文本;其中,第二提示文本用于提示生成历史对话文本的预测知识文本。

然后,获取知识生成指令,知识生成指令用于提示生成历史对话文本的预测知识文本;将知识生成指令、第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本。

然后,根据第一知识文本构建第一背景文本;将最后至少两个轮次的历史对话文本分别与对应的第二知识文本进行拼接,得到各个轮次的历史对话文本对应的第一拼接文本;按照轮次顺序将各个轮次的第一拼接文本依次进行拼接,得到第二拼接文本;将第一背景文本和第二拼接文本进行拼接,得到目标拼接文本。

或者,根据第一知识文本构建第一背景文本;将第一背景文本和当前轮次的历史对话文本对应的第二知识文本进行拼接,得到第二背景文本;按照轮次顺序将各个轮次的历史对话文本依次进行拼接,得到第三拼接文本;将第二背景文本和第三拼接文本进行拼接,得到目标拼接文本;其中,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本。

然后,获取回复生成指令,回复生成指令用于提示生成当前轮次的响应文本。

然后,将回复生成指令和目标拼接文本拼接后输入大语言模型进行文本预测,生成响应文本。

基于此,通过获取历史对话文本、候选文本和参考知识文本,参考知识文本相当于外部知识,然后在多个候选文本中筛选出与历史对话文本相似的目标文本,能够确保目标文本与历史对话文本之间的相关性,进而确保外部知识与历史对话文本之间的相关性,然后根据目标文本和对应的参考知识文本构建第一提示文本,以及根据历史对话文本构建第二提示文本,将蕴含丰富外部知识的第一提示文本和第二提示文本输入大语言模型,激发大语言模型的知识储备,利用大语言模型处理知识文本的文本生成任务,推理出准确的预测知识文本,由于大语言模型的知识储备深厚,所以由大语言模型生成的预测知识文本的类型和来源广泛,然后通过拼接历史对话文本和预测知识文本得到内容丰富的目标拼接文本,再次利用大语言模型处理响应文本的文本生成任务,能够提高大语言模型的泛化性能,避免响应文本出现错误,从而生成效果较好的响应文本,基于此,相对于传统的文本生成方法,本申请实施例提供的文本生成方法所生成的响应文本在相关性、多样性、知识性和流畅性上都有显著提升。

本申请实施例提供的文本生成方法可以应用于多种场景。

例如,在聊天机器人的交互场景中,终端的显示界面可以显示聊天机器人的聊天界面,相关人员可以输入待处理文本,可从相关人员与聊天机器人以往的历史记录中获取多个轮次的历史对话文本,然后可以获取多个预设的候选文本和各个候选文本对应的参考知识文本,在多个候选文本中筛选出与历史对话文本相似的目标文本;根据目标文本和对应的参考知识文本构建第一提示文本,根据历史对话文本构建第二提示文本,其中,第一提示文本用于提示目标文本与对应的参考知识文本之间的关联关系,第二提示文本用于提示生成历史对话文本的预测知识文本;将第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本;将多个轮次的历史对话文本与预测知识文本进行拼接,得到目标拼接文本,将目标拼接文本输入大语言模型进行文本预测,聊天机器人生成当前轮次的响应文本,能够提高大语言模型的泛化性能,从而生成效果较好的响应文本。

又例如,参考图9,图9为本申请实施例提供的智能语音助手的一种可选的架构示意图。

其中,在智能语音助手的交互场景中,智能助手可以是车载智能语音助手或者家居智能语音助手,智能语音助手可以采集相关人员输入的待处理语音,然后利用智能语音助手的语音识别模块将待处理语音转换为待处理文本,可以将以往的交互语音对应的文本中获取多个轮次的历史对话文本,然后可以获取多个预设的候选文本和各个候选文本对应的参考知识文本,在多个候选文本中筛选出与历史对话文本相似的目标文本;根据目标文本和对应的参考知识文本构建第一提示文本,根据历史对话文本构建第二提示文本,其中,第一提示文本用于提示目标文本与对应的参考知识文本之间的关联关系,第二提示文本用于提示生成历史对话文本的预测知识文本;将第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本;将多个轮次的历史对话文本与预测知识文本进行拼接,得到目标拼接文本,将目标拼接文本输入大语言模型进行文本预测,智能语音助手生成当前轮次的响应文本,然后利用智能语音助手的语音合成模块将响应文本合成为响应语音,然后利用智能语音助手的扬声器播放响应语音,能够提高大语言模型的泛化性能,从而生成效果较好的响应文本。

可以理解的是,虽然上述各个流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本实施例中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时间执行完成,而是可以在不同的时间执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

参照图10,图10为本申请实施例提供的文本生成装置的一种可选的结构示意图,该文本生成装置1000包括:

获取模块1001,用于获取多个轮次的历史对话文本、多个预设的候选文本和各个候选文本对应的参考知识文本,在多个候选文本中筛选出与历史对话文本相似的目标文本;

提示构建模块1002,用于根据目标文本和对应的参考知识文本构建第一提示文本,根据历史对话文本构建第二提示文本,其中,第一提示文本用于提示目标文本与对应的参考知识文本之间的关联关系,第二提示文本用于提示生成历史对话文本的预测知识文本;

知识生成模块1003,用于将第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本;

回复生成模块1004,用于将多个轮次的历史对话文本与预测知识文本进行拼接,得到目标拼接文本,将目标拼接文本输入大语言模型进行文本预测,生成当前轮次的响应文本。

进一步,候选文本的知识粒度类型的数量为至少一种,上述获取模块1001具体用于:

在多个轮次的历史对话文本中提取出查询文本,其中,查询文本包括至少两个轮次的历史对话文本,或者包括单个轮次的历史对话文本;

在知识粒度类型与查询文本对应的候选文本中,筛选出与查询文本相似的目标文本。

进一步,参考知识文本的知识粒度类型包括第一知识粒度类型和第二知识粒度类型,第一知识粒度类型的粒度范围大于第二知识粒度类型的粒度范围,上述获取模块1001具体用于:

在第一知识粒度类型的候选文本中,筛选出与至少两个轮次的历史对话文本相似的目标文本;

在第二知识粒度类型的候选文本中,筛选出与单个轮次的历史对话文本相似的目标文本。

进一步,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本,上述回复生成模块1004具体用于:

根据第一知识文本构建第一背景文本;

将最后至少两个轮次的历史对话文本分别与对应的第二知识文本进行拼接,得到各个轮次的历史对话文本对应的第一拼接文本;

按照轮次顺序将各个轮次的第一拼接文本依次进行拼接,得到第二拼接文本;

将第一背景文本和第二拼接文本进行拼接,得到目标拼接文本。

进一步,预测知识文本包括第一知识粒度类型对应的第一知识文本,以及第二知识粒度类型对应的第二知识文本,上述回复生成模块1004具体用于:

根据第一知识文本构建第一背景文本;

将第一背景文本和当前轮次的历史对话文本对应的第二知识文本进行拼接,得到第二背景文本;

按照轮次顺序将各个轮次的历史对话文本依次进行拼接,得到第三拼接文本;

将第二背景文本和第三拼接文本进行拼接,得到目标拼接文本。

进一步,上述获取模块1001具体用于:

将第一知识粒度类型的各个候选文本分别输入预训练的自然语言处理模型进行编码处理,得到各个候选文本的候选向量;

将至少两个轮次的历史对话文本输入自然语言处理模型进行编码处理,得到查询向量;

分别计算查询向量和各个候选向量之间的相似度,根据相似度从各个候选文本中筛选出目标文本。

进一步,上述获取模块1001具体用于:

在多个轮次的历史对话文本中提取出当前轮次之前所有轮次的历史对话文本,作为查询文本;

或者,将在多个轮次的历史对话文本中提取出单个轮次的历史对话文本,作为查询文本。

进一步,上述提示构建模块1002具体用于:

确定目标文本的知识粒度类型的类型名称;

将目标文本、类型名称、预设的连接符号和目标文本对应的参考知识文本依次进行拼接,得到第一提示文本。

进一步,上述提示构建模块1002具体用于:

确定目标文本的知识粒度类型的类型名称;

将历史对话文本、类型名称和预设的连接符号依次进行拼接,得到第二提示文本。

进一步,上述知识生成模块1003具体用于:

获取知识生成指令,知识生成指令用于提示生成历史对话文本的预测知识文本;

将知识生成指令、第一提示文本和第二提示文本拼接后输入大语言模型进行文本预测,生成预测知识文本。

进一步,上述回复生成模块1004具体用于:

获取回复生成指令,回复生成指令用于提示生成当前轮次的响应文本;

将回复生成指令和目标拼接文本拼接后输入大语言模型进行文本预测,生成响应文本。

上述文本生成装置1000与应用于中心节点的文本生成方法基于相同的发明构思,通过获取历史对话文本、候选文本和参考知识文本,参考知识文本相当于外部知识,然后在多个候选文本中筛选出与历史对话文本相似的目标文本,能够确保目标文本与历史对话文本之间的相关性,进而确保外部知识与历史对话文本之间的相关性,然后根据目标文本和对应的参考知识文本构建第一提示文本,以及根据历史对话文本构建第二提示文本,将蕴含丰富外部知识的第一提示文本和第二提示文本输入大语言模型,激发大语言模型的知识储备,利用大语言模型处理知识文本的文本生成任务,推理出准确的预测知识文本,由于大语言模型的知识储备深厚,所以由大语言模型生成的预测知识文本的类型和来源广泛,然后通过拼接历史对话文本和预测知识文本得到内容丰富的目标拼接文本,再次利用大语言模型处理响应文本的文本生成任务,能够提高大语言模型的泛化性能,避免响应文本出现错误,从而生成效果较好的响应文本,基于此,相对于传统的文本生成装置,本申请实施例提供的文本生成装置所生成的响应文本在相关性、多样性、知识性和流畅性上都有显著提升。

本申请实施例提供的用于执行上述文本生成方法的电子设备可以是终端,参照图11,图11为本申请实施例提供的终端的部分结构框图,该终端包括:摄像头组件1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(wirelessfidelity,简称WiFi)模块1170、处理器1180、以及电源1190等部件。本领域技术人员可以理解,图11中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

摄像头组件1110可用于采集图像或视频。可选地,摄像头组件1110包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。

存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行终端的各种功能应用以及数据处理。

输入单元1130可用于接收输入的数字或字符信息,以及产生与终端的设置以及功能控制有关的键信号输入。具体地,输入单元1130可包括触摸面板1131以及其他输入装置1132。

显示单元1140可用于显示输入的信息或提供的信息以及终端的各种菜单。显示单元1140可包括显示面板1141。

音频电路1160、扬声器1161,传声器1162可提供音频接口。

电源1190可以是交流电、直流电、一次性电池或可充电电池。

传感器1150的数量可以为一个或者多个,该一个或多个传感器1150包括但不限于:加速度传感器、陀螺仪传感器、压力传感器、光学传感器等等。其中:

加速度传感器可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器可以用于检测重力加速度在三个坐标轴上的分量。处理器1180可以根据加速度传感器采集的重力加速度信号,控制显示单元1140以横向视图或纵向视图进行用户界面的显示。加速度传感器还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器可以检测终端的机体方向及转动角度,陀螺仪传感器可以与加速度传感器协同采集用户对终端的3D动作。处理器1180根据陀螺仪传感器采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器可以设置在终端的侧边框和/或显示单元1140的下层。当压力传感器设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器1180根据压力传感器采集的握持信号进行左右手识别或快捷操作。当压力传感器设置在显示单元1140的下层时,由处理器1180根据用户对显示单元1140的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

光学传感器用于采集环境光强度。在一个实施例中,处理器1180可以根据光学传感器采集的环境光强度,控制显示单元1140的显示亮度。具体地,当环境光强度较高时,调高显示单元1140的显示亮度;当环境光强度较低时,调低显示单元1140的显示亮度。在另一个实施例中,处理器1180还可以根据光学传感器采集的环境光强度,动态调整摄像头组件1110的拍摄参数。

在本实施例中,该终端所包括的处理器1180可以执行前面实施例的文本生成方法。

本申请实施例提供的用于执行上述文本生成方法的电子设备也可以是服务器,参照图12,图12为本申请实施例提供的服务器的部分结构框图,服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central ProcessingUnits,简称CPU)1222(例如,一个或一个以上处理器)和存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储装置)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器1200中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。

服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。

服务器1200中的处理器可以用于执行文本生成方法。

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行前述各个实施例的文本生成方法。

本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行实现上述的文本生成方法。

本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或装置不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或装置固有的其它步骤或单元。

应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。

应了解,在本申请实施例的描述中,多个(或多项)的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

还应了解,本申请实施例提供的各种实施方式可以任意进行组合,以实现不同的技术效果。

以上是对本申请的较佳实施进行了具体说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的共享条件下还可作出种种等同的变形或替换,这些等同的变形或替换均包括在本申请权利要求所限定的范围内。

相关技术
  • 一种畜禽粪便好氧堆肥过程中重金属钝化并保氮方法
  • 一种降低畜禽粪便堆肥氨挥发的高温微好氧堆肥保氮菌及其应用
  • 一种河道水体碳氮磷去除的设备及其方法
  • 一种用于种植地排水的氮磷处理设备
  • 一种固气转化炉内脱硝的方法及设备及其使用设备
  • 一种保氮固磷的堆肥方法及设备
  • 一种城市生活污泥的保氮、保磷堆肥方法
技术分类

06120116540872