System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及大模型推理 ,尤其涉及一种模型推理方法及装置。
技术介绍
1、目前,在transformer类大模型结构中,主要包括注意力(attention)和前馈神经网络(feed forward neural network,ffn)两部分计算,而且transformer类大模型一般为多层实现,每一层主要包括attention和ffn单元。通常在推理时,对于每个输入的推理对象(token)都要经过attention计算和ffn计算,这样在上下文比较长时,对于每一层的attention,都需要存储之前的历史token的键值信息(kv信息),导致键值缓存(kvcache)所需的存储空间增加,attention的计算速度变慢,即大模型的推理速度变慢。为了提升推理速度,一种解决方案是对于每个token选择性的跳过某些层的attention和ffn单元,被跳过的层对应的kvcache中缺少本次推理的kv信息,导致下一次推理时,推理精度低。
技术实现思路
1、本专利技术提供一种模型推理方法及装置,用以解决现有技术的大模型推理过程中无法在提高推理速度的同时提高推理精度的问题。
2、本专利技术提供一种模型推理方法,包括以下步骤。
3、基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层。
4、在推理到所述目标层时,确定所述目标层对应的所述当前输入推理对象的键值信息,并将所述键值信息存储在所述目标层对应的键值缓存
5、跳过所述目标层的注意力计算,并基于所述目标层对应上一层的推理结果,执行所述目标层的前向传播计算,直到经过模型的所有层,以得到所述当前输入推理对象的推理结果。
6、根据本专利技术提供的一种模型推理方法,所述基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括:基于所述当前输入推理对象和模型训练过程中得到的层选择权重矩阵,在所述候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层。
7、根据本专利技术提供的一种模型推理方法,所述基于所述当前输入推理对象和模型训练过程中得到的层选择权重矩阵,在所述候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括以下步骤。
8、将所述当前输入推理对象和所述层选择权重矩阵相乘,得到1×n的权重向量,其中,n为模型中候选目标层的数量,n小于等于模型的总层数,且所述权重向量中每个选择权重值分别对应一个候选目标层。
9、确定所述权重向量中小于预设权重阈值的选择权重值对应的候选目标层作为所述目标层。
10、根据本专利技术提供的一种模型推理方法,所述模型中的所有候选目标层被分为多个组,每个组中包括多个候选目标层,每个组中所有候选目标层共享键值缓存。
11、根据本专利技术提供的一种模型推理方法,所述基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括以下步骤。
12、基于所述当前输入推理对象和模型训练中得到的组选择权重矩阵,确定要跳过的目标组。
13、基于所述当前输入推理对象和所述目标组内的层选择权重矩阵,从所述目标组中确定要跳过的目标层,所述目标组内的层选择权重矩阵在模型训练时得到,且保证目标组中目标层的数量小于目标组中候选目标层的数量。
14、根据本专利技术提供的一种模型推理方法,所述在推理到所述目标层时,确定所述目标层对应的所述当前输入推理对象的键值信息,包括:在推理到每组中的第一层时,确定所述第一层对应的所述当前输入推理对象的参考键值信息,将所述参考键值信息存储在组内的键值缓存中,将所述参考键值信息确定为组内的目标层和候选目标层各自对应的所述当前输入推理对象的键值信息。
15、根据本专利技术提供的一种模型推理方法,在基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层之前,还包括:确定模型中前n层为非候选目标层,后n层为所述候选目标层,所述n大于等于1,n+n为模型的总层数。
16、本专利技术还提供一种模型推理装置,包括以下模块。
17、目标层选择模块,用于基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层。
18、键值信息确定模块,用于在推理到所述目标层时,确定所述目标层对应的所述当前输入推理对象的键值信息,并将所述键值信息存储在所述目标层对应的键值缓存中。
19、前向推理模块,用于跳过所述目标层的注意力计算,并基于所述目标层对应上一层的推理结果,执行所述目标层的前向传播计算,直到经过模型的所有层,以得到所述当前输入推理对象的推理结果。
20、本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述的模型推理方法。
21、本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的模型推理方法。
22、本专利技术提供的模型推理方法及装置,通过基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层;在推理到所述目标层时,确定所述目标层对应的所述当前输入推理对象的键值信息,并将所述键值信息存储在所述目标层对应的键值缓存中;跳过所述目标层的注意力计算,并基于所述目标层对应上一层的推理结果,执行所述目标层的前向传播计算,直到经过模型的所有层,以得到所述当前输入推理对象的推理结果。由于在推理到目标层时,对于当前输入推理对象,不跳过目标层中attention单元的kv信息计算,保留了模型推理的精度,只跳过attention单元的attention计算,从而提升了推理速度,在提升推理速度的基础上相对于现有的层跳过方式的推理精度更高。
本文档来自技高网...【技术保护点】
1.一种模型推理方法,其特征在于,包括:
2.根据权利要求1所述的模型推理方法,其特征在于,所述基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括:
3.根据权利要求2所述的模型推理方法,其特征在于,所述基于所述当前输入推理对象和模型训练过程中得到的层选择权重矩阵,在所述候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括:
4.根据权利要求1所述的模型推理方法,其特征在于,所述模型中的所有候选目标层被分为多个组,每个组中包括多个候选目标层,每个组中所有候选目标层共享键值缓存。
5.根据权利要求4所述的模型推理方法,其特征在于,所述基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括:
6.根据权利要求4所述的模型推理方法,其特征在于,所述在推理到所述目标层时,确定所述目标层对应的所述当前输入推理对象的键值信息,包括:
7.根据权利要求1至6中任一项所述的模型推理方法,其特征在
8.一种模型推理装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的模型推理方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的模型推理方法。
...【技术特征摘要】
1.一种模型推理方法,其特征在于,包括:
2.根据权利要求1所述的模型推理方法,其特征在于,所述基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括:
3.根据权利要求2所述的模型推理方法,其特征在于,所述基于所述当前输入推理对象和模型训练过程中得到的层选择权重矩阵,在所述候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目标层,包括:
4.根据权利要求1所述的模型推理方法,其特征在于,所述模型中的所有候选目标层被分为多个组,每个组中包括多个候选目标层,每个组中所有候选目标层共享键值缓存。
5.根据权利要求4所述的模型推理方法,其特征在于,所述基于当前输入推理对象,从模型的候选目标层中选择与所述当前输入推理对象对应的模型推理时需要跳过的目...
【专利技术属性】
技术研发人员:请求不公布姓名,请求不公布姓名,请求不公布姓名,
申请(专利权)人:广州壁仞集成电路有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。