文本生成系统及方法与流程

文档序号:38370232发布日期:2024-06-19 12:24阅读:9来源:国知局
文本生成系统及方法与流程

本公开涉及数据处理领域,尤其涉及一种文本生成系统及方法。


背景技术:

1、基于机器翻译网络的自回归语言模型(transformer based autoregressivelanguage model),也称为大语言模型,是文本生成领域经常使用的模型之一。大语言模型通常部署于专用计算设备(如图形处理器(graphics processing unit,gpu))上,通过接收用户输入的一段文本,然后在大语言模型内部,根据文本内容预测下一个可能的单词并返回给用户,直到预测并返回若干个单词后停止。

2、大语言模型内部对单词的预测可分为两个不同的阶段:语言理解阶段和结果生成阶段。在语言理解阶段,大语言模型通过计算“理解”用户输入的文本含义,表现为计算出大语言模型内部的状态张量(kv-cache)以及预测的第一个单词,此阶段的特点是计算非常密集。在结果生成阶段,大语言模型依据语言理解阶段计算得到的状态张量作为参数,以前次预测的单词作为输入预测下一个单词,从而预测到若干个单词,此阶段的特点是计算比较稀疏。

3、相关技术的大语言模型的语言理解阶段和结果生成阶段是基于相同的计算设备实现的,也就是说,两个阶段可使用的计算能力是相同的。如果将与语言理解阶段匹配的较大计算能力提供给两个阶段,会导致结果生成阶段出现计算能力浪费;如果将与结果生成阶段匹配的较小计算能力提供给两个阶段,会导致语言理解阶段耗时过长。因此,如何在语言理解阶段的耗时较少的前提下,使得结果生成阶段的计算能力浪费也降低,提升文本生成性能,成为本领域的研究热点。


技术实现思路

1、有鉴于此,本公开提出了一种文本生成系统及方法,本公开实施例的文本生成系统使用第一语言理解模块完成大语言模型在语言理解阶段的功能,使用第一结果生成模块完成大语言模型在结果生成阶段的功能,两个模块独立,并且第一结果生成模块的计算能力小于第一语言理解模块,在语言理解阶段的耗时较少的前提下,使得结果生成阶段的计算能力浪费也降低,提升了文本生成性能。

2、根据本公开的一方面,提供了一种文本生成系统,所述系统包括第一结果生成模块、第一语言理解模块,所述第一结果生成模块的计算能力小于所述第一语言理解模块,所述第一结果生成模块用于,响应于接收到第一任务以及所述第一语言理解模块的地址,根据所述第一语言理解模块的地址,将所述第一任务传输至所述第一语言理解模块;所述第一语言理解模块用于,解析所述第一任务生成第1个词元和m个张量,并返回给所述第一结果生成模块;所述第一结果生成模块还用于,响应于接收到所述第一语言理解模块返回的第1个词元和m个张量,根据第1个词元和m个张量生成第2个词元至第n个词元,m和n是正整数,n大于2,第1个词元至第n个词元用于生成与所述第一任务对应的文本。

3、在一种可能的实现方式中,所述系统还包括第一接口调度模块,所述第一接口调度模块用于:从用户可见的接口接收第一请求,根据所述第一请求生成所述第一任务并存储至待分配任务队列;对所述待分配任务队列中的任务进行分配,其中,响应于所述第一任务被分配给所述第一结果生成模块和所述第一语言理解模块,将所述第一任务以及所述第一语言理解模块的地址传输至所述第一结果生成模块。

4、在一种可能的实现方式中,所述第一结果生成模块还用于将第1个词元至第n个词元输出至所述第一接口调度模块;所述第一接口调度模块还用于根据接收到的词元生成与所述第一任务对应的文本并输出至用户可见的接口。

5、在一种可能的实现方式中,所述第一结果生成模块是所述文本生成系统包括的多个结果生成模块中的一个,所述第一语言理解模块是所述文本生成系统包括的多个语言理解模块中的一个,所述结果生成模块的计算能力小于所述语言理解模块,所述第一接口调度模块具体用于:响应于a个结果生成模块和b个语言理解模块空闲,选取a个结果生成模块和b个语言理解模块处理所述待分配任务队列中的y个任务,其中y小于或等于a个结果生成模块可同时处理的任务数量之和、且小于或等于b个语言理解模块可同时处理的任务数量之和,a、b、y是正整数。

6、在一种可能的实现方式中,每个结果生成模块、每个语言理解模块均包括多个计算设备,不同计算设备的型号相同或不同;任意两个结果生成模块可同时处理的任务数量相同或不同,任意两个语言理解模块处理相同数量的任务所需时间之差小于第一阈值。

7、在一种可能的实现方式中,所述第一结果生成模块还用于,响应于接收到所述第一语言理解模块的地址,从自身的内存或显存上为所述第一语言理解模块分配对应的第一存储空间,将所述第一结果生成模块的地址和所述第一存储空间的地址输出至所述第一语言理解模块;所述第一语言理解模块具体用于,根据所述第一结果生成模块的地址和所述第一存储空间的地址将所述m个张量传输至所述第一存储空间。

8、在一种可能的实现方式中,所述第一结果生成模块生成词元后实时传输至所述第一接口调度模块,所述第一接口调度模块具体用于,响应于接收的每一个词元,生成一次对应的文本并输出至用户可见的接口。

9、在一种可能的实现方式中,所述第一结果生成模块具体用于,根据第i个词元和m个张量生成第i+1个词元,1≤i<n,i是整数。

10、在一种可能的实现方式中,所述第一接口调度模块具体用于,对所述第一请求进行标签化处理生成所述第一任务,所述第一任务包括w个词元,所述第1个词元至所述第n个词元与所述w个词元相关联,w是整数。

11、根据本公开的另一方面,提供了一种文本生成方法,所述方法应用于文本生成系统,所述系统包括第一结果生成模块、第一语言理解模块,所述第一结果生成模块的计算能力小于所述第一语言理解模块,所述方法包括:所述第一结果生成模块响应于接收到第一任务以及所述第一语言理解模块的地址,根据所述第一语言理解模块的地址,将所述第一任务传输至所述第一语言理解模块;所述第一语言理解模块解析所述第一任务生成第1个词元和m个张量,并返回给所述第一结果生成模块;所述第一结果生成模块响应于接收到所述第一语言理解模块返回的第1个词元和m个张量,根据第1个词元和m个张量生成第2个词元至第n个词元,m和n是正整数,n大于2,第1个词元至第n个词元用于生成与所述第一任务对应的文本。

12、在一种可能的实现方式中,所述系统还包括第一接口调度模块,所述方法还包括:所述第一接口调度模块从用户可见的接口接收第一请求,根据所述第一请求生成所述第一任务并存储至待分配任务队列;所述第一接口调度模块对所述待分配任务队列中的任务进行分配,其中,响应于所述第一任务被分配给所述第一结果生成模块和所述第一语言理解模块,将所述第一任务以及所述第一语言理解模块的地址传输至所述第一结果生成模块。

13、在一种可能的实现方式中,所述方法还包括:所述第一结果生成模块将第1个词元至第n个词元输出至所述第一接口调度模块;所述第一接口调度模块根据接收到的词元生成与所述第一任务对应的文本并输出至用户可见的接口。

14、在一种可能的实现方式中,所述第一结果生成模块是所述文本生成系统包括的多个结果生成模块中的一个,所述第一语言理解模块是所述文本生成系统包括的多个语言理解模块中的一个,所述结果生成模块的计算能力小于所述语言理解模块,所述第一接口调度模块对所述待分配任务队列中的任务进行分配,包括:a个结果生成模块和b个语言理解模块空闲时,所述第一接口调度模块选取a个结果生成模块和b个语言理解模块处理所述待分配任务队列中的y个任务,其中y小于或等于a个结果生成模块可同时处理的任务数量之和、且小于或等于b个语言理解模块可同时处理的任务数量之和,a、b、y是正整数。

15、在一种可能的实现方式中,每个结果生成模块、每个语言理解模块均包括多个计算设备,不同计算设备的型号相同或不同;任意两个结果生成模块可同时处理的任务数量相同或不同,任意两个语言理解模块处理相同数量的任务所需时间之差小于第一阈值。

16、在一种可能的实现方式中,所述方法还包括:所述第一结果生成模块响应于接收到所述第一语言理解模块的地址,从自身的内存或显存上为所述第一语言理解模块分配对应的第一存储空间,将所述第一结果生成模块的地址和所述第一存储空间的地址输出至所述第一语言理解模块;所述第一语言理解模块解析所述第一任务生成第1个词元和m个张量,并返回给所述第一结果生成模块,包括:所述第一语言理解模块根据所述第一结果生成模块的地址和所述第一存储空间的地址将所述m个张量传输至所述第一存储空间。

17、在一种可能的实现方式中,所述第一结果生成模块生成词元后实时传输至所述第一接口调度模块,所述第一接口调度模块根据接收到的词元生成与所述第一任务对应的文本并输出至用户可见的接口,包括:所述第一接口调度模块响应于接收的每一个词元,生成一次对应的文本并输出至用户可见的接口。

18、在一种可能的实现方式中,所述根据第1个词元和m个张量生成第2个词元至第n个词元,包括:根据第i个词元和m个张量生成第i+1个词元,1≤i<n,i是整数。

19、在一种可能的实现方式中,所述根据所述第一请求生成第一任务并存储至待分配任务队列,包括:对所述第一请求进行标签化处理生成所述第一任务,所述第一任务包括w个词元,所述第1个词元至所述第n个词元与所述w个词元相关联,w是整数。

20、根据本公开的另一方面,提供了一种电子设备,包括以上所述的文本生成系统。

21、根据本公开实施例的文本生成系统,设置第一结果生成模块、第一语言理解模块,第一结果生成模块的计算能力小于第一语言理解模块,因此第一结果生成模块和第一语言理解模块是独立的模块。第一结果生成模块响应于接收到第一任务以及所述第一语言理解模块的地址,根据第一语言理解模块的地址,将第一任务传输至第一语言理解模块,使得第一语言理解模块能够确定第一任务对应的文本生成工作需由自身和第一结果生成模块完成,并解析第一任务生成第1个词元和m个张量返回给第一结果生成模块,完成第一任务的语言理解阶段的工作;第一结果生成模块接收到第一语言理解模块返回的第1个词元和m个张量时,可以根据第1个词元和m个张量生成第2个词元至第n个词元,完成第一任务对应的结果生成阶段的工作,第1个词元至第n个词元可用于生成与第一任务对应的文本。本公开实施例的文本生成系统使用第一语言理解模块完成大语言模型在语言理解阶段的功能,使用第一结果生成模块完成大语言模型在结果生成阶段的功能,两个模块独立,并且第一结果生成模块的计算能力小于第一语言理解模块,因此第一语言理解模块的计算能力可以设置为较高以适应语言理解阶段更大的算力需求,使得语言理解阶段的耗时较少;第一结果生成模块的计算能力可以设置为较低以适应结果生成阶段更小的算力需求,使得结果生成阶段的计算能力浪费降低甚至可达到无浪费的效果;综上所述,本公开实施例的文本生成系统在语言理解阶段的耗时较少的前提下,使得结果生成阶段的计算能力浪费也降低,提升了文本生成性能。

22、根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1