CN116127046A - 生成式大语言模型训练方法、基于模型的人机语音交互方法 - Google Patents

生成式大语言模型训练方法、基于模型的人机语音交互方法 Download PDF

Info

Publication number
CN116127046A
CN116127046A CN202310233936.8A CN202310233936A CN116127046A CN 116127046 A CN116127046 A CN 116127046A CN 202310233936 A CN202310233936 A CN 202310233936A CN 116127046 A CN116127046 A CN 116127046A
Authority
CN
China
Prior art keywords
language model
training
user input
text
large language
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
Application number
CN202310233936.8A
Other languages
English (en)
Inventor
黄际洲
孙一博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202310233936.8A priority Critical patent/CN116127046A/zh
Publication of CN116127046A publication Critical patent/CN116127046A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

本公开提供了生成式大语言模型训练方法、基于模型的人机语音交互方法,涉及生成式模型、智能语音、人机交互等人工智能技术领域。该方法包括:基于用户输入文本与包含有接口调用指令的输出结果,构建第一训练集;利用第一训练集对预设的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;利用第二训练集对预设的第三生成式大语言模型进行有监督训练,得到奖励模型;将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式进行训练。利用据此训练得到的生成式大语言模型可显著提升人机语音交互场景下的回复准确率和用户体验。

Description

生成式大语言模型训练方法、基于模型的人机语音交互方法
技术领域
本公开涉及数据处理领域,具体涉及生成式模型、智能语音、人机交互等人工智能技术领域,尤其涉及一种生成式大语言模型训练和基于生成式大语言模型的人机语音交互方法,以及以对应的装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
大型语言模型(LLM,Large Language Model,其本质是生成式模型),如ChatGPT(Chat Generative Pre-trained Transformer,是OpenAI机构研发的聊天机器人程序),能够为许多下游任务(例如面向任务的对话和问题解答)生成类似人类的流畅响应。
然而,将LLM应用于现实世界中的任务解决型应用仍然具有挑战性,主要原因是它们可能会产生与实际不符的回复,以及无法使用外部知识作为参考进行回复的生成。
例如,对于“A市现在天气如何”、“B货币兑C货币汇率”以及“从C位置到D位置需要多久”等问题,在回答时都需要实时的信息,而这些实时信息(例如实时时间、实时汇率、实时路况和实时交通信息等)根本无法单纯依靠LLM参数中蕴含的知识来生成,均需要依赖于外部的知识才能生成出准确的结果。
发明内容
本公开实施例提出了一种生成式大语言模型训练方法和基于生成式大语言模型的人机语音交互方法,以及与方法配套的装置、电子设备、计算机可读存储介质及计算机程序产品。
第一方面,本公开实施例提出了一种生成式大语言模型训练方法,包括:基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集,用户输入文本由用户输入语音转换得到,接口调用指令所调用的服务接口对应于用户输入文本表达出的功能使用意图;利用第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型;将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
第二方面,本公开实施例提出了一种生成式大语言模型训练装置,包括:第一训练集构建单元,被配置成基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集,用户输入文本由用户输入语音转换得到,接口调用指令所调用的服务接口对应于用户输入文本表达出的功能使用意图;有监督微调训练单元,被配置成利用第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;第二训练集构建单元,被配置成基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;奖励模型训练单元,被配置成利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型;强化学习训练单元,被配置成将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
第三方面,本公开实施例提出了一种基于生成式大语言模型的人机语音交互方法,包括:获取用户以语音形式发出的用户输入语音;将用户输入语音对应的用户输入文本作为输入数据输入目标生成式大语言模型;其中,目标生成式大语言模型根据如上述第一方面描述的生成式大语言模型训练方法得到;接收目标生成式大语言模型返回的输出文本;其中,输出文本基于执行接口调用指令后得到的响应信息生成得到;将输出文本转换为语音形式的机器答复语音。
第四方面,本公开实施例提出了一种基于生成式大语言模型的人机语音交互装置,包括:用户输入语音获取单元,被配置成获取用户以语音形式发出的用户输入语音;模型调用单元,被配置成将用户输入语音对应的用户输入文本作为输入数据输入预设的目标生成式大语言模型;其中,目标生成式大语言模型根据如第二方面描述的生成式大语言模型训练装置得到;输出文本接收单元,被配置成接收目标生成式大语言模型返回的输出文本;其中,输出文本基于执行接口调用指令后得到的响应信息生成得到;机器答复语音生成单元,被配置成将输出文本转换为语音形式的机器答复语音。
第五方面,本公开实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现如第一方面描述的生成式大语言模型训练方法或如第三方面描述的基于生成式大语言模型的人机语音交互方法。
第六方面,本公开实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行时能够实现如第一方面描述的生成式大语言模型训练方法或如第三方面描述的基于生成式大语言模型的人机语音交互方法。
第七方面,本公开实施例提供了一种包括计算机程序的计算机程序产品,该计算机程序在被处理器执行时能够实现如第一方面描述的生成式大语言模型训练方法的步骤或如第三方面描述的基于生成式大语言模型的人机语音交互方法的步骤。
本公开实施例提供的生成式大语言模型训练方案,由于第一训练集是由(用户输入语音转换得到的)用户输入文本与表达相应功能使用意图的包含有接口调用指令的输出结果构建得到,使得通过第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,进而使得训练得到的第二生成式大语言模型具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,而在由相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合所构建的第二训练集对预训练好的第三生成式大语言模型进行有监督训练,进而使得训练得到的奖励模型拥有为生成式大语言模型针对用户输入文本所生成的不同候选进行质量评分的能力,进而使得在基于人类反馈的强化学习的训练下,所最终得到的目标生成式大语言模型不仅具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,还具有输出更符合用户需求的结果的能力。即通过上述训练方案使得经训练得到的目标生成式大语言模型具有了深度理解用户需求并自行构建相应接口调用指令进行查询得到返回的准确答案的能力,能够不单单依据自然语言输入和大模型参数中蕴含的知识生成自然语言输出,而是借助提供专业能力的应用程序接口调用相应的功能,以更切实的解决用户需求,且在奖励模型的作用下还将使得返回的结果更加符合用户的实际需求和预期。
在上述实施例提供的生成式大语言模型训练方案的有益效果基础上,本公开实施例提供的基于生成式大语言模型的人机语音交互方案,则是具体针对由语音助手充当执行主体的场景下,将按上述训练方案训练得到的目标生成式大语言模型应用于人机语音交互场景,语音助手在将用户输入语音对应的用户输入文本输入目标生成式大语言模型后,借助目标生成式大语言模型所具有的能力生成相应的结果,并在遇到需要调用服务接口的地方则自动生成接口调用指令并进行执行以获得返回的调用结果,并将基于已生成的回复文本和调用结果生成出的输出文本返回语音助手,使得语音助手再将其转换为机器答复语音返回用户完成人机语音交互,提升了人机语音交互体验。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
图1是本公开可以应用于其中的示例性系统架构;
图2为本公开实施例提供的一种生成式大语言模型训练方法的流程图;
图3为本公开实施例提供的一种构建第一训练集的方法的流程图;
图4为本公开实施例提供的一种基于由用户输入文本与匹配的输出结果构成的样本对构建第一训练集的方法的流程图;
图5为本公开实施例提供的一种构建第二训练集的方法的流程图;
图6为本公开实施例提供的一种基于生成式大语言模型的人机语音交互方法的流程图;
图7为本公开实施例提供的一种针对具体例子的人机语音交互流程示意图;
图8为本公开实施例提供的一种生成式大语言模型训练装置的结构框图;
图9为本公开实施例提供的一种基于生成式大语言模型的人机语音交互装置的结构框图;
图10为本公开实施例提供的一种适用于执行生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法的电子设备的结构示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
图1示出了可以应用本申请的生成式大语言模型训练方法、基于生成式大语言模型的人机语音交互方法,以及配套的装置、电子设备及计算机可读存储介质的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103和服务器105上可以安装有各种用于实现两者之间进行信息通讯的应用,例如人机语音交互类应用(例如导航语音助手应用、智能终端语音助手应用等)、模型训练类应用等。
终端设备101、102、103和服务器105可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等;当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中,其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器;服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。
服务器105通过内置的各种应用可以提供各种服务,以可以为用户提供人机语音交互服务的人机语音交互类应用为例,服务器105在运行该人机语音交互类应用时可实现如下效果:首先,通过网络104传入的终端设备101、102、103记录下的用户以语音形式发出的用户输入语音;然后,将该用户输入语音对应的用户输入文本作为输入数据输入预先训练好的目标生成式大语言模型;下一步,接收目标生成式大语言模型返回的输出文本;其中,输出文本基于执行接口调用指令后得到的响应信息生成得到;最后,将输出文本转换为语音形式的机器答复语音。进一步的,还可以将该机器答复语音通过网络104重新传回终端设备101、102、103,以便于由终端设备101、102、103通过播放该机器答复语音向相应用户做出回复。
其中,该目标生成式大语言模型可由服务器105上内置的模型训练类应用按如下步骤训练得到:首先,基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集,该用户输入文本由用户输入语音转换得到,接口调用指令所调用的服务接口对应于用户输入文本表达出的功能使用意图;然后,利用第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;接着,基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;下一步,利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型;最后,将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
由于为训练得到目标生成式大语言模型需要占用较多的运算资源和较强的运算能力,因此本申请后续各实施例所提供的生成式大语言模型训练方法一般由拥有较强运算能力、较多运算资源的服务器105来执行,相应地,生成式大语言模型训练装置一般也设置于服务器105中。但同时也需要指出的是,在终端设备101、102、103也具有满足要求的运算能力和运算资源时,终端设备101、102、103也可以通过其上安装的模型训练类应用完成上述本交由服务器105做的各项运算,进而输出与服务器105同样的结果。相应的,生成式大语言模型训练装置也可以设置于终端设备101、102、103中。在此种情况下,示例性系统架构100也可以不包括服务器105和网络104。
当然,用于训练得到目标生成式大语言模型的服务器可以不同于调用训练好的目标生成式大语言模型来使用的服务器。特殊的,经由服务器105训练得到的目标生成式大语言模型也可以通过模型蒸馏的方式得到适合置入终端设备101、102、103的轻量级的目标生成式大语言模型,即可以根据实际需求的识别准确度灵活选择使用终端设备101、102、103中的轻量级的目标生成式大语言模型,还是选择使用服务器105中的较复杂的目标生成式大语言模型。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
请参考图2,图2为本公开实施例提供的一种生成式大语言模型训练方法的流程图,其中流程200包括以下步骤:
步骤201:基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集;
本步骤旨在由生成式大语言模型训练方法的执行主体(例如图1所示的服务器105)基于由(经用户以语音形式发出的用户输入语音转换得到的)用户输入文本与匹配的包含有接口调用指令的输出结果所构成的大量的“用户输入文本—包含有接口调用指令的输出结果”的样本对,来构建第一训练集。其中,该用户输入语音可获取自各种渠道,可以来自于对大量已授权用户在过去较长时间段内收集记录得到的用户语音数据集,也可以来自于历史的人机交互序列集。为实现用户输入语音转为用户输入文本,可借助自动语音识别(Automatic Speech Recognition,ASR)技术来实现,而为提升转换结果准确性,还可以借助基于深度学习的语音转文本模型来进行。
其中,接口调用指令所调用的服务接口对应于用户输入文本表达出的功能使用意图,即接口调用指令所调用的服务接口对应于实现用户输入文本所想要表达的预期需求,进而通过执行接口调用指令得到返回响应、并基于响应信息组织得到输出结果的方式,来实现用户需求或得到满足用户功能使用意图的回复。
其中,本公开所描述的“服务接口”是指用于提供服务的应用程序编程接口(Application Programming Interface,API),不同的API可由安装在操作系统上的相关应用(包括支持操作系统正常运行的系统相关应用和建立在操作系统正常运行上的其它应用)提供,也可直接由操作系统或运行在操作系统上的一些系统组件提供,例如可用于实现获取用户车牌尾号功能的GetNum API(通常由车辆信息维护类应用或组件提供)、用于实现查询限行政策功能的GetTR API(通常由新闻政策或搜索引擎类应用提供)、实现导航功能的Navi API(通常由地图类应用提供)、用于实现兴趣点定位功能的FindPOI API(通常由地图类应用提供,英文缩写POI的全称为:Point of Interest)、用于实现选择功能的OptionAPI(通常由提供多项备选方案的具体应用提供,例如可寻求通往相同目的地的多条备选路线中进行偏好选择时,由地图类应用提供)、用于实现具体日期获取功能的Date API(通常由时钟类应用或时间组件提供)、用于实现歌曲查找功能的FindSong API(通常由歌曲类应用或检索类应用提供),除此之外,还包括且不限于用于实现下述功能的对应API:
时间查询、日期查询、注册车牌号查询、用户查找、好友查询、听歌识曲、图片查找、出行路线规划、天气查询、任务编排、位置查询、限行尾号查询、汇率换算、进制转换、翻译、周边环境查询、加解密、数据下载、数据传输、问题查询、图片编辑等。
另外,与用户输入文本匹配的包含有接口调用指令的输出结果中,可以仅包含有一条接口调用指令,此种情况下,可能是用户输入文本仅表达了一项功能使用意图,此时仅有该项功能使用意图对应该条接口调用指令;还有可能是用户输入文本同时表达了多项功能使用意图,但其中仅有一项必须通过对应的接口调用指令以执行后寻求返回响应的方式,才能够得到所需的准确结果(例如背景技术部分提及的需要结合实时、动态信息进行实时运算的情况),其余功能使用意图可使用对应的接口调用指令获取相应答案,也可以仅依赖于大模型参数中蕴含的知识对该用户输入文本直接生成相应答案,在此种情况是否需要依旧选择为其生成接口调用指令来获取相应答案,可根据实际情况灵活选择,此处不做具体限定。
若与用户输入文本匹配的包含有接口调用指令的输出结果中同时包含有多条接口调用指令,还需要考虑不同的接口调用指令之间是否存在执行依赖关系,从而根据确定出的执行顺序来正确将其组织为服务接口调用序列。具体的,对于每个接口调用指令来说,其一般均包含目标服务接口的接口名和具体的接口调用参数,两者以要求的格式进行组合。但对于某些特殊的API,其接口调用参数可为空;另外一些某些特殊的API,其接口调用参数也可以是另一个接口调用指令。另外,具体的接口调用参数可以直接由用户输入文本中的某个文本片段直接充当,也可以由表达与相应文本片段相同含义的其它形式内容充当。
以“导航去人民公园”这一简单的用户输入文本为例,其仅有导航去预设目的地这一个功能使用意图,而对应该功能使用意图的目标服务接口可为指代导航功能的NaviAPI,其具体接口参数就应为由“人民公园”充当,就此时的输出结果中包含的接口调用指令即为:Navi(人民公园)。
为便于理解本步骤所描述的方案,下述将通过一个具体例子进行展开说明:
假设对用户输入语音进行语音转文本操作后,得到的用户输入文本为:“导航去X地Y街的Z,走最快的路线”,那么与该用户输入文本匹配的包含有接口调用指令的输出结果可表现为:“FindPOI(X地Y街的Z)-->Z1,位于X地Y街,Option(走红绿灯少的路线)-->红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”,也可以表现为“Z1,位于X地Y街,红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”。
对于所呈现出的“FindPOI(X地Y街的Z)-->Z1,位于X地Y街,Option(走红绿灯少的路线)-->红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”这种输出结果,是将用户输入文本中所表达出的每项功能使用意图都表现为接口调用指令;而对于所呈现出的“Z1,位于X地Y街,红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”这种输出结果,则是仅将用户输入文本中所表达出的必须基于实时、动态信息来进行结果计算的导航功能使用意图表现为唯一的接口调用指令(即导航至目的地需要确定发起该导航请求时的当前位置、实时路况、实时交通信息等),而剩下的根据“X地Y街的Z”确定“Z1”和根据“走红绿灯最少的路线”确定“红绿灯最少”则无需一定要通过构建接口调用指令来确定答案,可依赖于常规的生成式大语言模型参数中蕴含的知识生成得到。
另外,对于“FindPOI(X地Y街的Z)-->Z1,位于X地Y街,Option(走红绿灯少的路线)-->红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”这种输出结果,可见其对于三个不同的接口调用指令,通过“-->”的方式将其构建为明确执行时序的服务接口调用序列,当然,执行时序也可以通过诸如指令嵌套的方式实现。即根据用户输入文本可确定其最终功能调用意图为导航,但为实现该最终功能调用意图,还需要对“X地Y街的Z”这一对充当目的地的兴趣点不准确描述进行准确确定,以及在准确确定目的地的情况下选择红绿灯最少的路线,因此上述三个接口调用指令的执行顺序应为:先执行FindPOI(X地Y街的Z)和Option(红绿灯最少)(由于两者之间不存在执行依赖,在仅支持串行的情况下,可以任选一个先执行、后执行另一个,上例选择先执行兴趣点确定指令;在支持并行的情况下,两指令可以并发执行),然后在得到这两个指令结果的情况下,再基于两个指令结果执行Navi(Z1,最快的路线)这个指令。
需要说明的是,上述与用户输入文本匹配的包含有接口调用指令的输出结果可由人工基于自身对用户输入文本的理解和对服务接口相关使用知识进行手动标注得到,也可以由非人工对象基于对隐含有上述两者之间对应关系的数据样本集中抽取得到,以实现高效率的构建“用户输入文本—包含有接口调用指令的输出结果”的样本对。
在某些理解方式下,若将用户输入文本理解为query、包含有接口调用指令的输出结果实际上为能够满足相应需求的由API和API参数构成的接口调用指令所构成的answer。
步骤202:利用第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;
在步骤201的基础上,本步骤旨在由上述执行主体将第一训练集作为微调训练集,对之前已经预训练好的第一生成式大语言模型进行有监督微调训练(Supervised Fine-Tuning,SFT),以进一步得到第二生成式大语言模型。
本步骤所采用的SFT技术,是指训练对象并非是未经过任何训练的初始模型,而是对经基础训练样本训练得到的通用生成式大语言模型,即经过基础训练样本训练得到的通用生成式大语言模型通常仅是根据文本输入和大模型参数中蕴含的知识,基于语言单元(token)的预测概率生成一个文本序列作为结果,并不会具有将其改写为包括目标API和API参数的包含有接口调用指令的输出结果的能力。借助该SFT技术得以避免从头开始训练模型所需要付出的庞大耗时,只需要构造包含少量(此处的少量是相对于基础训练样本的数量级)训练样本的第一训练集,即可通过对通用生成式大语言模型进行二次训练,使其具有将用户输入文本改写为包含目标API和API参数的包含有接口调用指令的输出结果的能力。
当然,可能在某些应用场景下,经基础训练样本训练得到的通用生成式大语言模型可能并不适合作为使用SFT技术的基础模型(例如通用生成式大语言模型所学习到的知识与新构造的训练样本中隐含的知识存在冲突),也可以基于新构造的训练样本对初始的生成式语言模型进行训练,以期使得训练得到的目标生成式大语言模型具有所期望拥有的能力。
步骤203:基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;
在步骤202的基础上,本步骤旨在由上述执行主体基于相同用户输入文本与不同候选输出之间的用户偏好排序和记录有输入文本与相应的接口调用指令之间对应关系的各预设模板,共同构建第二训练集。该预设模板可以具体表现为:“我要找[String]—为您找到该地点,位于X街X号,该商户详细信息如下:GetInfo(POIName)”、“导航去[String]—FindPOI(POIName),位于X街X号,去这里有N条路线,当前路况下,最快的路线如下:Navi(POIName)”,即该预设模板用于指示何种样式的文本片段对应何种包含接口调用指令的输出文本,其中的“String”用于指代相应部分可使用任意字符串填充。具体的,该预设模板可以抽取自用于构成第一训练集的各“用户输入文本—包含有接口调用指令的输出结果”样本对,也可以抽取自其它包含上述对应关系的数据集。
即首先对于每个用户输入文本,构建该用户输入文本分别与每个候选输出所形成的样本对,并根据每个样本对中该候选输出的用户偏好排序,对这些样本对进行排序;然后结合记录有输入文本与相应的接口调用指令之间对应关系的各预设模板(该预设模板集合中包含有多个该预设模板),共同构建该第二训练集,以期通过使用据此构建得到的第二训练集能够让模型学习到哪些结果更符合用户的实际需求。
需要说明的是,上述描述的用于构建第二训练集的训练样本可由人工基于自身主观理解进行手动标注、生成得到,也可以由非人工对象基于对隐含有上述两者之间对应关系的数据样本集中(例如体现用户检索操作中检索词和检索结果的检索日志)抽取得到,以实现相应样本对的高效构建。
当由检索日志作为该数据样本集时,该用户偏好排序可以具体表现为检索日志记录的对相同用户输入文本返回的备选输出列表中各备选输出在一段时间内的累计点击次数,即累计点击次数越多,就意味着该候选输出越符合用户的实际需求,该时间段的长度可以自行设置,例如一周、半个月或一整月。在该数据样本集由其它数据库充当时,该用户偏好排序还可以表现为其它类似的、能表现出用户偏好的参数,例如收藏量、评论量等等,此处不再一一列举。
步骤204:利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型。
在步骤203的基础上,本步骤旨在由上述执行主体利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型(Reward Model,RM)。此处所描述的奖励模型,是指通过学习第二训练集中每个训练样本下不同样本对之间的用户偏好排序,得以学习到如何对相同输入下不同备选输出赋予不同的奖励(一般以得分高低的方式进行返回),以使模型朝着获取更高奖励的方向进行学习,从而能够输出更符合用户实际需求的结果。
步骤205:将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
在步骤202和步骤204的基础上,本步骤旨在由上述执行主体将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式(Reinforcement Learning,RL)进行训练,得到目标生成式大语言模型。
基于RL方式训练得到目标生成式大语言模型的简要过程可以参考下述描述:
1)基于第二生成式大语言模型的参数初始化一个新的生成式大语言模型M;
2)基于新的prompt(提示词,一般为用户的自然语言输入),让M针对每个prompt生成回复,再把回复输入给奖励模型(RM);
3)RM会为每个回复计算出得分作为标量奖励,其得分高低表示回复质量的高低;
4)采用RL的方式,基于模型M获得的总奖励得分不断更新其策略(对应英文:policy),直到收敛,训练至此时的M即为满足要求的目标生成式大语言模型。
为便于理解本公开所描述和使用的“生成式大语言模型”,此处还对“生成式”这一前缀对应的生成式模型的工作原理进行简要介绍:
之所以被称为生成式模型,是因为此类模型的工作过程类似于“文字接龙”,即基于用户输入和模型的前序输出,不断预测下一个token(语言单元),进而最终生成出一个文本序列,可参见下例:
假定目标生成式大语言模型根据上述方案学习到了将用户输入文本输出为包含有接口调用指令的输出结果的能力,那么仍以“导航去X地Y街的Z,走红绿灯最少的路线”(为便于下述举例,使用“query”进行指代)为例,该目标生成式模型输出对应的包含有接口调用指令的输出结果的过程是按照下述步骤依次进行的:
query-->Z1;
query+Z1-->,;
query+Z1+,-->位;
query+Z1+,+位-->于;
query+Z1+,+位+于-->X;
query+Z1+,+位+于+X-->地;
query+Z1+,+位+于+X+地-->Y;
query+Z1+,+位+于+X+地+Y-->街;
query+Z1+,+位+于+X+地+Y+街-->,;
query+Z1+,+位+于+X+地+Y+街+,-->红;
query+Z1+,+位+于+X+地+Y+街+,+红-->绿;
query+Z1+,+位+于+X+地+Y+街+,+红+绿-->灯;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯-->最;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最-->少;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少-->的;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的-->路;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路-->线;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线-->如;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如-->下;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下-->Navi;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi-->(;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(-->Z1;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1-->,;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,-->红;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,+红-->绿;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,+红+绿-->灯;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,+红+绿+灯-->最;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,+红+绿+灯+最-->少;
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,+红+绿+灯+最+少-->);
query+Z1+,+位+于+X+地+Y+街+,+红+绿+灯+最+少+的+路+线+如+下+Navi+(+Z1+,+红+绿+灯+最+少+)-->End。
即最终可以获得:Z1,位于X地Y街,红绿灯最少的路线如下:Navi(Z1,红绿灯最少)的这样一条输出结果。
在中文情形下,一个token通常就是一个汉字;而在英文情形下,一个token则通常指一个sub-word(中文可直译为子词),而不是一个单词,其对应的子词粒度,是介于单词粒度和字符粒度中间的一种形态,子词在能够保留语言意义的同时,还能有效减少词表的大小(即词表中词的数量),也能有效解决词表外词(out-of-vocabulary words)的情况。以“loved”、“loving”和“loves”这三个英文单词为例,可具体得到下述4个sub-word:“lov”、“ed”、“ing”和“es”,即通过此种方式可以把词本身的意思和时态分开,得到粒度更小的子词。而在上例中,代表API名的“FindPOI、Option和Navi”将作为一个不可分割的整体作为一个token。
本公开实施例提供的生成式大语言模型训练方法,由于第一训练集是由(用户输入语音转换得到的)用户输入文本与表达相应功能使用意图的包含有接口调用指令的输出结果构建得到,使得通过第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,进而使得训练得到的第二生成式大语言模型具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,而在由相同用户输入文本与不同候选输出之间的用户偏好排序所构建的第二训练集对预训练好的第三生成式大语言模型进行有监督训练,进而使得训练得到的奖励模型拥有为生成式大语言模型针对用户输入文本所生成的不同候选进行质量评分的能力,进而使得在基于人类反馈的强化学习的训练下,所最终得到的目标生成式大语言模型不仅具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,还具有输出更符合用户需求的结果的能力。即通过上述训练方案使得经训练得到的目标生成式大语言模型具有了深度理解用户需求并自行构建相应接口调用指令进行查询得到返回的准确答案的能力,能够不单单依据自然语言输入和大模型参数中蕴含的知识生成自然语言输出,而是借助提供专业能力的应用程序接口调用相应的功能,以更切实的解决用户需求,且在奖励模型的作用下还将使得返回的结果更加符合用户的实际需求和预期。
在上述实施例的基础上,对于采用SFT技术进行的有监督微调训练过程中,对于该第一生成式大语言模型中未出现的与API相关的特殊符号,还需要进行语言单元(即token)的扩充,可将其称为新token,而对于新token的特征的初始化,则可以按照已有语言单元的特征的多元正态分布参数采样的方式进行。
具体的,由于插入的API和API格式相关特殊符号不存在于第一生成式大语言模型的词表,因此还需要对第一生成式大语言模型的词表进行扩充。针对词表扩充后新token对应的embedding(通常可译为词向量或词嵌入)的初始化问题,还可以采用参数采样初始化方法进行:即对于新增token对应的embedding,如果按随机初始化或用0初始化,通常会使增加模型对新token的预测难度。这是因为新token的初始化embedding与通用生成式大语言模型经过大量预训练而得到的已有token的embedding分布差异过大而导致的。为了减少这种差异,可按已有token的embedding的多元正态分布(也称多变量正态分布或多变量高斯分布)对每个新token的embedding进行采样。形式化的,对于每个新token对应的embedding—en+i,可按如下的方式进行采样:
Figure BDA0004127233790000171
其中,E∈Rn×d是由通用生成式大语言模型原词表中所有token的embedding[e1;…;en]所组成的矩阵。
请参考图3,图3为本公开实施例提供的一种构建第一训练集的方法的流程图,即针对图2所示的流程200中的步骤201提供了一种具体的实现方式,流程200中的其它步骤并不做调整,也将本实施例所提供的具体实现方式以替换步骤201的方式得到一个新的完整实施例。其中流程300包括以下步骤:
步骤301:获取人机对话序列,并确定人机对话序列中对用户输入文本做出成功响应的有效机器答复;
本步骤旨在由上述执行主体获取记录用户与机器进行对话情况的人机对话序列,并从中确定出对用户输入文本做出成功响应的有效机器答复。其中,该用户输入文本可由对用户原始传入的用户输入语音经转换得到,也可以直接得到。
步骤302:根据生成有效机器答复时所调用的功能,确定匹配的接口调用指令;
在步骤301的基础上,本步骤旨在由根据生成有效机器答复时所调用的功能,确定匹配的接口调用指令。由于机器尤其答复是机器对用户输入文本所表达出的功能使用意图作出了满足其预期的响应的答复,因此必然可以根据机器在根据用户输入文本生成有效机器答复时所调用的功能,来确定出匹配的接口调用指令。由此也可以看出,机器对话序列中的非有效机器答复将无法用于确定匹配的接口调用指令。
步骤303:将有效机器答复中可通过执行接口调用指令返回得到的部分或全部答复,替换为相应的接口调用指令,得到输出结果;
在步骤302的基础上,本步骤旨在由将有效机器答复中可通过执行接口调用指令返回得到的部分或全部答复,替换为相应的接口调用指令,得到输出结果。
对于上例中给出的“FindPOI(X地Y街的Z)-->Z1,位于X地Y街,Option(走红绿灯少的路线)-->红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”这种输出结果,就是将全部答复均替换为相应的接口调用指令;而对于上例中给出的“Z1,位于X地Y街,红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”这种输出结果,就是将部分答复替换为相应的接口调用指令。
步骤304:基于由用户输入文本与匹配的输出结果构成的样本对,构建第一训练集。
在步骤303的基础上,本步骤旨在由多个“用户输入文本—输出结果”的样本对,来构建该第一训练集。
请参考图4,图4为本公开实施例提供的一种基于由用户输入文本与匹配的输出结果构成的样本对构建第一训练集的方法的流程图,即针对图3所示的流程300中的步骤304提供了一种具体的实现方式,对流程300中的其它步骤并不做调整,也将本实施例所提供的具体实现方式以替换步骤304的方式得到一个新的完整实施例。其中流程400包括以下步骤:
步骤401:根据用户输入文本和匹配的输出结果生成新人机对话序列;
步骤402:将新人机对话序列中的首项用户输入文本和首项输出结果作为起始样本对;
步骤403:将新人机对话序列中位于非首项输出结果前的所有对话内容和非首项输出结果作为非起始样本对;
对于表现为如下的新人机对话序列:
用户A:“用户输入文本1”;
语音助手:“包含接口调用指令的输出结果1”;
用户A:“用户输入文本2”;
语音助手:“包含接口调用指令的输出结果2”;
用户A:“用户输入文本3”;
语音助手:“包含接口调用指令的输出结果3”。
则首个样本对由:“用户输入文本1”与“包含接口调用指令的输出结果1”构成;
则第二个样本对由“用户输入文本1+包含接口调用指令的输出结果1+用户输入文本2”与“包含接口调用指令的输出结果2”构成;
则第三个样本对由“用户输入文本1+包含接口调用指令的输出结果1+用户输入文本2+包含接口调用指令的输出结果2+用户输入文本3”与“包含接口调用指令的输出结果3”构成。
即通过按照上述方式构建样本对,使得据此训练出的模型可充分结合对话的上文来生成后续会话。
步骤404:基于包含起始样本对和非起始样本,构建第一训练集。
即对于上述示出的新人机对话序列,一共可提取出三个训练样本,并据此构建得到该第一训练集。
请参考图5,图5为本公开实施例提供的一种构建第二训练集的方法的流程图,即针对图2所示的流程200中的步骤203提供了一种具体的实现方式,流程200中的其它步骤并不做调整,也将本实施例所提供的具体实现方式以替换步骤203的方式得到一个新的完整实施例。其中流程500包括以下步骤:
步骤501:从检索日志中获取检索词;
步骤502:从检索日志中确认对相同检索词返回过的所有检索结果,并确定每个检索结果在一个时间窗口内的累计点击次数;
步骤503:将相同检索词分别与各检索结果生成多个样本对,并根据不同检索结果分别对应的累计点击次数的大小,确定相应的不同样本对之间的排序信息;
步骤504:基于按排序信息进行用户偏好排序的各样本对和记录有输入文本与相应的包含接口调用指令的输出文本之间对应关系的各预设模板,共同构建第二训练集。
为便于理解本实施例所提供方案,下述将通过另一示例进行展开描述:
假设有个query(即上述的用户输入文本)为“XX大”,把这个query一段时间内(例如30天)的不同结果点击次数聚合起来,假设得到以下表1呈现的结果:
表1累计点击次数统计表
结果编号 结果 累计点击次数
r1 XX大学 100
r2 XX大学东门 10
r3 XX大学西门 9
r4 XX大学教师楼 8
r5 XX大学图书馆 0
那么据上表内容所能够构建得到的成对的样本就可以是:
rel(q,r1)>rel(q,r2);
rel(q,r1)>rel(q,r3);
rel(q,r1)>rel(q,r4);
rel(q,r1)>rel(q,r5);
rel(q,r2)>rel(q,r3);
rel(q,r2)>rel(q,r4);
rel(q,r2)>rel(q,r5);
rel(q,r3)>rel(q,r4);
rel(q,r3)>rel(q,r5);
rel(q,r4)>rel(q,r5),rel是一个函数,用于表示两者之间的用户偏好。
在上述信息的基础上,将结合输入文本及匹配的包含有接口调用指令的输出文本构成的query-answer的模板,以及上述给出的pairwise(成对的)关系,自动构建出第二训练集,下述以模板—“我要找[String]—为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(POIName)”为例,可见该模板中的“String”对应用户输入的上述query(即“XX大”)、“POIName”即对应用户点击的结果的文本:
rel(prompt=我要找XX大,a1=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学))>rel(prompt=我要找XX大,a2=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学东门));
rel(prompt=我要找XX大,a1=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学))>rel(prompt=我要找XX大,a3=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学西门));
rel(prompt=我要找XX大,a1=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学))>rel(prompt=我要找XX大,a4=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大教师楼));
rel(prompt=我要找XX大,a1=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学))>rel(prompt=我要找XX大,a5=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学图书馆));
rel(prompt=我要找XX大,a2=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学东门))>rel(prompt=我要找XX大,a3=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学西门));
rel(prompt=我要找XX大,a2=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学东门))>rel(prompt=我要找XX大,a4=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学教师楼));
rel(prompt=我要找XX大,a2=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学东门))>rel(prompt=我要找XX大,a5=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大图书馆));
rel(prompt=我要找XX大,a3=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学西门))>rel(prompt=我要找XX大,a4=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学教师楼));
rel(prompt=我要找XX大,a3=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学西门))>rel(prompt=我要找XX大,a5=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学图书馆));
rel(prompt=我要找XX大,a4=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学教师楼))>rel(prompt=我要找XX大,a5=为您找到该地点,位于X街X号,该地址详细信息如下:GetInfo(XX大学图书馆))。
上述例子中的prompt是基于query和模板生成,ai是基于ri和模板生成(即当i为1时,a1基于r1和模板生成)。
而在采用模板:“导航去[String]—FindPOI(POIName),位于X街X号,去这里有N条路线,当前路况下,最快的路线如下:Navi(POIName)”时情况与上例类似,此处不再一一列举。
通过选用检索日志中记载的数据自动生成第二训练集,不仅节省了大量的人工标注成本,同时检索日志中的海量点击与跳过(未点击)数据,是完全真实用户需求的体现,完全真实地反应了用户对不同结果的偏好分布情况,从而使得所构建出的第二训练集更符合用户的实际需求。
上述各实施例从各个方面阐述了如何训练得到目标生成式大语言模型,为了尽可能的从实际使用场景突出训练出的目标生成式大语言模型所起到的效果,本公开还具体提供了一种使用训练好的目标生成式大语言模型来解决实际问题的方案,如图6所示的一种基于生成式大语言模型的人机语音交互方法包括如下步骤:
步骤601:获取用户以语音形式发出的用户输入语音;
本步骤旨在由基于生成式大语言模型的人机语音交互方法的执行主体(例如安装在图1所示的终端设备101、102、103上的语音助手应用)获取用户以语音形式发出的用户输入语音。
步骤602:将用户输入语音对应的用户输入文本作为输入数据输入预设的目标生成式大语言模型;
在步骤601的基础上,本步骤旨在由上述执行主体将用户输入语音对应的用户输入文本作为输入数据输入预设的目标生成式大语言模型,以调用该目标生成式大语言模型对该用户输入文本进行处理。
步骤603:接收目标生成式大语言模型返回的输出文本;
在步骤602的基础上,本步骤旨在由上述执行主体接收目标生成式大语言模型返回的输出文本,其中,该输出文本基于执行接口调用指令后得到的响应信息生成得到。即目标生成式大语言模型在接收到输入的用户输入文本之后开始生成文本序列,在不需要生成接口调用指令时将直接根据大模型参数中蕴含的知识来生成相应的回复文本,而在遇到需要调用相应服务接口的地方则自动生成接口调用指令并进行执行以获得返回的调用结果,并将基于已生成的回复文本和调用结果生成出的输出文本返回语音助手。即接口调用指令(API及其对应参数)的生成和执行都在目标生成式大语言模型生成输出文本的过程中自动完成。
以“Z1,位于X地Y街,红绿灯最少的路线如下:Navi(Z1,红绿灯最少)”为例,在执行其中的接口调用指令后,可得到诸如“Z1,位于X地Y街,红绿灯最少的路线为:1)先通过道路1……;2)再通过道路2……;3)到达Z1”的输出文本。即上例中的“Navi(Z1,红绿灯最少)”并不会真正存在于输出文本中,存在于输出文本中的内容应为调用该Navi(Z1,红绿灯最少)后得到的“1)先通过道路1……;2)再通过道路2……;3)到达Z1”。若其中包含多个接口调用指令,还需要考虑各接口调用指令的执行顺序。
需要说明的是,若还想在输出的文本信息的基础上包含其它格式(例如图像、包含链接的超文本等)信息,也可以对所支持的输出结果的格式集进行拓展,使得能够返回包含文本格式在内的多格式输出信息。
步骤604:将输出文本转换为语音形式的机器答复语音。
在步骤603的基础上,本步骤旨在由上述执行主体将输出文本转换为语音形式的机器答复语音,以便于通过语音助手向用户发起的用户输入语音做出语音回应。
具体的,作为本实施例的执行主体的、对用户输入语音返回机器答复语音的语音助手可以具体包括:来自地图应用的地图语音助手、来自移动应用程序的语音助手、来自智能终端设备(例如智能音箱、智能冰箱、智能可穿戴设备等)的家居语音助手,以全场景的满足用户的人机交互需求。
本实施例所提供的基于生成式大语言模型的人机语音交互方法,则具体针对由语音助手充当执行主体的场景下,将按上述训练方案训练得到的目标生成式大语言模型应用于人机语音交互场景,语音助手在将用户输入语音对应的用户输入文本输入目标生成式大语言模型后,借助目标生成式大语言模型所具有的能力生成相应的结果,并在遇到需要调用服务接口的地方则自动生成接口调用指令并进行执行以获得返回的调用结果,并将基于已生成的回复文本和调用结果生成出的输出文本返回语音助手,使得语音助手再将其转换为机器答复语音返回用户完成人机语音交互,提升了人机语音交互体验。
为了避免目标生成式大语言模型对不同表述的用户输入文本均输出相同格式的输出结果,还可以将生成的输出文本调整为表达相同含义的不同表述方式。
一种表述方式可以为:将生成的输出文本调整为表达相同含义的随机一种表述方式,即每次输出时随机在表述库中选择一种表述方式进行表述调整。其中,表述方式可以划分为:活泼型、普通型、简练型、全面型等;
另一种表述方式可以为:将生成的输出文本调整为表达相同含义的、与用户输入文本所具有的相同表述方式,即使得输出文本沿用与用户输入文本相同的表述方式,以提升用户对输出文本的感受。
为进一步加深对本公开所提供方案的理解,下述还将通过图7示出一种针对具体例子的人机语音交互流程示意图:
1)语音助手接收到用户输入语音,并通过语音转文本技术得到用户输入文本:“我的车今天限行么?”;
2)语音助手将“我的车今天限行么?”输入预先训练好的目标生成式语言模型;
3)目标生成式大语言模型先通过生成GetNum(UserID)的接口调用指令来根据当前用户的ID获取其车牌号,并获得车牌尾号的返回值:9;
4)目标生成式语言模型继续通过生成GetTR(City,Date,Number)的接口调用指令,来根据城市、日期、用户车牌尾号三个参数,返回限行信息,并获得“[(5,0),False]”的返回值,即代表当前位置(例如北京)今天的限行尾号为5和0,而用户车牌尾号为9,未落在限行要求中;
5)语音助手获取基于执行结果生成的输出文本:您的车尾号是9,北京今日限行尾号是5和0,您的车不限行;
6)语音助手将其转换为语音发出相应的语音输出:“您的车尾号是9,北京今日限行尾号是5和0,您的车不限行”。
进一步参考图8和图9,作为对上述各图所示方法的实现,本公开分别提供了一种生成式大语言模型训练装置实施例和一种基于生成式大语言模型的人机语音交互装置的实施例,生成式大语言模型训练装置实施例与图2所示的生成式大语言模型训练方法实施例相对应,基于生成式大语言模型的人机语音交互装置实施例与图6所示的基于生成式大语言模型的人机语音交互方法实施例相对应。上述装置具体可以应用于各种电子设备中。
如图8所示,本实施例的生成式大语言模型训练装置800可以包括:第一训练集构建单元801、有监督微调训练单元802、第二训练集构建单元803、奖励模型训练单元804、强化学习训练单元805。其中,第一训练集构建单元801,被配置成基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集;其中,用户输入文本由用户输入语音转换得到,接口调用指令所调用的服务接口对应于用户输入文本表达出的功能使用意图;有监督微调训练单元802,被配置成利用第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;第二训练集构建单元803,被配置成基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;奖励模型训练单元804,被配置成利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型;强化学习训练单元805,被配置成将第二生成式大语言模型,基于奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
在本实施例中,生成式大语言模型训练装置800中:第一训练集构建单元801、有监督微调训练单元802、第二训练集构建单元803、奖励模型训练单元804、强化学习训练单元805的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-205的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,第一训练集构建单元801可以包括:
有效机器答复确定子单元,被配置成获取人机对话序列,并确定人机对话序列中对用户输入文本做出成功响应的有效机器答复;其中,用户输入文本由用户输入语音转换得到;
接口调用指令确定子单元,被配置成根据生成有效机器答复时所调用的功能,确定匹配的接口调用指令;
输出结果生成子单元,被配置成将有效机器答复中可通过执行接口调用指令返回得到的部分或全部答复,替换为相应的接口调用指令,得到输出结果;
第一训练集构建子单元,被配置成基于由用户输入文本与匹配的输出结果构成的样本对,构建第一训练集。
在本实施例的一些可选的实现方式中,第一训练集构建子单元可以被进一步配置成:
根据用户输入文本和匹配的输出结果生成新人机对话序列;
将新人机对话序列中的首项用户输入文本和首项输出结果作为起始样本对;
将新人机对话序列中位于非首项输出结果前的所有对话内容和非首项输出结果作为非起始样本对;
基于包含起始样本对和非起始样本,构建第一训练集。
在本实施例的一些可选的实现方式中,在有监督微调的训练方式下,对第一生成式大语言模型中未出现的代表服务接口的新语言单元,按照已有语言单元的特征的多元正态分布对新语言单元的特征进行参数采样的初始化。
在本实施例的一些可选的实现方式中,第二训练集构建单元803可以被进一步配置成:
从检索日志中获取检索词;
从检索日志中确认对相同检索词返回过的所有检索结果,并确定每个检索结果在一个时间窗口内的累计点击次数;
将相同检索词分别与各检索结果生成多个样本对,并根据不同检索结果分别对应的累计点击次数的大小,确定相应的不同样本对之间的排序信息;
基于按排序信息进行用户偏好排序的各样本对和记录有输入文本与相应的接口调用指令之间对应关系的各预设模板,共同构建第二训练集。
本实施例作为对应于上述方法实施例的装置实施例存在,本实施例提供的生成式大语言模型训练装置,由于第一训练集是由(用户输入语音转换得到的)用户输入文本与表达相应功能使用意图的包含有接口调用指令的输出结果构建得到,使得通过第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,进而使得训练得到的第二生成式大语言模型具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,而在由相同用户输入文本与不同候选输出之间的用户偏好排序所构建的第二训练集对预训练好的第三生成式大语言模型进行有监督训练,进而使得训练得到的奖励模型拥有为生成式大语言模型针对用户输入文本所生成的不同候选进行质量评分的能力,进而使得在基于人类反馈的强化学习的训练下,所最终得到的目标生成式大语言模型不仅具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,还具有输出更符合用户需求的结果的能力。即通过上述训练方案使得经训练得到的目标生成式大语言模型具有了深度理解用户需求并自行构建相应接口调用指令进行查询得到返回的准确答案的能力,能够不单单依据自然语言输入和大模型参数中蕴含的知识生成自然语言输出,而是借助提供专业能力的应用程序接口调用相应的功能,以更切实的解决用户需求,且在奖励模型的作用下还将使得返回的结果更加符合用户的实际需求和预期。
如图9所示,本实施例的基于生成式大语言模型的人机语音交互装置900可以包括:用户输入语音获取单元901、模型调用单元902、输出文本接收单元903、机器答复语音生成单元904。其中,用户输入语音获取单元901,被配置成获取用户以语音形式发出的用户输入语音;模型调用单元902,被配置成将用户输入语音对应的用户输入文本作为输入数据输入预设的目标生成式大语言模型;输出文本接收单元903,被配置成接收目标生成式大语言模型返回的输出文本;其中,输出文本基于执行接口调用指令后得到的响应信息生成得到;机器答复语音生成单元904,被配置成将输出文本转换为语音形式的机器答复语音。
在本实施例中,基于生成式大语言模型的人机语音交互装置900中:用户输入语音获取单元901、模型调用单元902、输出文本接收单元903、机器答复语音生成单元904的具体处理及其所带来的技术效果可分别对应图6所示方法实施例中的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,基于生成式大语言模型的人机语音交互装置900还可以包括:
表述调整单元,被配置成将输出文本调整为表达相同含义的不同表述方式。
在本实施例的一些可选的实现方式中,表述调整单元可以被进一步配置成:
将输出文本调整为表达相同含义的随机一种表述方式。
在本实施例的一些可选的实现方式中,表述调整单元可以被进一步配置成:
将输出文本调整为表达相同含义的、与用户输入文本所具有的相同表述方式。
在本实施例的一些可选的实现方式中,对用户输入语音返回机器答复语音的语音助手包括:来自地图应用的地图语音助手、来自移动应用程序的语音助手、来自智能终端设备的家居语音助手。
本实施例作为对应于上述方法实施例的装置实施例存在,本实施例提供的基于生成式大语言模型的人机语音交互方案,则是具体针对由语音助手充当执行主体的场景下,将按上述训练方案训练得到的目标生成式大语言模型应用于人机语音交互场景,语音助手在将用户输入语音对应的用户输入文本输入目标生成式大语言模型后,借助目标生成式大语言模型所具有的能力生成相应的结果,并在遇到需要调用服务接口的地方则自动调用该服务接口并根据返回值填充结果,以将最终生成的输出文本返回语音助手,使得语音助手再将其转换为机器答复语音返回用户完成人机语音交互,提升了人机语音交互体验。
根据本公开的实施例,本公开还提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现上述任一实施例描述的生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法。
根据本公开的实施例,本公开还提供了一种可读存储介质,该可读存储介质存储有计算机指令,该计算机指令用于使计算机执行时能够实现上述任一实施例描述的生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法。
本公开实施例提供了一种计算机程序产品,该计算机程序在被处理器执行时能够实现上述任一实施例描述的生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法。
图10示出了可以用来实施本公开的实施例的示例电子设备1000的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图10所示,设备1000包括计算单元1001,其可以根据存储在只读存储器(ROM)1002中的计算机程序或者从存储单元1008加载到随机访问存储器(RAM)1003中的计算机程序,来执行各种适当的动作和处理。在RAM 1003中,还可存储设备1000操作所需的各种程序和数据。计算单元1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
设备1000中的多个部件连接至I/O接口1005,包括:输入单元1006,例如键盘、鼠标等;输出单元1007,例如各种类型的显示器、扬声器等;存储单元1008,例如磁盘、光盘等;以及通信单元1009,例如网卡、调制解调器、无线通信收发机等。通信单元1009允许设备1000通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1001可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1001的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1001执行上文所描述的各个方法和处理,例如生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法。例如,在一些实施例中,生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1008。在一些实施例中,计算机程序的部分或者全部可以经由ROM 1002和/或通信单元1009而被载入和/或安装到设备1000上。当计算机程序加载到RAM 1003并由计算单元1001执行时,可以执行上文描述的生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法的一个或多个步骤。备选地,在其他实施例中,计算单元1001可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行生成式大语言模型训练方法和/或基于生成式大语言模型的人机语音交互方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPS,Virtual Private Server)服务中存在的管理难度大,业务扩展性弱的缺陷。
本公开实施例提供的生成式大语言模型训练方案,由于第一训练集是由(用户输入语音转换得到的)用户输入文本与表达相应功能使用意图的包含有接口调用指令的输出结果构建得到,使得通过第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,进而使得训练得到的第二生成式大语言模型具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,而在由相同用户输入文本与不同候选输出之间的用户偏好排序所构建的第二训练集对预训练好的第三生成式大语言模型进行有监督训练,进而使得训练得到的奖励模型拥有为生成式大语言模型针对用户输入文本所生成的不同候选进行质量评分的能力,进而使得在基于人类反馈的强化学习的训练下,所最终得到的目标生成式大语言模型不仅具有将用户输入文本改写为匹配的包含有接口调用指令的输出结果的能力,还具有输出更符合用户需求的结果的能力。即通过上述训练方案使得经训练得到的目标生成式大语言模型具有了深度理解用户需求并自行构建相应接口调用指令进行查询得到返回的准确答案的能力,能够不单单依据自然语言输入和大模型参数中蕴含的知识生成自然语言输出,而是借助提供专业能力的应用程序接口调用相应的功能,以更切实的解决用户需求,且在奖励模型的作用下还将使得返回的结果更加符合用户的实际需求和预期。
在上述实施例提供的生成式大语言模型训练方案的有益效果基础上,本公开实施例提供的基于生成式大语言模型的人机语音交互方案,则是具体针对由语音助手充当执行主体的场景下,将按上述训练方案训练得到的目标生成式大语言模型应用于人机语音交互场景,使语音助手在将用户输入语音对应的用户输入文本输入目标生成式大语言模型后,借助目标生成式大语言模型所具有的能力生成相应的结果,并在遇到需要调用服务接口的地方则自动生成接口调用指令并进行执行以获得返回的调用结果,并将基于已生成的回复文本和调用结果生成出的输出文本返回语音助手,使得语音助手再将其转换为机器答复语音返回用户完成人机语音交互,提升了人机语音交互体验。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (23)

1.一种生成式大语言模型训练方法,包括:
基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集,所述用户输入文本由用户输入语音转换得到,所述接口调用指令所调用的服务接口对应于所述用户输入文本表达出的功能使用意图;
利用所述第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;
基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;
利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型;
将所述第二生成式大语言模型,基于所述奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
2.根据权利要求1所述的方法,其中,所述基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集,包括:
获取人机对话序列,并确定所述人机对话序列中对用户输入文本做出成功响应的有效机器答复;其中,所述用户输入文本由用户输入语音转换得到;
根据生成所述有效机器答复时所调用的功能,确定匹配的接口调用指令;
将所述有效机器答复中可通过执行所述接口调用指令返回得到的部分或全部答复,替换为相应的接口调用指令,得到所述输出结果;
基于由所述用户输入文本与匹配的输出结果构成的样本对,构建所述第一训练集。
3.根据权利要求2所述的方法,其中,所述基于由所述用户输入文本与匹配的输出结果构成的样本对,构建所述第一训练集,包括:
根据所述用户输入文本和匹配的输出结果生成新人机对话序列;
将所述新人机对话序列中的首项用户输入文本和首项输出结果作为起始样本对;
将所述新人机对话序列中位于非首项输出结果前的所有对话内容和所述非首项输出结果作为非起始样本对;
基于包含所述起始样本对和所述非起始样本,构建所述第一训练集。
4.根据权利要求1所述的方法,其中,在有监督微调的训练方式下,对所述第一生成式大语言模型中未出现的代表服务接口的新语言单元,按照已有语言单元的特征的多元正态分布对所述新语言单元的特征进行参数采样的初始化。
5.根据权利要求1-4任一项所述的方法,其中,所述基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集,包括:
从检索日志中获取检索词;
从检索日志中确认对相同所述检索词返回过的所有检索结果,并确定每个所述检索结果在一个时间窗口内的累计点击次数;
将相同检索词分别与各检索结果生成多个样本对,并根据不同检索结果分别对应的累计点击次数的大小,确定相应的不同样本对之间的排序信息;
基于按所述排序信息进行用户偏好排序的各样本对和记录有输入文本与相应的包含接口调用指令的输出文本之间对应关系的各预设模板,构建第二训练集;其中,所述预设模板集合由各所述预设模板构成。
6.一种基于生成式大语言模型的人机语音交互方法,包括:
获取用户以语音形式发出的用户输入语音;
将所述用户输入语音对应的用户输入文本作为输入数据输入目标生成式大语言模型;其中,所述目标生成式大语言模型基于权利要求1-5任一项所述的生成式大语言模型训练方法得到;
接收所述目标生成式大语言模型返回的输出文本;其中,所述输出文本基于执行接口调用指令后得到的响应信息生成得到;
将所述输出文本转换为语音形式的机器答复语音。
7.根据权利要求6所述的方法,还包括:
将所述输出文本调整为表达相同含义的不同表述方式。
8.根据权利要求7所述的方法,其中,所述将所述输出文本调整为表达相同含义的不同表述方式,包括:
将所述输出文本调整为表达相同含义的随机一种表述方式。
9.根据权利要求7所述的方法,其中,所述将所述输出文本调整为表达相同含义的不同表述方式,包括:
将所述输出文本调整为表达相同含义的、与所述用户输入文本所具有的相同表述方式。
10.根据权利要求6-9任一项所述的方法,其中,对所述用户输入语音返回所述机器答复语音的语音助手包括:来自地图应用的地图语音助手、来自导航应用的导航语音助手、来自智能终端设备的家居语音助手。
11.一种生成式大语言模型训练装置,包括:
第一训练集构建单元,被配置成基于用户输入文本与匹配的包含有接口调用指令的输出结果,构建第一训练集,所述用户输入文本由用户输入语音转换得到,所述接口调用指令所调用的服务接口对应于所述用户输入文本表达出的功能使用意图;
有监督微调训练单元,被配置成利用所述第一训练集对预训练好的第一生成式大语言模型进行有监督微调训练,得到第二生成式大语言模型;
第二训练集构建单元,被配置成基于相同用户输入文本与不同候选输出之间的用户偏好排序和预设模板集合,构建第二训练集;
奖励模型训练单元,被配置成利用第二训练集对预训练好的第三生成式大语言模型进行有监督训练,得到奖励模型;
强化学习训练单元,被配置成将所述第二生成式大语言模型,基于所述奖励模型返回的得分,以强化学习方式进行训练,得到目标生成式大语言模型。
12.根据权利要求11所述的装置,其中,所述第一训练集构建单元包括:
有效机器答复确定子单元,被配置成获取人机对话序列,并确定所述人机对话序列中对用户输入文本做出成功响应的有效机器答复;其中,所述用户输入文本由用户输入语音转换得到;
接口调用指令确定子单元,被配置成根据生成所述有效机器答复时所调用的功能,确定匹配的接口调用指令;
输出结果生成子单元,被配置成将所述有效机器答复中可通过执行所述接口调用指令返回得到的部分或全部答复,替换为相应的接口调用指令,得到所述输出结果;
第一训练集构建子单元,被配置成基于由所述用户输入文本与匹配的输出结果构成的样本对,构建所述第一训练集。
13.根据权利要求12所述的装置,其中,所述第一训练集构建子单元被进一步配置成:
根据所述用户输入文本和匹配的输出结果生成新人机对话序列;
将所述新人机对话序列中的首项用户输入文本和首项输出结果作为起始样本对;
将所述新人机对话序列中位于非首项输出结果前的所有对话内容和所述非首项输出结果作为非起始样本对;
基于包含所述起始样本对和所述非起始样本,构建所述第一训练集。
14.根据权利要求11所述的装置,其中,在有监督微调的训练方式下,对所述第一生成式大语言模型中未出现的代表服务接口的新语言单元,按照已有语言单元的特征的多元正态分布对所述新语言单元的特征进行参数采样的初始化。
15.根据权利要求11-14任一项所述的装置,其中,所述第二训练集构建单元被进一步配置成:
从检索日志中获取检索词;
从检索日志中确认对相同所述检索词返回过的所有检索结果,并确定每个所述检索结果在一个时间窗口内的累计点击次数;
将相同检索词分别与各检索结果生成多个样本对,并根据不同检索结果分别对应的累计点击次数的大小,确定相应的不同样本对之间的排序信息;
基于按所述排序信息进行用户偏好排序的各样本对和记录有输入文本与相应的包含接口调用指令的输出文本之间对应关系的各预设模板,构建第二训练集;其中,所述预设模板集合由各所述预设模板构成。
16.一种基于生成式大语言模型的人机语音交互装置,包括:
用户输入语音获取单元,被配置成获取用户以语音形式发出的用户输入语音;
模型调用单元,被配置成将所述用户输入语音对应的用户输入文本作为输入数据输入预设的目标生成式大语言模型;其中,所述目标生成式大语言模型基于权利要求11-15任一项所述的生成式大语言模型训练装置得到;
输出文本接收单元,被配置成接收所述目标生成式大语言模型返回的输出文本;其中,所述输出文本基于执行接口调用指令后得到的响应信息生成得到;
机器答复语音生成单元,被配置成将所述输出文本转换为语音形式的机器答复语音。
17.根据权利要求16所述的装置,还包括:
表述调整单元,被配置成将所述输出文本调整为表达相同含义的不同表述方式。
18.根据权利要求17所述的装置,其中,所述表述调整单元被进一步配置成:
将所述输出文本调整为表达相同含义的随机一种表述方式。
19.根据权利要求17所述的方法,其中,所述表述调整单元被进一步配置成:
将所述输出文本调整为表达相同含义的、与所述用户输入文本所具有的相同表述方式。
20.根据权利要求16-19任一项所述的装置,其中,对所述用户输入语音返回所述机器答复语音的语音助手包括:来自地图应用的地图语音助手、来自导航应用的导航语音助手、来自智能终端设备的家居语音助手。
21.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的生成式大语言模型训练方法和/或权利要求6-10任一项所述的基于生成式大语言模型的人机语音交互方法。
22.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的生成式大语言模型训练方法和/或权利要求6-10任一项所述的基于生成式大语言模型的人机语音交互方法。
23.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1-5中任一项所述的生成式大语言模型训练方法的步骤和/或权利要求6-10任一项所述的基于生成式大语言模型的人机语音交互方法的步骤。
CN202310233936.8A 2023-03-03 2023-03-03 生成式大语言模型训练方法、基于模型的人机语音交互方法 Pending CN116127046A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310233936.8A CN116127046A (zh) 2023-03-03 2023-03-03 生成式大语言模型训练方法、基于模型的人机语音交互方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310233936.8A CN116127046A (zh) 2023-03-03 2023-03-03 生成式大语言模型训练方法、基于模型的人机语音交互方法

Publications (1)

Publication Number Publication Date
CN116127046A true CN116127046A (zh) 2023-05-16

Family

ID=86306461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310233936.8A Pending CN116127046A (zh) 2023-03-03 2023-03-03 生成式大语言模型训练方法、基于模型的人机语音交互方法

Country Status (1)

Country Link
CN (1) CN116127046A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116402164A (zh) * 2023-06-06 2023-07-07 之江实验室 基于预训练语言模型的机器人任务生成方法、装置及介质
CN116451678A (zh) * 2023-06-15 2023-07-18 阿里巴巴(中国)有限公司 数据关系识别及数据表整合方法
CN116603249A (zh) * 2023-07-19 2023-08-18 深圳须弥云图空间科技有限公司 应用于角色扮演推理类游戏的大语言模型的训练方法
CN116843149A (zh) * 2023-07-11 2023-10-03 深圳市深水水务咨询有限公司 一种基于生成式学习的水库防洪调度方法
CN117370493A (zh) * 2023-09-22 2024-01-09 中国司法大数据研究院有限公司 一种基于大语言模型的系统智能交互方法与装置
CN117556232A (zh) * 2023-11-30 2024-02-13 广州方舟信息科技有限公司 评分模型训练方法、药品问答方法及相关装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116402164A (zh) * 2023-06-06 2023-07-07 之江实验室 基于预训练语言模型的机器人任务生成方法、装置及介质
CN116402164B (zh) * 2023-06-06 2023-09-05 之江实验室 基于预训练语言模型的机器人任务生成方法、装置及介质
CN116451678A (zh) * 2023-06-15 2023-07-18 阿里巴巴(中国)有限公司 数据关系识别及数据表整合方法
CN116451678B (zh) * 2023-06-15 2023-11-14 阿里巴巴(中国)有限公司 数据关系识别及数据表整合方法
CN116843149A (zh) * 2023-07-11 2023-10-03 深圳市深水水务咨询有限公司 一种基于生成式学习的水库防洪调度方法
CN116603249A (zh) * 2023-07-19 2023-08-18 深圳须弥云图空间科技有限公司 应用于角色扮演推理类游戏的大语言模型的训练方法
CN116603249B (zh) * 2023-07-19 2023-10-03 深圳须弥云图空间科技有限公司 应用于角色扮演推理类游戏的大语言模型的训练方法
CN117370493A (zh) * 2023-09-22 2024-01-09 中国司法大数据研究院有限公司 一种基于大语言模型的系统智能交互方法与装置
CN117556232A (zh) * 2023-11-30 2024-02-13 广州方舟信息科技有限公司 评分模型训练方法、药品问答方法及相关装置

Similar Documents

Publication Publication Date Title
WO2021232725A1 (zh) 基于语音交互的信息核实方法、装置、设备和计算机存储介质
CN116127046A (zh) 生成式大语言模型训练方法、基于模型的人机语音交互方法
Kreyssig et al. Neural user simulation for corpus-based policy optimisation for spoken dialogue systems
CN113962315B (zh) 模型预训练方法、装置、设备、存储介质以及程序产品
CN116127045A (zh) 生成式大语言模型训练方法、基于模型的人机语音交互方法
US10540585B2 (en) Training sequence generation neural networks using quality scores
CN116127020A (zh) 生成式大语言模型训练方法以及基于模型的搜索方法
RU2708941C1 (ru) Способ и устройство распознавания сегментированных предложений для человеко-машинной интеллектуальной вопросно-ответной системы
US10140977B1 (en) Generating additional training data for a natural language understanding engine
CN116343766A (zh) 生成式大模型训练方法、基于模型的人机语音交互方法
CN111090727B (zh) 语言转换处理方法、装置及方言语音交互系统
CN116226334A (zh) 生成式大语言模型训练方法以及基于模型的搜索方法
CN116244416A (zh) 生成式大语言模型训练方法、基于模型的人机语音交互方法
US20220310072A1 (en) Two-pass end to end speech recognition
US10326863B2 (en) Speed and accuracy of computers when resolving client queries by using graph database model
CN111191450A (zh) 语料清洗方法、语料录入设备及计算机可读存储介质
CN111951782A (zh) 语音问答方法及装置、计算机可读存储介质和电子设备
CN115309877A (zh) 对话生成方法、对话模型训练方法及装置
CN113836925A (zh) 预训练语言模型的训练方法、装置、电子设备及存储介质
CN117216212A (zh) 对话处理方法、对话模型训练方法、装置、设备及介质
CN113326367B (zh) 基于端到端文本生成的任务型对话方法和系统
CN112349294A (zh) 语音处理方法及装置、计算机可读介质、电子设备
EP4254256A1 (en) Spoken language processing method and apparatus, electronic device, and storage medium
EP4322066A1 (en) Method and apparatus for generating training data
CN115292467A (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