CN115358401A - 一种推理服务的处理方法、装置、计算机设备及存储介质 - Google Patents
一种推理服务的处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN115358401A CN115358401A CN202211019473.7A CN202211019473A CN115358401A CN 115358401 A CN115358401 A CN 115358401A CN 202211019473 A CN202211019473 A CN 202211019473A CN 115358401 A CN115358401 A CN 115358401A
- Authority
- CN
- China
- Prior art keywords
- model
- service
- configuration
- inference
- target
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种推理服务的处理方法、装置、计算机设备及存储介质,包括:获取推理服务请求中的服务类型;根据服务类型,确定预设的初始服务配置中的目标服务配置;根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果。目标服务配置作为得到目标服务模型的核心变量,因此部署的推理模型可被不同的服务配置进行编排,从而得到不同的服务模型,实现了推理模型的复用;提高了AI芯片或AI显卡的利用率,降低了使用成本;此外,还避免了资源的浪费。
Description
技术领域
本发明涉及人工智能技术领域,具体涉及一种推理服务的处理方法、装置、计算机设备及存储介质。
背景技术
模型部署是指部署人员将需要的服务模型部署在平台上,该过程主要包括模型的数据压缩、提高并发、提高与平台的兼容性等,服务模型由一个或多个具体的AI(Artificial Intelligence,人工智能)推理模型组成;推理服务是指使用部署在平台上的目标服务模型对待推理数据进行推理并得到推理结果的过程。
现有技术中,都是基于具体的服务场景来进行对应的模型部署,比如服务场景为“图像中的字符识别”,该服务场景需要用到两个推理模型,则在模型部署时,会将这两个推理模型按照该服务场景所需要的模型参数在平台上进行部署,得到对应的服务模型,也即最终提供推理服务的服务模型是直接通过部署得到,该服务模型对应的两个推理模型只能应用在该服务场景中;导致部署的推理模型无法进行复用,由于推理模型基本都需要借助相应的AI芯片或AI显卡来提升推理性能,从而降低了AI芯片或AI显卡的利用率,由于AI芯片或AI显卡的成本较高,进而增加了使用成本;此外,由于无法复用,导致只能再次部署相应的推理模型来得到其他服务场景所需要的服务模型,造成了资源的浪费。
发明内容
针对现有技术中所存在的不足,本发明提供一种推理服务的处理方法、装置、计算机设备及存储介质。
第一方面,在一个实施例中,本发明提供一种推理服务的处理方法,包括:
获取推理服务请求中的服务类型;
根据服务类型,确定预设的初始服务配置中的目标服务配置;根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;
基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果。
在一个实施例中,在根据所述服务类型,确定预设的初始服务配置中的目标服务配置的步骤之前,上述推理服务的处理方法还包括:
获取预设的初始配置模板中的目标配置模板以及目标配置模板对应的目标配置参数;
根据目标配置参数,对目标配置模板进行参数设置,得到初始服务配置。
在一个实施例中,根据目标配置参数,对目标配置模板进行参数设置,得到初始服务配置,包括:
根据目标配置参数,对目标配置模板进行参数设置,得到中间服务配置;
根据中间服务配置中的模型类型配置,确定预先部署的初始推理模型中的中间推理模型;
根据中间服务配置中的模型编排配置,对中间推理模型进行编排,得到中间服务模型;
获取训练样本集,根据训练样本集对中间服务模型进行训练,得到训练好的中间服务模型;
根据训练好的中间服务模型的权重参数,对中间服务配置中的模型编排配置进行参数调整,得到初始服务配置,模型编排配置包括模型权重配置。
在一个实施例中,在获取预设的初始配置模板中的目标配置模板的步骤之前,上述推理服务的处理方法还包括:
获取模板构建数据;
根据模板构建数据,渲染得到初始配置模板;初始配置模板包括串行编排模板、分支编排模板、切分编排模板、聚合编排模板中的任意一个。
在一个实施例中,模型编排配置包括模型关系配置和模型权重配置;根据目标服务配置中的模型编排配置,对目标推理模型进行编排,包括:
根据目标服务配置中的模型关系配置,对多个目标推理模型进行模型组合;
根据目标服务配置中的模型权重配置,分别对多个目标推理模型进行权重设置。
在一个实施例中,基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果,包括:
调用目标服务模型中输入端推理模型的暴露接口,接收推理服务请求对应的待推理数据;
基于目标服务模型,对待推理数据进行推理,得到推理结果;
调用目标服务模型中输出端推理模型的暴露接口,发送推理结果。
在一个实施例中,在根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型的步骤之前,上述推理服务的处理方法还包括:
获取模型部署数据;
根据模型部署数据,部署得到初始推理模型;
设置初始推理模型的暴露接口。
第二方面,在一个实施例中,本发明提供一种推理服务的处理装置,包括:
类型获取模块,用于获取推理服务请求中的服务类型;
配置确定模块,用于根据服务类型,确定预设的初始服务配置中的目标服务配置;模型确定模块,用于根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
模型编排模块,用于根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;
数据推理模块,用于基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果。
第三方面,在一个实施例中,本发明提供一种计算机设备,包括存储器和处理器;存储器存储有计算机程序,处理器用于运行存储器内的计算机程序,以执行上述任一种实施例中的推理服务的处理方法中的步骤。
第四方面,在一个实施例中,本发明提供一种存储介质,存储介质存储有计算机程序,计算机程序被处理器进行加载,以执行上述任一种实施例中的推理服务的处理方法中的步骤。
通过上述推理服务的处理方法、装置、计算机设备及存储介质,预先部署的推理模型没有被限制在任何一个服务场景中,即推理模型是一个初始化的状态,当根据推理服务请求中的服务类型确定到目标服务配置后,即可根据目标服务配置对所需要的目标推理模型进行实时编排,从而得到对应的目标服务模型,从而基于目标服务模型完成推理服务;由于目标服务模型是根据目标服务配置实时编排得到,部署的目标推理模型作为基础,目标服务配置作为得到目标服务模型的核心变量,因此部署的推理模型可被不同的服务配置进行编排,从而得到不同的服务模型,实现了推理模型的复用;提高了AI芯片或AI显卡的利用率,降低了使用成本;此外,还避免了资源的浪费。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例中推理服务的处理方法的应用场景示意图;
图2为本发明一个实施例中计算机设备的内部结构示意图;
图3为本发明一个实施例中推理服务的处理方法的流程示意图;
图4为本发明一个实施例中推理服务的处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本发明实施例中的推理服务的处理方法应用于推理服务的处理装置,推理服务的处理装置设置于计算机设备;计算机设备可以是终端,例如,手机或平板电脑,计算机设备还可以是一台服务器,或者多台服务器组成的服务集群。
如图1所示,图1为本发明实施例中推理服务的处理方法的应用场景示意图,本发明实施例中推理服务的处理方法的应用场景中包括计算机设备100(计算机设备100中集成有推理服务的处理装置),计算机设备100中运行推理服务的处理方法对应的计算机可读存储介质,以执行推理服务的处理方法的步骤。
可以理解的是,图1所示推理服务的处理方法的应用场景中的计算机设备,或者计算机设备中包含的装置并不构成对本发明实施例的限制,即,推理服务的处理方法的应用场景中包含的设备数量、设备种类,或者各个设备中包含的装置数量、装置种类不影响本发明实施例中技术方案整体实现,均可以算作本发明实施例要求保护技术方案的等效替换或衍生。
本发明实施例中计算机设备100可以是独立的设备,也可以是设备组成的设备网络或设备集群,例如,本发明实施例中所描述的计算机设备100,其包括但不限于电脑、网络主机、单个网络设备、多个网络设备集或多个设备构成的云设备。其中,云设备由基于云计算(Cloud Computing)的大量电脑或网络设备构成。
本领域技术人员可以理解,图1中示出的应用场景,仅仅是与本发明的技术方案对应的一种应用场景,并不构成对本发明的技术方案的应用场景的限定,其他的应用场景还可以包括比图1中所示更多或更少的计算机设备,或者计算机设备网络连接关系,例如图1中仅示出1个计算机设备,可以理解的,该推理服务的处理方法的场景还可以包括一个或多个其他计算机设备,具体此处不作限定;该计算机设备100中还可以包括存储器,用于存储推理服务的处理方法相关的信息。
此外,本发明实施例中的推理服务的处理方法的应用场景中计算机设备100可以设置显示装置,或者计算机设备100中不设置显示装置并与外接的显示装置200通讯连接,显示装置200用于输出计算机设备中推理服务的处理方法执行的结果。计算机设备100可以访问后台数据库300(后台数据库300可以是计算机设备100的本地存储器,后台数据库300还可以设置在云端),后台数据库300中保存有推理服务的处理方法相关的信息。
需要说明的是,图1所示的推理服务的处理方法的应用场景仅仅是一个示例,本发明实施例描述的推理服务的处理方法的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定。
如图2所示,其示出了本发明所涉及的计算机设备的结构,具体来讲:
该计算机设备可以包括一个或者一个以上处理核心的处理器201、一个或一个以上计算机可读存储介质的存储器202、电源203和输入单元204等部件。本领域技术人员可以理解,图2中示出的计算机设备的结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器201是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器202内的软件程序和/或模块,以及调用存储在存储器202内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器201可包括一个或多个处理核心;优选的,处理器201可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和计算机程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器201中。
存储器202可用于存储软件程序以及模块,处理器201通过运行存储在存储器202的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器202可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的计算机程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器202可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器202还可以包括存储器控制器,以提供处理器201对存储器202的访问。
计算机设备还包括给各个部件供电的电源203,优选的,电源203可以通过电源管理***与处理器201逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源203还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该计算机设备还可包括输入单元204,该输入单元204可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
基于上述推理服务的处理方法的应用场景,提出了推理服务的处理方法的实施例。
第一方面,如图3所示,在一个实施例中,本发明提供一种推理服务的处理方法,包括:
步骤301,获取推理服务请求中的服务类型;
其中,本实施例主要用于提供线上的推理服务,即本实施例中的推理服务的处理方法的执行主体为服务方,服务方接收请求方发送的推理服务请求;
其中,服务类型主要是用于确定服务场景,从而才能够确定该服务场景对应的服务配置;请求方和服务方可预先约定服务类型的表示形式,从而当服务方获取到请求方发送的服务类型时,能够识别其表达的含义;具体的,服务方可预先提供每种初始服务配置各自对应的服务类型,请求方可发送针对某个服务类型的选择信息,从而服务方根据该选择信息将对应的服务类型确定为该服务处理请求中指定的服务类型;
其中,服务方和请求方可以通过HTTP协议(超文本传输协议HyperText TransferProtoco,它是基于TCP协议的应用层传输协议,简单来说就是客户端和服务端进行数据传输的一种规则)来发送和接收推理服务请求,即推理服务请求为http请求(http请求包括http请求行、http请求头和http请求正文),在该http请求中,服务类型对应数据存放在http请求正文中;
步骤302,根据服务类型,确定预设的初始服务配置中的目标服务配置;
其中,服务类型和服务配置是对应的,服务类型可作为服务配置的代号标识;具体的,可预先构建服务配置库,服务配置库中包含多个初始服务配置以及每个初始服务配置各自对应的初始服务类型,从而可根据推理服务请求中的服务类型在服务配置库中匹配对应的初始服务类型,然后将初始服务类型对应的初始服务配置设置为本次推理服务需要的目标服务配置;比如获取到的服务类型表征的服务场景为“图像的轮廓检测”,则可确定到“图像的轮廓检测”对应的目标服务配置;
其中,服务配置包括模型类型配置以及模型编排配置;模型类型配置主要是指定需要用到的推理模型的模型类型,而模型编排配置主要是指定推理模型到服务模型的实现过程中所需要的各项参数;
步骤303,根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
其中,模型类型配置中的模型类型和推理模型是对应的,模型类型可作为推理模型的代号标识;具体的,可预先构建推理模型库,推理模型库中包含多个初始推理模型以及每个初始推理模型各自对应的初始模型类型(需要说明的是,推理模型库仅仅用于解释本实施例的一种实施方法,而非将每个推理模型保存在推理模型库中,实际上,每个推理模型都已经部署在服务方的平台上),从而可根据模型类型配置中的每个模型类型在推理模型库中匹配对应的初始模型类型,然后将初始模型类型对应的初始推理模型设置为对应的目标推理类型;比如得到“图像的轮廓检测”的目标服务配置,则对应的模型类型配置为实现“图像的轮廓检测”所需要用到的目标推理模型,比如为推理模型A;
步骤304,根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;
其中,确定到的目标推理模型仅仅是一个初始化的状态,其权重参数为“可编辑”的状态,在未编辑时,目标推理模型无法正常执行或者执行效果远不如预期(该情况主要是指存在一个初始化的权重参数),因此,当确定到模型编排配置时,即可根据其中的权重参数来对目标推理模型进行参数设置,从而得到对应的目标服务模型;具体的,比如目标推理模型只包括推理模型A,则模型编排配置中只包含推理模型A的权重参数,然后根据该权重参数对推理模型A进行参数设置,得到设有权重参数的推理模型A,即目标服务模型,在该举例中,目标服务模型只由一个推理模型组成,当然在其他实施例中,目标推理模型还可以由两个或以上的推理模型组成,具体取决于对应的服务场景;
步骤305,基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果;
其中,得到目标服务模型后,即可进行推理服务,比如以上述“图像的轮廓检测”的服务场景为例,待推理数据即为待检测图像,推理结果即为待检测图像对应的轮廓图像;
其中,待推理数据可以直接被包含在上述的推理服务请求中(在该方式中,需要通过解析推理服务请求来获取该待推理数据),也可以存储在某个地址中,而该地址被包含在请求方发送的推理服务请求中,从而可以降低推理服务请求的数据量,并且当该地址与服务方之间的通讯链路较近时,能够节省传输资源。
通过上述推理服务的处理方法,预先部署的推理模型没有被限制在任何一个服务场景中,即推理模型是一个初始化的状态,当根据推理服务请求中的服务类型确定到目标服务配置后,即可根据目标服务配置对所需要的目标推理模型进行实时编排,从而得到对应的目标服务模型,从而基于目标服务模型完成推理服务;由于目标服务模型是根据目标服务配置实时编排得到,部署的目标推理模型作为基础,目标服务配置作为得到目标服务模型的核心变量,因此部署的推理模型可被不同的服务配置进行编排,从而得到不同的服务模型,实现了推理模型的复用;提高了AI芯片或AI显卡的利用率,降低了使用成本;此外,还避免了资源的浪费。
在一个实施例中,在根据所述服务类型,确定预设的初始服务配置中的目标服务配置的步骤之前,上述推理服务的处理方法还包括:
获取预设的初始配置模板中的目标配置模板以及目标配置模板对应的目标配置参数;
其中,服务方人员可通过可视化管理界面的方式,来构建后续推理服务所需要用到的初始服务配置;具体的,该可视化管理界面中预设有多个初始配置模板,每个初始配置模板都采用DAG(Directed acyclic graph,有向无环图)的逻辑方式,服务方人员可根据需要的服务场景选择对应的初始配置模板,比如通过鼠标输入一个针对可视化管理界面中某个初始配置模板的点击指令,从而将该初始配置模板设置为目标配置模板;同理的,服务方人员可根据需要的服务场景来输入相应的目标配置参数,具体的,可直接通过键盘和/或鼠标输入完整的目标配置参数,也可以选择界面提供的多个典型配置参数的一种来作为目标配置参数,在此不做限定;
根据目标配置参数,对目标配置模板进行参数设置,得到初始服务配置;
其中,服务方人员通常是基于选择的目标配置模板来输入对应的目标配置参数,DAG是由顶点和有向边构成的一种图状结构,在该图中,选定一个顶点v开始,沿着有序的边寻路,最终是无法回到顶点v的,即不会形成环状;目标配置参数可具体表征DAG中包含顶点在内的每个节点对应的含义,以及各节点之间的有向边关系;比如最终期望得到的目标服务模型由推理模型A、推理模型B、推理模型C以及推理模型D组成,且实现过程包括:将待推理数据输入到推理模型A中,然后得到推理模型A输出的第一结果后,将第一结果分别输入到推理模型B和推理模型C中,然后分别得到推理模型B输出的第二结果和推理模型C输出的第三结果,最终将第二结果和第三结果输入到推理模型D中,然后得到推理模型D输出的推理结果;则在DAG中,对应有四个节点,分别为节点A、节点B、节点C以及节点D,这四个节点分别表征推理模型A(包括推理模型A的权重参数)、推理模型B(包括推理模型B的权重参数)、推理模型C(包括推理模型C的权重参数)以及推理模型D(包括推理模型D的权重参数),然后节点A作为顶点分别与节点B和节点C连接,节点B和节点C再分别与节点D连接,而包含上述信息的DAG作为所需要的初始服务配置,在后续将该初始服务配置确定为目标服务配置后,即可根据目标服务配置得到对应的目标服务模型;而服务方人员实质在于构建上述性质的DAG,具体的,目标配置模板为一个空白的DAG,空白的DAG具有一定数量的节点且各节点之间具有一定的有向边关系,服务方人员则通过调整空白的DAG的节点数量,以及节点之间的有向边关系,并且设置每个节点所表征的含义,最终构建得到一个初始服务配置;
其中,服务方人员在进行参数设置时,还需要以责任链模式(定义:为了避免请求发送者与多个请求处理者耦合在一起,于是将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止)添加自定义的业务逻辑中间价,从而保证后续能够根据服务配置可靠的得到服务模型;
其中,服务方人员在设置每个节点的权重参数时,输入的权重参数可以是已经训练好的,也即服务方人员可在其他平台或***中部署该目标服务模型,然后对其进行训练,最终得到训练好的目标服务模型以及训练好的目标服务模型对应的权重参数,然后直接根据该权重参数设置各节点的权重参数。
通过可视化管理界面的方式,并开发对应的初始配置模板,使得在后续创建初始服务配置时,能够更加高效,节省人力成本。
在一个实施例中,根据目标配置参数,对目标配置模板进行参数设置,得到初始服务配置,包括:
根据目标配置参数,对目标配置模板进行参数设置,得到中间服务配置;
其中,上述实施例提到,目标配置参数中的权重参数可以是训练好的;而在本实施例中,目标配置参数中的权重参数可以是未训练的,因此需要在本平台中调用对应的推理模型进行训练;具体的,服务方人员可以输入一个初始的权重参数进行参数设置,从而得到一个中间服务配置(在本实施例中,没有侧重描述模型类型以及有向边关系,具体细节可参考上述实施例);
根据中间服务配置中的模型类型配置,确定预先部署的初始推理模型中的中间推理模型;
根据中间服务配置中的模型编排配置,对中间推理模型进行编排,得到中间服务模型;
其中,根据中间服务配置来得到对应的中间服务模型,其具体过程可参考上述实施例中“根据目标服务配置来得到对应的目标服务模型”的具体过程,两者实质步骤基本一致,在此不再赘述;
获取训练样本集,根据训练样本集对中间服务模型进行训练,得到训练好的中间服务模型;
其中,训练样本集可以采用公开的样本,训练的目的在于使模型的输出满足期望要求;
根据训练好的中间服务模型的权重参数,对中间服务配置进行参数调整,得到初始服务配置;
其中,对中间服务配置进行参数调整主要是针对中间服务配置中的权重参数部分,调整权重参数后,中间服务配置中的权重参数即为训练好的权重参数,因此即可直接将中间服务配置确定为对应的初始服务配置。
在一个实施例中,获取训练样本集,根据训练样本集对中间服务模型进行训练,得到训练好的中间服务模型,包括:
获取训练样本集,训练样本集中包括由多个训练样本,每个训练样本包括训练待推理数据和训练推理结果;
其中,训练推理结果由训练待推理数据经过人工处理得到;
获取一个训练样本,将训练待推理数据作为中间服务模型的输入,将训练推理结果作为中间服务模型的期望输出,对中间服务模型进行训练,即完成一次训练;
确定中间服务模型的实际输出与期望输出的比对结果,若比对结果不满足要求时,根据比对结果更新中间服务模型的模型参数;
获取下一个训练样本,然后重新进入将训练待推理数据作为中间服务模型的输入,将训练推理结果作为中间服务模型的期望输出,对中间服务模型进行训练的步骤,直至得到的比对结果满足要求时,停止训练,得到训练好的中间服务模型。
在一个实施例中,确定中间服务模型的实际输出与期望输出的比对结果,若比对结果不满足要求时,根据比对结果更新中间服务模型的模型参数,包括:
确定中间服务模型的实际输出与期望输出的比对差值,根据比对差值计算得到损失值;
若损失值不满足预设收敛条件时,根据损失值更新中间服务模型的模型参数。
在一个实施例中,在获取预设的初始配置模板中的目标配置模板的步骤之前,上述推理服务的处理方法还包括:
获取模板构建数据;
其中,上述已经提到,服务方人员可通过选择可视化管理界面中的配置模板来得到对应的初始服务配置,因此在此之前还需要构建可视化管理界面中的配置模板;具体的,由于配置模板实质是空白的DAG,因此服务方人员可通过图元编辑的方式来构建配置模板,模板构建数据则是指在构建的过程中,服务方人员输入的各种指令或参数;
根据模板构建数据,渲染得到初始配置模板;
其中,可视化管理界面实时根据服务方人员输入的各种指令或参数在对应的编辑界面进行实时渲染,当服务方人员完成所有指令或参数的输入后,即可渲染得到对应的初始配置模板;
其中,初始配置模板包括串行编排模板、分支编排模板、切分编排模板、聚合编排模板中的任意一个。
在一个实施例中,模型编排配置包括模型关系配置和模型权重配置;根据目标服务配置中的模型编排配置,对目标推理模型进行编排,包括:
根据目标服务配置中的模型关系配置,对多个目标推理模型进行模型组合;
其中,上述已经提到,目标服务配置是以DAG的形式存在,因此当对应的目标服务模型由多个推理模型组成时,在DAG中会存在多个节点,除了需要设置各节点的含义(包括模型类型(即模型类型配置)以及权重参数(即本实施例中的模型权重配置))之外,还需要针对多个节点设置各节点之间的有向边关系,即为本实施例中的模型关系配置;若目标服务模型只由一个推理模型组成,则DAG中只存在一个节点,因此也无需考虑节点之间的有向边关系;
根据目标服务配置中的模型权重配置,分别对多个目标推理模型进行权重设置;
其中,模型权重配置主要是用于设置推理模型的权重参数,具体细节可参考上述实施例,在此不再赘述。
在一个实施例中,基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果,包括:
调用目标服务模型中输入端推理模型的暴露接口,接收推理服务请求对应的待推理数据;
其中,暴露接口为http标准推理接口,每个初始推理模型都存在对应的暴露接口,当目标服务模型由多个推理模型组成时,用于最先对待推理数据进行处理的推理模型即为输入端推理模型;比如最终期望得到的目标服务模型由推理模型A、推理模型B、推理模型C以及推理模型D组成,且实现过程包括:将待推理数据输入到推理模型A中,然后得到推理模型A输出的第一结果后,将第一结果分别输入到推理模型B和推理模型C中,然后分别得到推理模型B输出的第二结果和推理模型C输出的第三结果,最终将第二结果和第三结果输入到推理模型D中,然后得到推理模型D输出的推理结果;则推理模型A为输入端推理模型,当得到该目标服务模型后,即可调用推理模型A的暴露接口,直接接收请求方发送的待推理数据;
基于目标服务模型,对待推理数据进行推理,得到推理结果;
调用目标服务模型中输出端推理模型的暴露接口,发送推理结果;
其中,同理的,当目标服务模型由多个推理模型组成时,用于最后对待推理数据进行处理并得到推理结果的推理模型即为输出端推理模型;以上个步骤的举例为例,推理模型D为输出端推理模型,用于将推理结果发送至请求方;
其中,需要注意的是,当目标服务模型由一个推理模型组成时,则该推理模型即作为输入端推理模型,也作为输出端推理模型,待推理数据的接收以及推理结果的发送都通过该推理模型的暴露接口;
其中,当存在暴露接口时,待处理数据无需被包含在推理服务请求中,也无需存储在某个地址中。
在一个实施例中,在根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型的步骤之前,上述推理服务的处理方法还包括:
获取模型部署数据;
根据模型部署数据,部署得到初始推理模型;
其中,模型部署主要是遵循数据压缩、提高并发、提高与平台的兼容性等要求,在平台上装配对应的模型;模型部署的具体过程可参考现有技术,在此不再赘述;
设置初始推理模型的暴露接口;
其中,设置暴露接口用于实现后续待推理数据的接收以及推理结果的发送,具体细节可参考上述实施例,在此不再赘述。
第二方面,如图4所示,在一个实施例中,本发明提供一种推理服务的处理装置,包括:
类型获取模块401,用于获取推理服务请求中的服务类型;
配置确定模块402,用于根据服务类型,确定预设的初始服务配置中的目标服务配置;
模型确定模块403,用于根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
模型编排模块404,用于根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;
数据推理模块405,用于基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果。
通过上述推理服务的处理装置,预先部署的推理模型没有被限制在任何一个服务场景中,即推理模型是一个初始化的状态,当根据推理服务请求中的服务类型确定到目标服务配置后,即可根据目标服务配置对所需要的目标推理模型进行实时编排,从而得到对应的目标服务模型,从而基于目标服务模型完成推理服务;由于目标服务模型是根据目标服务配置实时编排得到,部署的目标推理模型作为基础,目标服务配置作为得到目标服务模型的核心变量,因此部署的推理模型可被不同的服务配置进行编排,从而得到不同的服务模型,实现了推理模型的复用;提高了AI芯片或AI显卡的利用率,降低了使用成本;此外,还避免了资源的浪费。
在一个实施例中,上述推理服务的处理装置还包括:
配置设置模块,用于在根据所述服务类型,确定预设的初始服务配置中的目标服务配置的步骤之前,获取预设的初始配置模板中的目标配置模板以及目标配置模板对应的目标配置参数;根据目标配置参数,对目标配置模板进行参数设置,得到初始服务配置。
在一个实施例中,配置设置模块具体用于根据目标配置参数,对目标配置模板进行参数设置,得到中间服务配置;根据中间服务配置中的模型类型配置,确定预先部署的初始推理模型中的中间推理模型;根据中间服务配置中的模型编排配置,对中间推理模型进行编排,得到中间服务模型;获取训练样本集,根据训练样本集对中间服务模型进行训练,得到训练好的中间服务模型;根据训练好的中间服务模型的权重参数,对中间服务配置中的模型编排配置进行参数调整,得到初始服务配置,模型编排配置包括模型权重配置。
在一个实施例中,上述推理服务的处理装置还包括:
模板设置模块,用于在获取预设的初始配置模板中的目标配置模板的步骤之前,获取模板构建数据;根据模板构建数据,渲染得到初始配置模板;初始配置模板包括串行编排模板、分支编排模板、切分编排模板、聚合编排模板中的任意一个。
在一个实施例中,模型编排配置包括模型关系配置和模型权重配置;模型编排模块具体用于根据目标服务配置中的模型关系配置,对多个目标推理模型进行模型组合;根据目标服务配置中的模型权重配置,分别对多个目标推理模型进行权重设置。
在一个实施例中,数据推理模块具体用于调用目标服务模型中输入端推理模型的暴露接口,接收推理服务请求对应的待推理数据;基于目标服务模型,对待推理数据进行推理,得到推理结果;调用目标服务模型中输出端推理模型的暴露接口,发送推理结果。
在一个实施例中,上述推理服务的处理装置还包括:
模型部署模块,用于在根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型的步骤之前,获取模型部署数据;根据模型部署数据,部署得到初始推理模型;设置初始推理模型的暴露接口。
第三方面,在一个实施例中,本发明提供一种计算机设备,具体在本实施例中,计算机设备中的处理器201会按照如下的指令,将一个或一个以上的计算机程序的进程对应的可执行文件加载到存储器202中,并由处理器201来运行存储在存储器202中的计算机程序,以执行如下步骤:
获取推理服务请求中的服务类型;
根据服务类型,确定预设的初始服务配置中的目标服务配置;根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;
基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果。
通过上述计算机设备,预先部署的推理模型没有被限制在任何一个服务场景中,即推理模型是一个初始化的状态,当根据推理服务请求中的服务类型确定到目标服务配置后,即可根据目标服务配置对所需要的目标推理模型进行实时编排,从而得到对应的目标服务模型,从而基于目标服务模型完成推理服务;由于目标服务模型是根据目标服务配置实时编排得到,部署的目标推理模型作为基础,目标服务配置作为得到目标服务模型的核心变量,因此部署的推理模型可被不同的服务配置进行编排,从而得到不同的服务模型,实现了推理模型的复用;提高了AI芯片或AI显卡的利用率,降低了使用成本;此外,还避免了资源的浪费。
本领域普通技术人员可以理解,上述实施例的任一种方法中的全部或部分步骤可以通过计算机程序来完成,或通过计算机程序控制相关的硬件来完成,该计算机程序可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
第四方面,在一个实施例中,本发明提供一种存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行如下步骤:
获取推理服务请求中的服务类型;
根据服务类型,确定预设的初始服务配置中的目标服务配置;根据目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
根据目标服务配置中的模型编排配置,对目标推理模型进行编排,得到目标服务模型;
基于目标服务模型,对推理服务请求对应的待推理数据进行推理,得到推理结果。
通过上述存储介质,预先部署的推理模型没有被限制在任何一个服务场景中,即推理模型是一个初始化的状态,当根据推理服务请求中的服务类型确定到目标服务配置后,即可根据目标服务配置对所需要的目标推理模型进行实时编排,从而得到对应的目标服务模型,从而基于目标服务模型完成推理服务;由于目标服务模型是根据目标服务配置实时编排得到,部署的目标推理模型作为基础,目标服务配置作为得到目标服务模型的核心变量,因此部署的推理模型可被不同的服务配置进行编排,从而得到不同的服务模型,实现了推理模型的复用;提高了AI芯片或AI显卡的利用率,降低了使用成本;此外,还避免了资源的浪费。
本领域普通技术人员可以理解,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
由于该存储介质中所存储的计算机程序,可以执行本发明所提供的任一种实施例中的推理服务的处理方法中的步骤,因此,可以实现本发明所提供的任一种实施例中的推理服务的处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
以上对本发明所提供的一种推理服务的处理方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
Claims (10)
1.一种推理服务的处理方法,其特征在于,包括:
获取推理服务请求中的服务类型;
根据所述服务类型,确定预设的初始服务配置中的目标服务配置;根据所述目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
根据所述目标服务配置中的模型编排配置,对所述目标推理模型进行编排,得到目标服务模型;
基于所述目标服务模型,对所述推理服务请求对应的待推理数据进行推理,得到推理结果。
2.根据权利要求1所述的推理服务的处理方法,其特征在于,在所述根据所述服务类型,确定预设的初始服务配置中的目标服务配置的步骤之前,还包括:
获取预设的初始配置模板中的目标配置模板以及所述目标配置模板对应的目标配置参数;
根据所述目标配置参数,对所述目标配置模板进行参数设置,得到所述初始服务配置。
3.根据权利要求2所述的推理服务的处理方法,其特征在于,所述根据所述目标配置参数,对所述目标配置模板进行参数设置,得到所述初始服务配置,包括:
根据所述目标配置参数,对所述目标配置模板进行参数设置,得到中间服务配置;
根据所述中间服务配置中的模型类型配置,确定预先部署的初始推理模型中的中间推理模型;
根据所述中间服务配置中的模型编排配置,对所述中间推理模型进行编排,得到中间服务模型;
获取训练样本集,根据所述训练样本集对所述中间服务模型进行训练,得到训练好的中间服务模型;
根据所述训练好的中间服务模型的权重参数,对所述中间服务配置中的模型编排配置进行参数调整,得到所述初始服务配置,模型编排配置包括模型权重配置。
4.根据权利要求2所述的推理服务的处理方法,其特征在于,在所述获取预设的初始配置模板中的目标配置模板的步骤之前,还包括:
获取模板构建数据;
根据所述模板构建数据,渲染得到所述初始配置模板;所述初始配置模板包括串行编排模板、分支编排模板、切分编排模板、聚合编排模板中的任意一个。
5.根据权利要求1所述的推理服务的处理方法,其特征在于,模型编排配置包括模型关系配置和模型权重配置;所述根据所述目标服务配置中的模型编排配置,对所述目标推理模型进行编排,包括:
根据所述目标服务配置中的模型关系配置,对多个所述目标推理模型进行模型组合;
根据所述目标服务配置中的模型权重配置,分别对多个所述目标推理模型进行权重设置。
6.根据权利要求1所述的推理服务的处理方法,其特征在于,所述基于所述目标服务模型,对所述推理服务请求对应的待推理数据进行推理,得到推理结果,包括:
调用所述目标服务模型中输入端推理模型的暴露接口,接收所述推理服务请求对应的待推理数据;
基于所述目标服务模型,对所述待推理数据进行推理,得到所述推理结果;
调用所述目标服务模型中输出端推理模型的暴露接口,发送所述推理结果。
7.根据权利要求6所述的推理服务的处理方法,其特征在于,在所述根据所述目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型的步骤之前,还包括:
获取模型部署数据;
根据所述模型部署数据,部署得到所述初始推理模型;
设置所述初始推理模型的暴露接口。
8.一种推理服务的处理装置,其特征在于,包括:
类型获取模块,用于获取推理服务请求中的服务类型;
配置确定模块,用于根据所述服务类型,确定预设的初始服务配置中的目标服务配置;模型确定模块,用于根据所述目标服务配置中的模型类型配置,确定预先部署的初始推理模型中的目标推理模型;
模型编排模块,用于根据所述目标服务配置中的模型编排配置,对所述目标推理模型进行编排,得到目标服务模型;
数据推理模块,用于基于所述目标服务模型,对所述推理服务请求对应的待推理数据进行推理,得到推理结果。
9.一种计算机设备,其特征在于,包括存储器和处理器;所述存储器存储有计算机程序,所述处理器用于运行所述存储器内的所述计算机程序,以执行权利要求1至7任一项所述的推理服务的处理方法中的步骤。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的推理服务的处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211019473.7A CN115358401A (zh) | 2022-08-24 | 2022-08-24 | 一种推理服务的处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211019473.7A CN115358401A (zh) | 2022-08-24 | 2022-08-24 | 一种推理服务的处理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115358401A true CN115358401A (zh) | 2022-11-18 |
Family
ID=84005582
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211019473.7A Pending CN115358401A (zh) | 2022-08-24 | 2022-08-24 | 一种推理服务的处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115358401A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116560756A (zh) * | 2023-07-12 | 2023-08-08 | 鹏城实验室 | 服务编排方法、电子设备、计算机可读存储介质 |
CN116594846A (zh) * | 2023-07-14 | 2023-08-15 | 支付宝(杭州)信息技术有限公司 | 推理服务监控方法及装置 |
-
2022
- 2022-08-24 CN CN202211019473.7A patent/CN115358401A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116560756A (zh) * | 2023-07-12 | 2023-08-08 | 鹏城实验室 | 服务编排方法、电子设备、计算机可读存储介质 |
CN116560756B (zh) * | 2023-07-12 | 2024-04-16 | 鹏城实验室 | 服务编排方法、电子设备、计算机可读存储介质 |
CN116594846A (zh) * | 2023-07-14 | 2023-08-15 | 支付宝(杭州)信息技术有限公司 | 推理服务监控方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12038976B2 (en) | Model pushing method and device, model requesting method and device, storage medium and electronic device | |
CN115358401A (zh) | 一种推理服务的处理方法、装置、计算机设备及存储介质 | |
CN112036577B (zh) | 基于数据形式的应用机器学习的方法、装置和电子设备 | |
CN109754072B (zh) | 网络离线模型的处理方法、人工智能处理装置及相关产品 | |
CN112351076B (zh) | 推荐***api的生成方法、装置、电子设备及存储介质 | |
CN115373861B (zh) | Gpu资源调度方法、装置、电子设备及存储介质 | |
US20170139684A1 (en) | General modeling method to construct system models based on a system meta model | |
CN115297008B (zh) | 基于智算网络的协同训练方法、装置、终端及存储介质 | |
CN111435367A (zh) | 知识图谱的构建方法、***、设备及存储介质 | |
CN114610272A (zh) | Ai模型生成方法、电子设备及存储介质 | |
CN112256444B (zh) | 基于dag的业务处理方法、装置、服务器及存储介质 | |
CN115509754A (zh) | 一种业务数据处理方法、装置、电子设备及存储介质 | |
CN113608751B (zh) | 推理服务平台的运行方法、装置、设备及存储介质 | |
CN113031929B (zh) | 一种业务的实现方法及装置 | |
CN116137570B (zh) | 基于区块链的数字藏品处理方法、装置、设备及存储介质 | |
CN110377769B (zh) | 基于图数据结构的建模平台***、方法、服务器及介质 | |
CN116932147A (zh) | 流式作业处理方法、装置、电子设备及介质 | |
CN114581241A (zh) | 智能合约的处理方法和装置、处理器及电子设备 | |
CN112230911B (zh) | 模型部署方法、装置、计算机设备和存储介质 | |
CN115708061A (zh) | 服务器部署模型的方法、模型处理方法和装置 | |
CN113868139A (zh) | 造数准确度分析方法、装置、电子设备和存储介质 | |
CN114327399B (zh) | 分布式训练方法、装置、计算机设备、存储介质和产品 | |
US20240004698A1 (en) | Distributed process engine in a distributed computing environment | |
CN115480745B (zh) | 基于配置文件的代码生成方法及装置 | |
CN111208980B (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 |