任务处理方法、自动问答方法以及图像生成方法与流程

未命名 08-15 阅读:81 评论:0


1.本说明书实施例涉及计算机技术领域,特别涉及一种任务处理方法。本说明书一个或者多个实施例同时涉及一种自动问答方法,一种图像生成方法,一种任务处理装置,一种自动问答装置,一种图像生成装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序。


背景技术:

2.随着自然语言处理(nlp,natural language processing)技术的不断发展,模型的种类和大小都呈爆发式增长,对模型进行推理和高性能计算所用到的图形处理器(gpu,graphics processing unit)设备容量逐渐不能满足模型的快速增长,如何利用图像处理器进行模型推理和高性能计算逐渐成为研究重点。
3.目前,通常将模型数据拆分到多个图像处理器上,通过多卡推理或多机分布式推理的方式进行模型推理和高性能计算。然而,上述多卡推理或多机分布式推理的方案需要大量的硬件来支持,导致模型推理系统复杂度高、资源利用不充分,因此,亟需一种复杂度低且资源利用充分的模型推理方案。


技术实现要素:

4.有鉴于此,本说明书实施例提供了一种任务处理方法。本说明书一个或者多个实施例同时涉及一种自动问答方法,一种图像生成方法,一种任务处理装置,一种自动问答装置,一种图像生成装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
5.根据本说明书实施例的第一方面,提供了一种任务处理方法,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该方法包括:响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。
6.根据本说明书实施例的第二方面,提供了一种自动问答方法,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该方法包括:响应于问题处理请求,确定问题处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;
在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得问题处理请求对应的答复结果。
7.根据本说明书实施例的第三方面,提供了一种图像生成方法,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该方法包括:响应于图像生成请求,确定图像生成请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得图像生成请求对应的目标图像。
8.根据本说明书实施例的第四方面,提供了一种任务处理装置,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该装置包括:第一确定模块,被配置为响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;第一分析模块,被配置为对多个任务处理模型进行分析,确定当前任务处理模型;第一获取模块,被配置为从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;第一释放模块,被配置为在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。
9.根据本说明书实施例的第五方面,提供了一种自动问答装置,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该装置包括:第二确定模块,被配置为响应于问题处理请求,确定问题处理请求对应的多个任务处理模型;第二分析模块,被配置为对多个任务处理模型进行分析,确定当前任务处理模型;第二获取模块,被配置为从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;第二释放模块,被配置为在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得问题处理请求对应的答复结果。
10.根据本说明书实施例的第六方面,提供了一种图像生成装置,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该装置包括:第三确定模块,被配置为响应于图像生成请求,确定图像生成请求对应的多个任务处理模型;第三分析模块,被配置为对多个任务处理模型进行分析,确定当前任务处理模型;
第三获取模块,被配置为从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;第三释放模块,被配置为在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得图像生成请求对应的目标图像。
11.根据本说明书实施例的第七方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述第一方面或者第二方面或者第三方面所提供方法的步骤。
12.根据本说明书实施例的第八方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述第一方面或者第二方面或者第三方面所提供方法的步骤。
13.根据本说明书实施例的第九方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述第一方面或者第二方面或者第三方面所提供方法的步骤。
14.本说明书一个实施例提供的任务处理方法,应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元。响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。通过在处理单元中轮流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了任务处理过程的复杂度。
附图说明
15.图1是本说明书一个实施例提供的一种任务处理系统的架构图;图2是本说明书一个实施例提供的另一种任务处理系统的架构图;图3是本说明书一个实施例提供的一种任务处理方法的流程图;图4是本说明书一个实施例提供的一种任务处理方法中模型数据注册表的构建流程图;图5是本说明书一个实施例提供的一种自动问答方法的流程图;图6是本说明书一个实施例提供的一种图像生成方法的流程图;图7是本说明书一个实施例提供的一种任务处理方法的处理过程流程图;图8是本说明书一个实施例提供的一种图像生成方法的处理过程流程图;图9是本说明书一个实施例提供的一种自动问答界面的界面示意图;
图10是本说明书一个实施例提供的一种任务处理装置的结构示意图;图11是本说明书一个实施例提供的一种自动问答装置的结构示意图;图12是本说明书一个实施例提供的一种图像生成装置的结构示意图;图13是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
16.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
17.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
18.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
19.此外,需要说明的是,本说明书一个或多个实施例所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
20.本说明书一个或多个实施例中,大模型是指具有大规模模型参数的深度学习模型,通常包含上亿、上百亿、上千亿、上万亿甚至十万亿以上的模型参数。大模型又可以称为基石模型/基础模型(foundation model),通过大规模无标注的语料进行大模型的预训练,产出亿级以上参数的预训练模型,这种模型能适应广泛的下游任务,模型具有较好的泛化能力,例如大规模语言模型(llm,large language model)、多模态预训练模型(multi-modal pre-training model)等。
21.大模型在实际应用时,仅需少量样本对预训练模型进行微调即可应用于不同的任务中,大模型可以广泛应用于自然语言处理(nlp,natural language processing)、计算机视觉等领域,具体可以应用于如视觉问答(vqa,visual question answering)、图像描述(ic,image caption)、图像生成等计算机视觉领域任务,以及基于文本的情感分类、文本摘要生成、机器翻译等自然语言处理领域任务,大模型主要的应用场景包括数字助理、智能机器人、搜索、在线教育、办公软件、电子商务、智能设计等。
22.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
23.固定内存:固定内存(pinned memory)是指计算机内存中被锁定的一部分内存,通常需要使用专门的应用程序编程接口(api,application programming interface)或库来
进行分配和管理。固定内存不会被操作系统移动或交换到虚拟内存中。固定内存通常用于高性能计算、图形处理、网络通信等需要快速访问内存的应用程序中,可以提高内存访问速度和减少内存访问延迟。
24.随着自然语言处理技术的不断发展,模型的种类和大小都呈爆发式增长,对模型进行推理和高性能计算所用到的图形处理器设备容量逐渐不能满足模型的快速增长,如何利用图像处理器进行模型推理和高性能计算逐渐成为研究重点。
25.目前,可以利用流水线(pipeline)的形式对多个模型轮番进行推理计算,但多个大模型不一定能全部在显存中放得下。通常可以将模型数据拆分到多个图像处理器上,通过多卡推理或多机分布式推理的方式进行模型推理和高性能计算。然而,上述多卡推理或多机分布式推理的方案需要大量的硬件来支持,导致模型推理系统复杂度高、资源利用不充分。
26.为了解决上述问题,本说明书实施例提出了一种可以实现多个模型轮流使用显存、模型数据轮流热加载的方案,解决多个大模型交替推理时对硬件预算要求高、资源利用不充分的问题,实现无需增加额外硬件,使用单卡就能对多个模型按照流水线进行推理,且能保持推理的运行时间(runtime)延迟在可接受的范围。
27.具体地,任务处理平台中的控制单元响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。
28.在本说明书中,提供了一种任务处理方法,本说明书同时涉及一种自动问答方法,一种图像生成方法,一种任务处理装置,一种自动问答装置,一种图像生成装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,在下面的实施例中逐一进行详细说明。
29.参见图1,图1示出了本说明书一个实施例提供的一种任务处理系统的架构图,任务处理系统可以包括客户端100和任务处理平台200,任务处理平台200包括控制单元202、存储单元204和处理单元206;客户端100,用于向任务处理平台200发送任务处理请求;控制单元202,响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元204中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元206,以使处理单元206基于目标模型数据生成当前任务处理模型的处理结果;在处理单元206满足预设模型切换条件的情况下,从处理单元206中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果;向客户端100发送任务处理结果;客户端100,还用于接收控制单元202发送的任务处理结果。
30.应用本说明书实施例的方案,通过在处理单元中轮流运行多个任务处理模型,无
需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了任务处理过程的复杂度。
31.参见图2,图2示出了本说明书一个实施例提供的另一种任务处理系统的架构图,任务处理系统可以包括多个客户端100以及任务处理平台200。多个客户端100之间通过任务处理平台200可以建立通信连接,在任务处理场景中,任务处理平台200即用来在多个客户端100之间提供任务处理服务,多个客户端100可以分别作为发送端或接收端,通过任务处理平台200实现通信。
32.用户通过客户端100可与任务处理平台200进行交互以接收其它客户端100发送的数据,或将数据发送至其它客户端100等。在任务处理场景中,可以是用户通过客户端100向任务处理平台200发布数据流,任务处理平台200根据该数据流生成任务处理结果,并将任务处理结果推送至其他建立通信的客户端中。
33.其中,客户端100与任务处理平台200之间通过网络建立连接。网络为客户端100与任务处理平台200之间提供了通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。客户端100所传输的数据可能需要经过编码、转码、压缩等处理之后才发布至任务处理平台200。
34.客户端100可以为浏览器、app(application,应用程序)、或网页应用如h5(hypertext markup language5,超文本标记语言第5版)应用、或轻应用(也被称为小程序,一种轻量级应用程序)或云应用等,客户端100可以基于任务处理平台200提供的相应服务的软件开发工具包(sdk,software development kit),如基于实时通信(rtc,real time communication)sdk开发获得等。客户端100可以部署在电子设备中,需要依赖设备运行或者设备中的某些app而运行等。电子设备例如可以具有显示屏并支持信息浏览等,如可以是个人移动终端如手机、平板电脑、个人计算机等。在电子设备中通常还可以配置各种其它类应用,例如人机对话类应用、模型训练类应用、文本处理类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
35.任务处理平台200可以包括提供各种服务的服务器,例如为多个客户端提供通信服务的服务器,又如为客户端上使用的模型提供支持的用于后台训练的服务器,又如对客户端发送的数据进行处理的服务器等。需要说明的是,任务处理平台200可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(cdn,content delivery network)以及大数据和人工智能平台等基础云计算服务的云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
36.值得说明的是,本说明书实施例中提供的任务处理方法一般由任务处理平台执行,但是,在本说明书的其它实施例中,客户端也可以与任务处理平台具有相似的功能,从而执行本说明书实施例所提供的任务处理方法。在其它实施例中,本说明书实施例所提供的任务处理方法还可以是由客户端与任务处理平台共同执行。
37.参见图3,图3示出了本说明书一个实施例提供的一种任务处理方法的流程图,任务处理方法应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,具体包括以下步骤:
步骤302:响应于任务处理请求,确定任务处理请求对应的多个任务处理模型。
38.本说明书一个或多个实施例中,控制单元可以接收任务处理请求,并响应于该任务处理请求,确定任务处理请求对应的多个任务处理模型。
39.具体地,控制单元可以理解为微型边缘计算机(allspark),是链接到用户程序中的静态库或者动态库。控制单元可以被用户程序调度以执行任务处理请求。任务处理请求所请求处理的任务可以是不同场景中的任务,如会议场景中的任务、电商场景中的任务等等。任务处理请求所请求处理的任务还可以是不同类型的任务,如图像生成任务、推荐任务等等。
40.任务处理请求对应的多个任务处理模型用于生成任务处理请求对应的任务处理结果。任务处理模型为深度学习模型,包括但不限于大模型、图像生成模型等等,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
41.示例性地,假设任务处理请求为“画一个可爱风格的戴发卡的小女孩”,任务处理请求对应的多个任务处理模型包括但不限于预训练模型(gpt,generative pre-trained transformer)、图像生成(unclip)模型。
42.实际应用中,确定任务处理请求对应的多个任务处理模型的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。本说明书一种可能的实现方式中,可以接收用户通过程序编排指定的多个任务处理模型。本说明书另一种可能的实现方式中,可以对任务处理请求进行分析,确定请求任务类型,进一步根据请求任务类型确定任务处理请求对应的多个任务处理模型。
43.步骤304:对多个任务处理模型进行分析,确定当前任务处理模型。
44.本说明书一个或多个实施例中,响应于任务处理请求,确定任务处理请求对应的多个任务处理模型之后,进一步地,可以对多个任务处理模型进行分析,确定当前任务处理模型。
45.具体地,当前任务处理模型为多个任务处理模型中的未完成任务处理模型。未完成任务处理模型可以是未运行的任务处理模型,还可以是未生成处理结果的任务处理模型。
46.实际应用中,对多个任务处理模型进行分析,确定当前任务处理模型的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
47.本说明书一种可能的实现方式中,任务处理请求携带多个任务处理模型的模型属性信息,可以根据模型属性信息和当前迭代次数,确定当前任务处理模型。
48.示例性地,假设当前迭代次数为2,多个任务处理模型包括任务处理模型a、任务处理模型b、任务处理模型c和任务处理模型d。上述四个任务处理模型的模型属性信息为任务处理模型的执行顺序,具体为第一轮执行任务处理模型a,第二轮执行任务处理模型b,第三轮执行任务处理模型c,第四轮执行任务处理模型d。根据当前迭代次数2和模型属性信息可以确定当前任务处理模型为任务处理模型b,此时的当前任务处理模型即为未运行的任务处理模型。
49.本说明书另一种可能的实现方式中,任务处理请求携带多个任务处理模型的模型属性信息;由于任务处理过程中,可能会出现某些任务处理模型运行失败的情况,此时,可以利用与运行失败的任务处理模型功能相同的其他任务处理模型替代该运行失败的任务
处理模型,还可以重新运行该运行失败的任务处理模型,因此,可以根据模型属性信息和已完成任务处理模型确定当前任务处理模型,也即,上述对多个任务处理模型进行分析,确定当前任务处理模型的方式,可以包括以下步骤:根据模型属性信息和多个任务处理模型中已完成任务处理模型,从多个任务处理模型中筛选出当前任务处理模型。
50.具体地,模型属性信息为任务处理模型的相关属性信息,包括但不限于模型运行顺序、模型运行时间等等。已完成任务处理模型为已生成处理结果的任务处理模型。
51.示例性地,假设多个任务处理模型包括任务处理模型a、任务处理模型b、任务处理模型c和任务处理模型d。上述四个任务处理模型的模型属性信息为任务处理模型的执行顺序,具体为第一轮执行任务处理模型a,第二轮执行任务处理模型b或任务处理模型c,第三轮执行任务处理模型d。获取上述四个任务处理模型的模型运行信息,确定任务处理模型a为已完成任务处理模型,任务处理模型b为运行失败的模型,任务处理模型c和任务处理模型d为未运行的任务处理模型,则根据模型属性信息和已完成任务处理模型a,确定当前任务处理模型为任务处理模型b或者任务处理模型c。
52.需要说明的是,若当前任务处理模型为任务处理模型b,则此时的当前任务处理模型即为已运行但未生成处理结果的任务处理模型;若当前任务处理模型为任务处理模型c,则此时的当前任务处理模型即为未运行的任务处理模型。任务处理模型运行失败的原因包括但不限于运行时间超时、运行卡顿等等,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
53.应用本说明书实施例的方案,根据模型属性信息和多个任务处理模型中已完成任务处理模型,从多个任务处理模型中筛选出当前任务处理模型,在准确确定当前任务处理模型的基础上,避免因模型处理失败导致任务处理失败,保证了任务处理过程的稳定性。
54.步骤306:从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果。
55.本说明书一个或多个实施例中,响应于任务处理请求,确定任务处理请求对应的多个任务处理模型,对多个任务处理模型进行分析,确定当前任务处理模型之后,进一步地,可以从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果。
56.具体地,存储单元可以理解为系统内存,用于存储任务处理模型的模型数据。处理单元可以理解为显存,用于运行任务处理模型。模型数据可以是张量(tensor)粒度的数据,模型数据包括但不限于模型自身的结构数据、权重数据、模型的输入数据,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
57.实际应用中,从存储单元中获取当前任务处理模型的目标模型数据的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。本说明书一种可能的实现方式中,可以从存储单元中获取当前任务处理模型的模型数据,将当前任务处理模型的模型数据作为目标模型数据。
58.本说明书另一种可能的实现方式中,由于当前任务处理模型对应模型数据的数据量可能较大,因此,可以利用预设拷贝权重阈值对当前任务处理模型的模型数据进行筛选,确定目标模型数据,进一步从存储单元中获取目标模型数据,也即,上述从存储单元中获取
当前任务处理模型的目标模型数据,可以包括以下步骤:获取预设拷贝权重阈值;根据拷贝权重阈值和当前任务处理模型的模型数据,确定当前任务处理模型的目标模型数据;从存储单元中获取目标模型数据。
59.具体地,预设拷贝权重阈值用于从当前任务处理模型的模型数据中筛选出目标模型数据。预设拷贝阈值可以为用户通过接口参数传入。预设拷贝权重阈值具体根据实际情况进行设置,本说明书实施例对此不做任何限定。
60.需要说明的是,根据预设拷贝权重阈值和当前任务处理模型的模型数据,确定当前任务处理模型的目标模型数据时,可以将当前任务处理模型的模型数据的权重与预设拷贝权重阈值进行比较,若模型数据满足预设拷贝权重阈值,则表示模型数据可以被拷贝至处理单元,也即可以将满足预设拷贝权重阈值的模型数据确定为目标模型数据;若模型数据不满足预设拷贝权重阈值,则表示无需将模型数据拷贝至处理单元,也即可以将不满足预设拷贝权重阈值的模型数据之外的模型数据确定为目标模型数据。
61.应用本说明书实施例的方案,获取预设拷贝权重阈值;根据拷贝权重阈值和当前任务处理模型的模型数据,确定当前任务处理模型的目标模型数据;从存储单元中获取目标模型数据,减少了数据传输量,提高了任务处理效率,同时,实现了显存复用和时间开销之间的平衡。
62.本说明书一种可选的实施例中,由于各任务处理模型中都包含有数千个张量数据,这些数据一般都是通过统一计算设备架构中的函数(cudamalloc)或包装(wrapper)等方式申请显存空间,数据的生成和销毁时间没有统一的规律可言。为了完整收集处理单元中的张量数据,可以拦截分配和释放显存接口的方式,在存储单元中构建模型数据注册表,也即,将目标模型数据拷贝至处理单元之前,还可以包括以下步骤:在存储单元中构建模型数据注册表,其中,模型数据注册表用于记录处理单元对应的拷贝数据和释放数据;将目标模型数据拷贝至处理单元之后,还可以包括以下步骤:将目标模型数据存储至模型数据注册表中。
63.具体地,模型数据注册表为模型权重数据注册表,还可以称为显存张量注册表,模型数据注册表按地址登记了各模型张量数据的显存起始地址、大小、名称等信息,供处理单元的数据换入和换出使用。拷贝数据可以理解为换入处理单元的数据,释放数据可以理解为换出处理单元的数据。模型数据注册表可以是一个二级图表,第一级图表以模型名称为键(key),其键值(value)为第二级图表。第二级图表以显存地址为键,其键值为实体(entry)类型,包括但不限于模型名称、模型大小等等,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
64.需要说明的是,将目标模型数据拷贝至处理单元之后,可以将目标模型数据存储至模型数据注册表中,从而集中登记处理单元中的模型数据。实际应用中,模型数据注册表中可以包括处理单元的名称、大小、实时使用量、总占用量等等。其中,在向处理单元拷贝模型数据时对总占用量进行累加,在释放处理单元中的模型数据时对总占用量进行删减,从而避免数据释放时遗漏模型数据。
65.应用本说明书实例的方案,在存储单元中构建模型数据注册表,将目标模型数据拷贝至处理单元之后,将目标模型数据的相关信息存储至模型数据注册表中。实现了集中统一管理处理单元,实时反映处理单元的占用,不会出现漏掉未释放的情况。用户通过模型数据注册表可以掌握各模型数据所占处理单元的大小,从而准确设置预设拷贝权重阈值和预设释放权重阈值,进一步实现处理单元复用和时间开销之间的平衡。
66.参见图4,图4示出了本说明书一个实施例提供的一种任务处理方法中模型数据注册表的构建流程图,控制单元可以通过拦截处理单元分配接口确定处理单元对应的拷贝数据,根据拷贝数据在模型数据注册表中添加entry,通过拦截处理单元释放接口确定处理单元对应的释放数据,根据释放数据在模型数据注册表中删除entry,从而在存储单元中构建模型数据注册表。
67.本说明书另一种可选的实施例中,从存储单元中获取当前任务处理模型的目标模型数据之前,还可以包括以下步骤:对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据;将各任务处理模型的模型数据存储至存储单元。
68.需要说明的是,存储单元可以是系统内存,还可以是系统内存中的固定内存,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
69.应用本说明书实施例中,从存储单元中获取当前任务处理模型的目标模型数据之前,控制单元可以对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据,并将各任务处理模型的模型数据存储至存储单元,从而处理单元中模型数据的换入换出做准备,保证任务处理可以稳定实现。
70.实际应用中,对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
71.本说明书一种可能的实现方式中,可以从用户保存的磁盘文件中直接读取结构化数据存储(protobuf)文件,生成各任务处理模型的模型数据。
72.本说明书另一种可能的实现方式中,可以根据模型配置信息和模型权重信息构建各任务处理模型对应的算子网络拓扑图,对算子网络拓扑图进行格式转换,确定各任务处理模型的模型数据,也即,上述对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据,可以包括以下步骤:对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型配置信息和模型权重信息;根据模型配置信息和模型权重信息,分别构建各任务处理模型对应的算子网络拓扑图;对算子网络拓扑图进行格式转换,确定各任务处理模型的模型数据。
73.需要说明的是,控制单元可以对多个任务处理模型的模型文件进行解析,初始化模型文件,如transformer的层数、隐藏层的数量(hidden number)等,确定各任务处理模型的模型配置信息和模型权重信息,以便分布到多卡上并行推理。进一步地,可以根据模型配置信息和模型权重信息,分别构建各任务处理模型对应的算子网络拓扑图,并对算子网络拓扑图进行格式转换,将算子网络拓扑图保存为可以直接加载的格式,确定各任务处理模型的模型数据。
74.实际应用中,还可以将格式转换后的算子网络拓扑图存储到磁盘上,以便下一次启动时直接读取,加快启动速度。
75.应用本说明书实施例的方案,对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型配置信息和模型权重信息;根据模型配置信息和模型权重信息,分别构建各任务处理模型对应的算子网络拓扑图;对算子网络拓扑图进行格式转换,确定各任务处理模型的模型数据,保证了模型数据的准确性。
76.实际应用中,将各任务处理模型的模型数据存储至存储单元的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不做任何限定。本说明书一种可能的实现方式中,可以直接将各任务处理模型的模型数据存储至存储单元中。
77.本说明书另一种可能的实现方式中,可以将各任务处理模型的模型数据存储至存储单元中的固定内存,也即,上述将各任务处理模型的模型数据存储至存储单元之前,还可以包括以下步骤:在存储单元中创建固定内存;将各任务处理模型的模型数据存储至存储单元,可以包括以下步骤:将各任务处理模型的模型数据存储至固定内存。
78.需要说明的是,可以通过统一计算设备架构接口在存储单元中开辟一块固定内存,由于固定内存是系统内存中被锁定的一部分内存,它不会被操作系统移动或交换到虚拟内存中,因此,也就不会被操作系统执行页交互,从而可以使用直接存储器访问(dma,direct memory access)的方式将模型数据从存储单元拷贝至处理单元。
79.应用本说明书实施例的方案,在存储单元中创建固定内存,将各任务处理模型的模型数据存储至固定内存,避免了内存被操作系统执行页交互,从而提升了将模型数据从存储单元中拷贝至处理单元时的性能,大幅提升了模型数据的拷贝速度。
80.步骤308:在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。
81.本说明书一个或多个实施例中,响应于任务处理请求,确定任务处理请求对应的多个任务处理模型,对多个任务处理模型进行分析,确定当前任务处理模型,从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元之后,进一步地,可以在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。
82.具体地,预设模型切换条件包括但不限于处理单元生成当前任务处理模型的处理结果、处理单元运行超时等等。预设停止条件可以是当前任务处理模型为多个顺序执行的任务处理模型中最后一轮执行的模型,预设停止条件具体根据实际情况进行选择,本说明书实施例对此不做任何限定。
83.应用本说明书实施例的方案,通过在处理单元中轮流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了任务处理过程的复杂度,并且,采用直接释放处理单元中目标模型数据的方式,可以节省任务处理时间,提高了任务处理效率。
84.实际应用中,从处理单元中释放目标模型数据时,可以直接释放处理单元中的所有目标模型数据,进一步地,还可以利用预设释放权重阈值确定需要释放的目标模型数据,也即,上述从处理单元中释放目标模型数据,可以包括以下步骤:获取预设释放权重阈值;根据预设释放权重阈值遍历模型数据注册表,确定目标模型数据中的待释放模型数据;从处理单元中释放待释放模型数据。
85.具体地,预设释放权重阈值用于从目标模型数据中筛选出待释放模型数据。预设释放权重阈值可以是用户通过接口参数传入。预设释放权重阈值具体根据实际情况进行设置,本说明书实施例对此不做任何限定。
86.需要说明的是,根据预设释放权重阈值遍历模型数据注册表,确定目标模型数据中的待释放模型数据时,可以将模型数据注册表中的目标模型数据的权重与预设释放权重阈值进行比较,若目标模型数据满足预设释放权重阈值,则表示目标模型数据可以被释放,也即可以将满足预设释放权重阈值的目标模型数据确定为待释放模型数据;若目标模型数据不满足预设释放权重阈值,则表示无需释放目标模型数据,也即可以将不满足预设释放权重阈值的目标模型数据之外的目标模型数据确定为待释放模型数据。
87.应用本说明书实施例的方案,获取预设释放权重阈值;根据预设释放权重阈值遍历模型数据注册表,确定目标模型数据中的待释放模型数据;从处理单元中释放待释放模型数据。实现了更精细、更快地控制处理单元中交换的模型数据,避免不必要的数据交换,避免了并行计算架构频繁启动拷贝的额外开销,提高任务处理效率。
88.本说明书一种可选的实施例中,上述获得任务处理请求对应的任务处理结果之后,还可以包括以下步骤:向客户端发送任务处理结果,以使客户端向用户展示任务处理结果。
89.需要说明的是,获得任务处理请求对应的任务处理结果之后,可以向客户端发送任务处理结果,同时还可以向客户端发送任务处理结果对应的任务处理模型。
90.实际应用中,客户端向用户展示任务处理结果的方式有多种,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。本说明书一种可能的实现方式中,客户端可以只向用户展示任务处理结果。本说明书另一种可能的实现方式中,客户端可以同时向用户展示任务处理结果以及对应的任务处理模型,使得用户可以准确知道任务处理结果以及对应的任务处理模型。
91.应用本说明书实施例的方案,向客户端发送任务处理结果,以使客户端向用户展示任务处理结果,使得用户可以准确获得任务处理结果,增加了与用户之间的交互,提高了用户满意度。
92.进一步地,客户端向用户展示任务处理结果之后,用户可以根据任务处理结果自行进行数据处理,也可以基于客户端展示的任务处理结果发送后处理请求,以进行多轮任务处理,也即,上述向客户端发送任务处理结果之后,还可以包括以下步骤:接收用户基于任务处理结果发送的后处理请求,并对后处理请求进行处理,获得后处理请求对应的后处理结果。
93.具体地,后处理请求是指用户在获得任务处理结果之后,基于任务处理结果发送
的任务处理请求。
94.需要说明的是,“对后处理请求进行处理,获得后处理请求对应的后处理结果”的实现方式与上述任务处理方法的实现方式相同,本说明书实施例便不再进行赘述。
95.应用本说明书实施例的方案,接收用户基于任务处理结果发送的后处理请求,并对后处理请求进行处理,获得后处理请求对应的后处理结果,增加了与用户之间的交互,提高了用户满意度。
96.下述结合附图5,以本说明书提供的任务处理方法在智能问答场景的应用为例,对所述任务处理方法进行进一步说明。其中,图5示出了本说明书一个实施例提供的一种自动问答方法的流程图,自动问答方法应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,具体包括以下步骤:步骤502:响应于问题处理请求,确定问题处理请求对应的多个任务处理模型。
97.步骤504:对多个任务处理模型进行分析,确定当前任务处理模型。
98.步骤506:从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果。
99.步骤508:在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得问题处理请求对应的答复结果。
100.需要说明的是,步骤502至步骤508的实现方式与上述302至步骤308的实现方式相同,本说明书实施例便不再进行赘述。
101.应用本说明书实施例的方案,通过在处理单元中轮流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了自动问答过程的复杂度,并且,采用直接释放处理单元中目标模型数据的方式,可以节省自动问答时间,提高了自动问答效率。
102.下述结合附图6,以本说明书提供的任务处理方法在图像生成领域的应用为例,对所述任务处理方法进行进一步说明。其中,图6示出了本说明书一个实施例提供的一种图像生成方法的流程图,图像生成方法应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,具体包括以下步骤:步骤602:响应于图像生成请求,确定图像生成请求对应的多个任务处理模型。
103.步骤604:对多个任务处理模型进行分析,确定当前任务处理模型。
104.步骤606:从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果。
105.步骤608:在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得图像生成请求对应的目标图像。
106.需要说明的是,步骤602至步骤608的实现方式与上述302至步骤308的实现方式相同,本说明书实施例便不再进行赘述。
107.应用本说明书实施例的方案,通过在处理单元中轮流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了图像生成过程的复杂度,并且,采用直接释放处理单元中目标模型数据的方
式,可以节省图像生成时间,提高了图像生成效率。
108.参见图7,图7示出了本说明书一个实施例提供的一种任务处理方法的处理过程流程图,如果在单机单卡上进行任务处理,由于任务处理模型的模型文件过大,处理单元无法同时加载多个任务处理模型的模型文件,因此,可以在运行某一任务处理模型的时候才将该任务处理模型的模型数据加载到处理单元中。
109.如图7所示,控制单元可以从文件系统一次性加载多个任务处理模型的模型文件,对各任务处理模型的模型文件进行解析,确定各任务处理模型张量粒度的模型数据,将各任务处理模型的模型数据存储至存储单元;在任务处理过程中,控制单元在模型换入时,可以调用加载模型接口解析存储单元中的模型数据得到权重图表,并从权重图表中遍历、拷贝模型数据到处理单元中;在模型换出时,将处理单元中的目标模型数据直接释放掉,把要运行的任务处理模型的模型数据从存储单元中拷贝至处理单元,继续运行模型。通过上述方式,用相对廉价的存储单元存储大量的模型数据,而处理单元中只加载当前使用的模型数据,实现了显存的复用。
110.需要说明的是,调用加载模型接口时,控制单元可以解析出包括模型权重数据的权重图表,权重图表中的键是权重名称,键值是具体的模型数据(tensor对象),其数据位于处理单元中。同时,控制单元内部也可以保存对权重图表的引用,若用户指定了权重阈值,在加载模型时还可以额外生成一份与权重图表一模一样的镜像权重图表,并将镜像权重图表中的模型数据存储至主机内存中。
111.应用本说明书实施例的方案,由于存储单元中存储的是以张量为粒度的模型数据,从而可以更精细、更快地控制处理单元中交换的模型数据,提高任务处理效率。
112.参见图8,图8示出了本说明书一个实施例提供的一种图像生成方法的处理过程流程图,接收用户发送的图像生成请求,利用提示预处理模型对图像生成请求中的请求描述性文字进行处理,将请求描述性文字转换为预训练模型可识别的输入文本串。然后,将输入文本串输入预训练模型中,经预训练模型中的编码器进行编码处理,生成名为最后隐藏状态(last_hidden_state)的编码向量,该编码向量中包含了用户输入信息在文本向量空间中的表示,蕴含了语义信息。最后,将编码向量输入图像生成模型,生成符合语义信息的目标图像,或者将编码向量输特定风格生成模型,生成符合语义信息的、特定风格的目标图像。其中,图像生成模型和特定风格生成模型为并列关系,其模型结构类似,对应的训练数据不同,可以根据用户的需求选择图像生成模型或者特定风格生成模型。
113.值得说明的是,本说明书实施例提供的任务处理方案中,显存换出的耗时为10ms以内,换入的耗时与模型的大小成正比,一般10g大小的模型全部换入耗时为500ms秒以内。在下游任务中使用本说明书实施例提供的任务处理方案后,一个服务实例的硬件需求可以从原来的三卡降为一卡,而整体服务的运行时间只损失百分之一,这对于降本增效来说具有重要意义。
114.实际应用中,由于本说明书实施例提供的任务处理方案不依赖多台机器之间的信息交互,是在每台机器内部进行显存交换,从而在多台机器可以实现数据并行(data parallel)或流水线并行(pipeline parallel)的多机多卡的推理模式。本说明书实施例提供的任务处理方案还可以推广至模型训练场景。例如,在有限显存的情况下,模型训练框架在训练过程中需要使用多个模型来生成内容,此时可以使用本说明书实施例提供的任务处
理方案实现多个模型轮流使用显存。进一步地,可以利用深度学习模型训练框架中的梯度检查点(gradient check pointing)将模型某些层的输出存储到内存中,并在后续计算中使用这些输出,从而避免重复计算。
115.参见图9,图9示出了本说明书一个实施例提供的一种自动问答界面的界面示意图。自动问答界面分为问题处理请求输入界面和答复结果展示界面。问题处理请求输入界面中包括问题处理请求输入框、“确定”控件以及“取消”控件。答复结果展示界面中包括答复结果展示框。
116.用户通过客户端显示的问题处理请求输入框输入问题处理请求,点选“确定”控件,任务处理平台接收客户端发送的问题处理请求,响应于问题处理请求,确定问题处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得问题处理请求对应的答复结果,并将答复结果发送至客户端。客户端在答复结果展示框中显示答复结果。
117.实际应用中,用户对控件进行操作的方式包括点击、双击、触控、鼠标悬停、滑动、长按、语音控制或摇一摇等任一方式,具体根据实际情况进行选择,本说明书实施例对此不作任何限定。
118.与上述任务处理方法实施例相对应,本说明书还提供了任务处理装置实施例,图10示出了本说明书一个实施例提供的一种任务处理装置的结构示意图。如图10所示,任务处理装置应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该装置包括:第一确定模块1002,被配置为响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;第一分析模块1004,被配置为对多个任务处理模型进行分析,确定当前任务处理模型;第一获取模块1006,被配置为从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;第一释放模块1008,被配置为在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。
119.可选地,该装置还包括:构建模块,被配置为在存储单元中构建模型数据注册表,其中,模型数据注册表用于记录处理单元对应的拷贝数据和释放数据;存储模块,被配置为将目标模型数据存储至模型数据注册表中。
120.可选地,第一释放模块1008,进一步被配置为获取预设释放权重阈值;根据预设释放权重阈值遍历模型数据注册表,确定目标模型数据中的待释放模型数据;从处理单元中释放待释放模型数据。
121.可选地,第一获取模块1006,进一步被配置为获取预设拷贝权重阈值;根据拷贝权
重阈值和当前任务处理模型的模型数据,确定当前任务处理模型的目标模型数据;从存储单元中获取目标模型数据。
122.可选地,该装置还包括:解析模块,被配置为对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据;将各任务处理模型的模型数据存储至存储单元。
123.可选地,该装置还包括:创建模块,被配置为在存储单元中创建固定内存;解析模块,进一步被配置为将各任务处理模型的模型数据存储至固定内存。
124.可选地,解析模块,进一步被配置为对多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型配置信息和模型权重信息;根据模型配置信息和模型权重信息,分别构建各任务处理模型对应的算子网络拓扑图;对算子网络拓扑图进行格式转换,确定各任务处理模型的模型数据。
125.可选地,任务处理请求携带多个任务处理模型的模型属性信息;第一分析模块1004,进一步被配置为根据模型属性信息和多个任务处理模型中已完成任务处理模型,从多个任务处理模型中筛选出当前任务处理模型。
126.可选地,该装置还包括:发送模块,被配置为向客户端发送任务处理结果,以使客户端向用户展示任务处理结果。
127.可选地,该装置还包括:处理模块,被配置为接收用户基于任务处理结果发送的后处理请求,并对后处理请求进行处理,获得后处理请求对应的后处理结果。
128.应用本说明书实施例的方案,通过在处理单元中轮流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了任务处理过程的复杂度,并且,采用直接释放处理单元中目标模型数据的方式,可以节省任务处理时间,提高了任务处理效率。
129.上述为本实施例的一种任务处理装置的示意性方案。需要说明的是,该任务处理装置的技术方案与上述的任务处理方法的技术方案属于同一构思,任务处理装置的技术方案未详细描述的细节内容,均可以参见上述任务处理方法的技术方案的描述。
130.与上述自动问答方法实施例相对应,本说明书还提供了自动问答装置实施例,图11示出了本说明书一个实施例提供的一种自动问答装置的结构示意图。如图11所示,自动问答装置应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该装置包括:第二确定模块1102,被配置为响应于问题处理请求,确定问题处理请求对应的多个任务处理模型;第二分析模块1104,被配置为对多个任务处理模型进行分析,确定当前任务处理模型;第二获取模块1106,被配置为从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;第二释放模块1108,被配置为在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得问题处理请求对应的答复结果。
131.应用本说明书实施例的方案,应用本说明书实施例的方案,通过在处理单元中轮
流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了自动问答过程的复杂度,并且,采用直接释放处理单元中目标模型数据的方式,可以节省自动问答时间,提高了自动问答效率。
132.上述为本实施例的一种自动问答装置的示意性方案。需要说明的是,该自动问答装置的技术方案与上述的自动问答方法的技术方案属于同一构思,自动问答装置的技术方案未详细描述的细节内容,均可以参见上述自动问答方法的技术方案的描述。
133.与上述图像生成方法实施例相对应,本说明书还提供了图像生成装置实施例,图12示出了本说明书一个实施例提供的一种图像生成装置的结构示意图。如图12所示,图像生成装置应用于任务处理平台中的控制单元,任务处理平台包括控制单元、存储单元和处理单元,该装置包括:第三确定模块1202,被配置为响应于图像生成请求,确定图像生成请求对应的多个任务处理模型;第三分析模块1204,被配置为对多个任务处理模型进行分析,确定当前任务处理模型;第三获取模块1206,被配置为从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;第三释放模块1208,被配置为在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得图像生成请求对应的目标图像。
134.应用本说明书实施例的方案,应用本说明书实施例的方案,通过在处理单元中轮流运行多个任务处理模型,无需增加额外的硬件,使用单卡即可实现对多个任务处理模型的推理,充分利用了处理单元资源,降低了图像生成过程的复杂度,并且,采用直接释放处理单元中目标模型数据的方式,可以节省图像生成时间,提高了图像生成效率。
135.上述为本实施例的一种图像生成装置的示意性方案。需要说明的是,该图像生成装置的技术方案与上述的图像生成方法的技术方案属于同一构思,图像生成装置的技术方案未详细描述的细节内容,均可以参见上述图像生成方法的技术方案的描述。
136.图13示出了本说明书一个实施例提供的一种计算设备的结构框图。该计算设备1300的部件包括但不限于存储器1310和处理器1320。处理器1320与存储器1310通过总线1330相连接,数据库1350用于保存数据。
137.计算设备1300还包括接入设备1340,接入设备1340使得计算设备1300能够经由一个或多个网络1360通信。这些网络的示例包括公用交换电话网(pstn,public switched telephone network)、局域网(lan,local area network)、广域网(wan,wide area network)、个域网(pan,personal area network)或诸如因特网的通信网络的组合。接入设备1340可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic,network interface card))中的一个或多个,诸如ieee802.11无线局域网(wlan,wireless local area networks)无线接口、全球微波互联接入(wi-max,world interoperability for microwave access)接口、以太网接口、通用串行总线(usb,universal serial bus)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc,near field communication)接口,等等。
138.在本说明书的一个实施例中,计算设备1300的上述部件以及图13中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图13所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
139.计算设备1300可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(pc,personal computer)的静止计算设备。计算设备1300还可以是移动式或静止式的服务器。
140.其中,处理器1320用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述任务处理方法或者自动问答方法或者图像生成方法的步骤。
141.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的任务处理方法、自动问答方法和图像生成方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述任务处理方法或者自动问答方法或者图像生成方法的技术方案的描述。
142.本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述任务处理方法或者自动问答方法或者图像生成方法的步骤。
143.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的任务处理方法、自动问答方法和图像生成方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述任务处理方法或者自动问答方法或者图像生成方法的技术方案的描述。
144.本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述任务处理方法或者自动问答方法或者图像生成方法的步骤。
145.上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的任务处理方法、自动问答方法和图像生成方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述任务处理方法或者自动问答方法或者图像生成方法的技术方案的描述。
146.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
147.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。
148.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列
的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
149.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
150.以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

技术特征:
1.一种任务处理方法,应用于任务处理平台中的控制单元,所述任务处理平台包括所述控制单元、存储单元和处理单元,所述方法包括:响应于任务处理请求,确定所述任务处理请求对应的多个任务处理模型;对所述多个任务处理模型进行分析,确定当前任务处理模型;从所述存储单元中获取所述当前任务处理模型的目标模型数据,并将所述目标模型数据拷贝至所述处理单元,以使所述处理单元基于所述目标模型数据生成所述当前任务处理模型的处理结果;在所述处理单元满足预设模型切换条件的情况下,从所述处理单元中释放所述目标模型数据,并返回执行所述对所述多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得所述任务处理请求对应的任务处理结果。2.根据权利要求1所述的方法,所述将所述目标模型数据拷贝至所述处理单元之前,还包括:在所述存储单元中构建模型数据注册表,其中,所述模型数据注册表用于记录所述处理单元对应的拷贝数据和释放数据;所述将所述目标模型数据拷贝至所述处理单元之后,还包括:将所述目标模型数据存储至所述模型数据注册表中。3.根据权利要求2所述的方法,所述从所述处理单元中释放所述目标模型数据,包括:获取预设释放权重阈值;根据所述预设释放权重阈值遍历所述模型数据注册表,确定所述目标模型数据中的待释放模型数据;从所述处理单元中释放所述待释放模型数据。4.根据权利要求1所述的方法,所述从所述存储单元中获取所述当前任务处理模型的目标模型数据,包括:获取预设拷贝权重阈值;根据所述拷贝权重阈值和所述当前任务处理模型的模型数据,确定所述当前任务处理模型的目标模型数据;从所述存储单元中获取所述目标模型数据。5.根据权利要求1所述的方法,所述从所述存储单元中获取所述当前任务处理模型的目标模型数据之前,还包括:对所述多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据;将所述各任务处理模型的模型数据存储至所述存储单元。6.根据权利要求5所述的方法,所述将所述各任务处理模型的模型数据存储至所述存储单元之前,还包括:在所述存储单元中创建固定内存;所述将所述各任务处理模型的模型数据存储至所述存储单元,包括:将所述各任务处理模型的模型数据存储至所述固定内存。7.根据权利要求5所述的方法,所述对所述多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型数据,包括:对所述多个任务处理模型的模型文件进行解析,确定各任务处理模型的模型配置信息
和模型权重信息;根据所述模型配置信息和所述模型权重信息,分别构建所述各任务处理模型对应的算子网络拓扑图;对所述算子网络拓扑图进行格式转换,确定各任务处理模型的模型数据。8.根据权利要求1所述的方法,所述任务处理请求携带所述多个任务处理模型的模型属性信息;所述对所述多个任务处理模型进行分析,确定当前任务处理模型的方式,包括:根据所述模型属性信息和所述多个任务处理模型中已完成任务处理模型,从所述多个任务处理模型中筛选出当前任务处理模型。9.根据权利要求1所述的方法,所述获得所述任务处理请求对应的任务处理结果之后,还包括:向客户端发送所述任务处理结果,以使所述客户端向用户展示所述任务处理结果。10.根据权利要求9所述的方法,向客户端发送所述任务处理结果之后,还包括:接收用户基于所述任务处理结果发送的后处理请求,并对所述后处理请求进行处理,获得所述后处理请求对应的后处理结果。11.一种自动问答方法,应用于任务处理平台中的控制单元,所述任务处理平台包括所述控制单元、存储单元和处理单元,所述方法包括:响应于问题处理请求,确定所述问题处理请求对应的多个任务处理模型;对所述多个任务处理模型进行分析,确定当前任务处理模型;从所述存储单元中获取所述当前任务处理模型的目标模型数据,并将所述目标模型数据拷贝至所述处理单元,以使所述处理单元基于所述目标模型数据生成所述当前任务处理模型的处理结果;在所述处理单元满足预设模型切换条件的情况下,从所述处理单元中释放所述目标模型数据,并返回执行所述对所述多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得所述问题处理请求对应的答复结果。12.一种图像生成方法,应用于任务处理平台中的控制单元,所述任务处理平台包括所述控制单元、存储单元和处理单元,所述方法包括:响应于图像生成请求,确定所述图像生成请求对应的多个任务处理模型;对所述多个任务处理模型进行分析,确定当前任务处理模型;从所述存储单元中获取所述当前任务处理模型的目标模型数据,并将所述目标模型数据拷贝至所述处理单元,以使所述处理单元基于所述目标模型数据生成所述当前任务处理模型的处理结果;在所述处理单元满足预设模型切换条件的情况下,从所述处理单元中释放所述目标模型数据,并返回执行所述对所述多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得所述图像生成请求对应的目标图像。13.一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至10任意一项或者权利要求11或
者权利要求12所述方法的步骤。14.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至10任意一项或者权利要求11或者权利要求12所述方法的步骤。

技术总结
本说明书实施例提供任务处理方法、自动问答方法以及图像生成方法,其中所述任务处理方法应用于任务处理平台中的控制单元,包括:响应于任务处理请求,确定任务处理请求对应的多个任务处理模型;对多个任务处理模型进行分析,确定当前任务处理模型;从存储单元中获取当前任务处理模型的目标模型数据,并将目标模型数据拷贝至处理单元,以使处理单元基于目标模型数据生成当前任务处理模型的处理结果;在处理单元满足预设模型切换条件的情况下,从处理单元中释放目标模型数据,并返回执行对多个任务处理模型进行分析,确定当前任务处理模型的步骤,直至达到预设停止条件,获得任务处理请求对应的任务处理结果。降低了任务处理过程的复杂度。的复杂度。的复杂度。


技术研发人员:张洁靖 陈不骄
受保护的技术使用者:阿里巴巴(中国)有限公司
技术研发日:2023.07.07
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐