CN117075915A - 一种张量流模型的转化方法、***、装置及可读存储介质 - Google Patents
一种张量流模型的转化方法、***、装置及可读存储介质 Download PDFInfo
- Publication number
- CN117075915A CN117075915A CN202310944731.0A CN202310944731A CN117075915A CN 117075915 A CN117075915 A CN 117075915A CN 202310944731 A CN202310944731 A CN 202310944731A CN 117075915 A CN117075915 A CN 117075915A
- Authority
- CN
- China
- Prior art keywords
- model
- file
- flow model
- tensor flow
- tensor
- 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
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000005457 optimization Methods 0.000 claims abstract description 12
- 230000001131 transforming effect Effects 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 13
- 230000009466 transformation Effects 0.000 claims description 11
- 230000000977 initiatory effect Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 8
- 230000008676 import Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000013473 artificial intelligence Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- GPRLSGONYQIRFK-MNYXATJNSA-N triton Chemical compound [3H+] GPRLSGONYQIRFK-MNYXATJNSA-N 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出的一种张量流模型的转化方法、***、装置及可读存储介质,所述方法包括:通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求;导出张量流模型的目录信息,根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址,生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求;利用张量流模型的目录信息检测ONNX文件是否存在,如果存在,则通过模型优化工具将ONNX文件转化为相应的推理模型文件;利用张量流模型的目录信息确认推理模型文件转化成功。本发明通过将张量流模型转化为高性能推理模型,有效提升了部署推理服务的推理效率,以及用户的使用效率和体验。
Description
技术领域
本发明涉及计算机技术领域,更具体的说是涉及一种张量流模型的转化方法、***、装置及可读存储介质。
背景技术
随着人工智能平台相关应用在互联网行业的广泛使用,互联网公司对于人工智能平台的需求也日渐提升。大量互联网公司均搭建了公开对外或对内使用的人工智能平台,这些平台大多基于Kubernetes调度平台集成模型库,支持包括Tensorflow和Pytorch等引擎的训练和推理,以满足公司内部的需求。
目前的人工智能平台中,模型方式支持模型查询,模型导入,模型导出,模型校验及模型删除等功能,可以通过扩充人工智能平台内置的模型引擎支持对新增框架模型的版本部署。用户在模型部署时可按模型需求选择对应的模型框架进行服务部署,目前模型部署支持的框架类型包括pytorch、Tensorflow、triton、onnx和tvm,支持的功能如图1所示。
但是,这类人工智能平台不会针对张量流模型(Tensorflow模型)的部署进行相应的适配性处理,这使得张量流模型框架在缺乏相应插件集成的情况下难以发挥其真正作用,从客观层面来讲不利于效率的提升。目前在张量流模型部署层面常使用TensorflowServing框架模型版本导入Tensorflow SavedModel格式的模型进行部署,其在使用过程中虽然可提供较为稳定且兼容性高的模型部署,但对于模型的推理性能及效率的提升较为有限,难以达到高性能推理的效果。
发明内容
针对以上问题,本发明的目的在于提供一种张量流模型的转化方法、***、装置及可读存储介质,通过将张量流模型转化为高性能推理模型,有效提升了部署推理服务的推理效率,以及用户的使用效率和体验。
本发明为实现上述目的,通过以下技术方案实现:
第一方面,本发明公开了一种张量流模型的转化方法,包括:
通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求;
响应于接收到模型转化请求,导出张量流模型的目录信息;
启动模型转化流程;
根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址;生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求;
利用张量流模型的目录信息检测ONNX文件是否存在;
若不存在,则进行报错后直接退出;若存在,则通过模型优化工具将ONNX文件转化为相应的推理模型文件;
利用张量流模型的目录信息检测相应的推理模型文件是否存在;
若不存在,则进行报错后直接退出;若存在,则转化完成。
进一步,所述启动模型转化流程,包括:
在转化模式选择列表中,选择转化模式为推理模型转化,并将转化状态设置为进行中。
进一步,所述根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址,包括:
根据模型转化请求的主键从数据库取出相应的张量流模型的目录信息;
将张量流模型的导入和导出地址转化为在容器中的挂载点地址。
进一步,所述生成将张量流模型转为ONNX文件的控制台语句,包括:根据容器内挂载点地址,使用注解获得当前服务器配置下的容器信息,并将其注入到对应属性上,以生成控制台语句;
通过控制台语句将张流量模型转化为ONNX文件。
进一步,所述利用张量流模型的目录信息检测ONNX文件是否存在,包括:
利用张量流模型的目录信息获取相应的挂载点地址;
检测挂载点地址上是否关联有ONNX文件;
若是,则ONNX文件存在;否则ONNX文件不存在。
进一步,所述利用张量流模型的目录信息检测相应的优化模型文件是否存在,包括:
利用张量流模型的目录信息获取相应的挂载点地址;
检测挂载点地址上是否关联有推理模型文件;
若是,则推理模型文件存在;否则推理模型文件不存在。
进一步,所述容器信息包括:容器的名称、所在的服务器地址、挂载的网络文件***地址。
第二方面,本发明还公开了一种张量流模型的转化***,包括:
请求发起单元,配置用于通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求;
目录导出单元,配置用于响应于接收到模型转化请求,导出张量流模型的目录信息;
转化启动单元,配置用于启动模型转化流程;
地址转化单元,配置用于根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址;
指令生成单元,配置用于生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求;
第一文件检测单元,配置用于利用张量流模型的目录信息检测ONNX文件是否存在;
文件转化单元,配置用于当第一文件检测单元检测到ONNX文件存在时,通过模型优化工具将ONNX文件转化为相应的推理模型文件;
第二文件检测单元,配置用于利用张量流模型的目录信息检测相应的推理模型文件是否存在;
报警单元,配置用于当第一文件检测单元未检测到ONNX文件或第二文件检测单元未检测到推理模型文件时,进行报错后直接退出。
进一步,所述转化启动单元具体用于:在转化模式选择列表中,选择转化模式为推理模型转化,并将转化状态设置为进行中。
进一步,所述地址转化单元具体用于:根据模型转化请求的主键从数据库取出相应的张量流模型的目录信息;将张量流模型的导入和导出地址转化为在容器中的挂载点地址。
进一步,所述文件转化单元具体用于:根据容器内挂载点地址,使用注解获得当前服务器配置下的容器信息,并将其注入到对应属性上,以生成控制台语句;通过控制台语句将张流量模型转化为ONNX文件。
进一步,所述第一文件检测单元具体用于:利用张量流模型的目录信息获取相应的挂载点地址;检测挂载点地址上是否关联有ONNX文件;若是,则ONNX文件存在;否则ONNX文件不存在。
进一步,所述第二文件检测单元具体用于:利用张量流模型的目录信息获取相应的挂载点地址;检测挂载点地址上是否关联有推理模型文件;若是,则推理模型文件存在;否则推理模型文件不存在。
第三方面,本发明还公开了一种张量流模型的转化装置,包括:
存储器,用于存储张量流模型的转化程序;
处理器,用于执行所述张量流模型的转化程序时实现如上文任一项所述张量流模型的转化方法的步骤。
第四方面,本发明还公开了一种可读存储介质,所述可读存储介质上存储有张量流模型的转化程序,所述张量流模型的转化程序被处理器执行时实现如上文任一项所述张量流模型的转化方法的步骤。
对比现有技术,本发明有益效果在于:本发明公开了一种张量流模型的转化方法、***、装置及可读存储介质,通过在容器内进行相应的转化配置,生成控制台语句将张量流模型转为ONNX文件,从而使用该镜像最终完成张量流模型转化为高性能推理模型的功能。用户可以使用转化后的高性能推理模型进行训练和推理服务的有效部署,达到高性能推理的效果。本发明通过将已有的张量流模型转化为高性能推理模型,有效的压低了用户的模型训练时间,提升了部署推理服务的推理效率,令用户可以轻松使用已有的模型进行高效的推理工作,以提升用户的使用效率和体验。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明背景技术中的人工智能平台的功能示意图。
图2是本发明具体实施方式中一种张量流模型的转化方法的方法流程图。
图3是本发明具体实施方式中一种张量流模型的转化***的***结构图。
图4是本发明具体实施方式中一种张量流模型的转化装置的结构示意图。
图中,1、请求发起单元;2、目录导出单元;3、转化启动单元;4、地址转化单元;5、指令生成单元;6、第一文件检测单元;7、文件转化单元;8、第二文件检测单元;9、报警单元;101、处理器;102、存储器;103、输入接口;104、输出接口;105、通讯单元;106、键盘;107、显示器;108、鼠标。
具体实施方式
本发明的核心是提供一种张量流模型的转化方法,相关技术中,在张量流模型部署层面常使用Tensorflow Serving框架模型版本导入Tensorflow SavedModel格式的模型进行部署,其在使用过程中虽然可提供较为稳定且兼容性高的模型部署,但对于模型的推理性能及效率的提升较为有限,难以达到高性能推理的效果。
而本发明提供的张量流模型的转化方法,首先,通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求。然后,导出张量流模型的目录信息,根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址,生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求。此时,利用张量流模型的目录信息检测ONNX文件是否存在,如果存在,则通过模型优化工具将ONNX文件转化为相应的推理模型文件。最后,利用张量流模型的目录信息确认推理模型文件转化成功。由此可见,本发明能够通过将张量流模型转化为高性能推理模型,提升部署推理服务的推理效率,以及用户的使用效率和体验。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
下面对本发明中出现的关键术语进行解释。
TensorFlow模型,即张量流模型,TensorFlow最重要的概念就是Tensor和Flow,Tensor就是张量,Flow就是流,它们合在一起直观地表达了张量之间通过计算相互转化的过程。在T TensorFlow模型,所有的数据都通过张量的形式来表示,张量是TensorFlow管理数据的工具。张量可以被简单地理解为多维数组,零阶张量表示标量即一个数,一阶张量表示向量即一维数组,n阶张量表示一个n维数组。Tensorflow拥有多层级结构,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算,被广泛应用于产品开发和各领域的科学研究。
TensorRT是一个高性能的深度学***台或自动驾驶平台进行推理加速。TensorRT现已能支持TensorFlow、Caffe、Mxnet、Pytorch等几乎所有的深度学习框架,将TensorRT和NVIDIA的GPU结合起来,能在几乎所有的框架中进行快速和高效的部署推理。
ONNX是一种表示深度学***台的标准格式。无论使用什么样的训练框架来训练模型,都可以在训练后将这些框架的模型统一转为ONNX存储。ONNX文件不仅存储了神经网络模型的权重,还存储了模型的结构信息、网络中各层的输入输出等一些信息。然后将转换后的ONNX模型,转换成我们需要使用不同框架部署的类型。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图2所示,本实施例提供了一种张量流模型的转化方法,包括如下步骤:
S1:通过人工智能平台获取Tensorflow模型的目录信息,并发起模型转化请求。
在具体实施方式中,可通过用户从人工智能平台的前台导入Tensorflow模型的线上目录,发起进行TensorRT模型转化请求。
S2:响应于接收到模型转化请求,导出Tensorflow模型的目录信息。
在具体实施方式中,人工智能平台的后端接收到请求后,根据请求导出Tensorflow模型的目录信息。
S3:启动模型转化流程。
具体来说,在转化模式选择列表中,选择转化模式为TensorRT模型转化,并将转化状态设置为进行中。
需要特别说明的是,理论上可以选择多种转化模式,比如TensorRT模型转化、OpenVINO模型转化。本方法的目的在于实现TensorRT模型转化,因此可以忽略其他转化模式。
S4:根据Tensorflow模型的目录信息将模型的地址信息转化为容器中的挂载点地址。
具体来说,首先根据模型转化请求的主键从数据库取出相应的Tensorflow模型的目录信息;然后将Tensorflow模型的导入和导出地址转化为在容器中的挂载点地址。
S5:生成将Tensorflow模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求。
在具体实施方式中,首先根据容器内挂载点地址,使用注解获得当前服务器配置下的tensorRT容器的名称、所在的服务器地址、挂载的网络文件***地址,并将其注入到对应属性上,以生成控制台语句;然后,通过控制台语句将Tensorflow模型转化为ONNX文件;最后,对相应的服务器上的容器进行请求。
需要特别说明的是,由于现有服务器的容器内部没有自带将Tensorflow转为ONNX文件生成控制台语句的软件包,因此需要额外在容器内进行相应的转化配置。具体实现方式为:通过后端相应服务根据容器内配置文件里的信息,使用注解获得当前服务器配置下的tensorRT容器的名称、所在的服务器地址、挂载的网络文件***地址,并将其注入到对应属性上,从而生成了文件转化的控制台语句。
S6:利用Tensorflow模型的目录信息检测ONNX文件是否存在。若不存在则执行步骤S7。若存在,则执行步骤S8。
在具体实施方式中,首先利用Tensorflow模型的目录信息获取相应的挂载点地址;此时检测挂载点地址上是否关联有ONNX文件;若是,则说明ONNX文件存在;否则说明ONNX文件不存在。
作为示例的,在请求容器执行语句时,需要将控制台语句前加入“sh”和“-c”组成列表,并将User值设为root,而后通过相应接口进行POST请求获得相应处理,生成指令码,并在这之后访问另一个RESTful接口启用相应指令,设置“Detach”为“false”以等待其完成。这一过程使得后端可以较为完整的追踪每个过程结束的时间,并在相应时间点可以做出正确的判断,以实现ONNX文件的生成确认。
S7:进行报错后直接退出。
S8:通过trtexec工具将ONNX文件转化为相应的TensorRT.plan文件。
在具体实施方式中,通过TensorRT官方提供的trtexec工具,将线上模型的ONNX文件转化为TensorRT.plan文件。
S9:利用Tensorflow模型的目录信息检测相应的TensorRT.plan文件是否存在。若不存在,则执行步骤S10。若存在,则转化完成。
在具体实施方式中,首先利用Tensorflow模型的目录信息获取相应的挂载点地址;然后检测挂载点地址上是否关联有TensorRT.plan文件;若是,则TensorRT.plan文件存在;否则TensorRT.plan文件不存在。
S10:进行报错后直接退出。
本发明提供了一种张量流模型的转化方法,通过在容器内进行相应的转化配置,生成控制台语句将Tensorflow模型转为ONNX文件,从而使用该镜像最终完成Tensorflow模型转化为TensorRT高性能推理模型的功能。用户可以使用转化后的TensorRT高性能推理模型进行训练和推理服务的有效部署,达到高性能推理的效果。
参见图3所示,本发明还公开了一种张量流模型的转化***,包括:请求发起单元1、目录导出单元2、转化启动单元3、地址转化单元4、指令生成单元5、第一文件检测单元6、文件转化单元7、第二文件检测单元8和报警单元9。
请求发起单元1,配置用于通过人工智能平台获取Tensorflow模型的目录信息,并发起模型转化请求。
在具体实施方式中,请求发起单元1具体用于:通过用户从人工智能平台的前台导入Tensorflow模型的线上目录,发起进行TensorRT模型转化请求。
目录导出单元2,配置用于响应于接收到模型转化请求,导出Tensorflow模型的目录信息。
在具体实施方式中,目录导出单元2具体用于:人工智能平台的后端接收到请求后,根据请求导出Tensorflow模型的目录信息。
转化启动单元3,配置用于启动模型转化流程。
在具体实施方式中,转化启动单元3具体用于:在转化模式选择列表中,选择转化模式为TensorRT模型转化,并将转化状态设置为进行中。
地址转化单元4,配置用于根据Tensorflow模型的目录信息将模型的地址信息转化为容器中的挂载点地址。
在具体实施方式中,地址转化单元4具体用于:根据模型转化请求的主键从数据库取出相应的Tensorflow模型的目录信息;将Tensorflow模型的导入和导出地址转化为在容器中的挂载点地址。
指令生成单元5,配置用于生成将Tensorflow模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求。
在具体实施方式中,指令生成单元5具体用于:根据容器内挂载点地址,使用注解获得当前服务器配置下的tensorRT容器的名称、所在的服务器地址、挂载的网络文件***地址,并将其注入到对应属性上,以生成控制台语句;通过控制台语句将Tensorflow模型转化为ONNX文件;最后,对相应的服务器上的容器进行请求。
第一文件检测单元6,配置用于利用Tensorflow模型的目录信息检测ONNX文件是否存在。
在具体实施方式中,第一文件检测单元6具体用于:利用Tensorflow模型的目录信息获取相应的挂载点地址;检测挂载点地址上是否关联有ONNX文件;若是,则说明ONNX文件存在;否则说明ONNX文件不存在。
文件转化单元7,配置用于当第一文件检测单元检测到ONNX文件存在时,通过trtexec工具将ONNX文件转化为相应的TensorRT.plan文件。
在具体实施方式中,文件转化单元7具体用于:通过TensorRT官方提供的trtexec工具,将线上模型的ONNX文件转化为TensorRT.plan文件。
第二文件检测单元8,配置用于利用Tensorflow模型的目录信息检测相应的TensorRT.plan文件是否存在。
在具体实施方式中,第二文件检测单元8具体用于:利用Tensorflow模型的目录信息获取相应的挂载点地址;检测挂载点地址上是否关联有TensorRT.plan文件;若是,则TensorRT.plan文件存在;否则TensorRT.plan文件不存在。
报警单元9,配置用于当第一文件检测单元未检测到ONNX文件或第二文件检测单元未检测到TensorRT.plan文件时,进行报错后直接退出。
由此可见,本发明提供了一种张量流模型的转化***,通过将已有的张TensorFlow模型转化为TensorRT高性能推理模型,有效的压低了用户的模型训练时间,提升了部署推理服务的推理效率,令用户可以轻松使用已有的模型进行高效的推理工作,以提升用户的使用效率和体验。
参见图4所示,本发明还公开了一种张量流模型的转化装置,包括处理器101和存储器102;其中,所述处理器101执行所述存储器中保存的张量流模型的转化程序时实现以下步骤:
1、通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求。
2、响应于接收到模型转化请求,导出张量流模型的目录信息。
3、启动模型转化流程。
4、根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址。
5、生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求。
6、利用张量流模型的目录信息检测ONNX文件是否存在;若不存在,则进行报错后直接退出;若存在,则通过模型优化工具将ONNX文件转化为相应的推理模型文件。
7、利用张量流模型的目录信息检测相应的推理模型文件是否存在;若不存在,则进行报错后直接退出;若存在,则转化完成。
本实施例提供的张量流模型的转化装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器101可以采用数字信号处理(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器101可以在集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器101还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器102至少用于存储以下计算机程序,其中,该计算机程序被处理器101加载并执行之后,能够实现前述任一实施例公开的张量流模型的转化方法的相关步骤。另外,存储器102所存储的资源还可以包括操作***和数据等,存储方式可以是短暂存储或者永久存储。其中,操作***可以包括Windows、Unix、Linux等。数据可以包括但不限于上述张量流模型的转化方法中涉及的数据等。
进一步的,本实施例中的张量流模型的转化装置,还可以包括:
输入接口103,用于获取外界导入的张量流模型的转化程序,并将获取到的张量流模型的转化程序保存至所述存储器102中,还可以用于获取外界终端设备传输的各种指令和参数,并传输至处理器101中,以便处理器101利用上述各种指令和参数展开相应的处理。本实施例中,所述输入接口103具体可以包括但不限于USB接口、串行接口、语音输入接口、指纹输入接口、硬盘读取接口等。
输出接口104,用于将处理器101产生的各种数据输出至与其相连的终端设备,以便于与输出接口相连的其他终端设备能够获取到处理器101产生的各种数据。本实施例中,所述输出接口104具体可以包括但不限于USB接口、串行接口等。
通讯单元105,用于在服务器运行业务优化配置装置和外部服务器之间建立远程通讯连接,以便于张量流模型的转化装置能够将镜像文件挂载到外部服务器中。本实施例中,通讯单元105具体可以包括但不限于基于无线通讯技术或有线通讯技术的远程通讯单元。
键盘106,用于获取用户通过实时敲击键帽而输入的各种参数数据或指令。
显示器107,用于对运行张量流模型的转化过程的相关信息进行实时显示。
鼠标108,可以用于协助用户输入数据并简化用户的操作。
本发明还公开了一种可读存储介质,这里所说的可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动硬盘、CD-ROM或技术领域内所公知的任意其他形式的存储介质。可读存储介质中存储有张量流模型的转化程序,所述张量流模型的转化程序被处理器执行时实现以下步骤:
1、通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求。
2、响应于接收到模型转化请求,导出张量流模型的目录信息。
3、启动模型转化流程。
4、根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址。
5、生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求。
6、利用张量流模型的目录信息检测ONNX文件是否存在;若不存在,则进行报错后直接退出;若存在,则通过模型优化工具将ONNX文件转化为相应的推理模型文件。
7、利用张量流模型的目录信息检测相应的推理模型文件是否存在;若不存在,则进行报错后直接退出;若存在,则转化完成。
综上所述,本发明通过将张量流模型转化为高性能推理模型,有效提升了部署推理服务的推理效率,以及用户的使用效率和体验。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的***相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的***、***和方法,可以通过其它的方式实现。例如,以上所描述的***实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,***或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。
同理,在本发明各个实施例中的各处理单元可以集成在一个功能模块中,也可以是各个处理单元物理存在,也可以两个或两个以上处理单元集成在一个功能模块中。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的张量流模型的转化方法、***、装置及可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种张量流模型的转化方法,其特征在于,包括:
通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求;
响应于接收到模型转化请求,导出张量流模型的目录信息;
启动模型转化流程;
根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址;生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求;
利用张量流模型的目录信息检测ONNX文件是否存在;
若不存在,则进行报错后直接退出;若存在,则通过模型优化工具将ONNX文件转化为相应的推理模型文件;
利用张量流模型的目录信息检测相应的推理模型文件是否存在;
若不存在,则进行报错后直接退出;若存在,则转化完成。
2.根据权利要求1所述的张量流模型的转化方法,其特征在于,所述启动模型转化流程,包括:
在转化模式选择列表中,选择转化模式为推理模型转化,并将转化状态设置为进行中。
3.根据权利要求1所述的张量流模型的转化方法,其特征在于,所述根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址,包括:
根据模型转化请求的主键从数据库取出相应的张量流模型的目录信息;
将张量流模型的导入和导出地址转化为在容器中的挂载点地址。
4.根据权利要求3所述的张量流模型的转化方法,其特征在于,所述生成将张量流模型转为ONNX文件的控制台语句,包括:
根据容器内挂载点地址,使用注解获得当前服务器配置下的容器信息,并将其注入到对应属性上,以生成控制台语句;
通过控制台语句将张流量模型转化为ONNX文件。
5.根据权利要求1所述的张量流模型的转化方法,其特征在于,所述利用张量流模型的目录信息检测ONNX文件是否存在,包括:
利用张量流模型的目录信息获取相应的挂载点地址;
检测挂载点地址上是否关联有ONNX文件;
若是,则ONNX文件存在;否则ONNX文件不存在。
6.根据权利要求1所述的张量流模型的转化方法,其特征在于,所述利用张量流模型的目录信息检测相应的优化模型文件是否存在,包括:
利用张量流模型的目录信息获取相应的挂载点地址;
检测挂载点地址上是否关联有推理模型文件;
若是,则推理模型文件存在;否则推理模型文件不存在。
7.根据权利要求4所述的张量流模型的转化方法,其特征在于,所述容器信息包括:容器的名称、所在的服务器地址、挂载的网络文件***地址。
8.一种张量流模型的转化***,其特征在于,包括:
请求发起单元,配置用于通过人工智能平台获取张量流模型的目录信息,并发起模型转化请求;
目录导出单元,配置用于响应于接收到模型转化请求,导出张量流模型的目录信息;
转化启动单元,配置用于启动模型转化流程;
地址转化单元,配置用于根据张量流模型的目录信息将模型的地址信息转化为容器中的挂载点地址;
指令生成单元,配置用于生成将张量流模型转为ONNX文件的控制台语句,并对相应的服务器上的容器进行请求;
第一文件检测单元,配置用于利用张量流模型的目录信息检测ONNX文件是否存在;
文件转化单元,配置用于当第一文件检测单元检测到ONNX文件存在时,通过模型优化工具将ONNX文件转化为相应的推理模型文件;
第二文件检测单元,配置用于利用张量流模型的目录信息检测相应的推理模型文件是否存在;
报警单元,配置用于当第一文件检测单元未检测到ONNX文件或第二文件检测单元未检测到推理模型文件时,进行报错后直接退出。
9.一种张量流模型的转化装置,其特征在于,包括:
存储器,用于存储张量流模型的转化程序;
处理器,用于执行所述张量流模型的转化程序时实现如权利要求1至7任一项权利要求所述的张量流模型的转化方法的步骤。
10.一种可读存储介质,其特征在于:所述可读存储介质上存储有张量流模型的转化程序,所述张量流模型的转化程序被处理器执行时实现如权利要求1至7任一项权利要求所述的张量流模型的转化方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310944731.0A CN117075915A (zh) | 2023-07-28 | 2023-07-28 | 一种张量流模型的转化方法、***、装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310944731.0A CN117075915A (zh) | 2023-07-28 | 2023-07-28 | 一种张量流模型的转化方法、***、装置及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117075915A true CN117075915A (zh) | 2023-11-17 |
Family
ID=88710646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310944731.0A Pending CN117075915A (zh) | 2023-07-28 | 2023-07-28 | 一种张量流模型的转化方法、***、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117075915A (zh) |
-
2023
- 2023-07-28 CN CN202310944731.0A patent/CN117075915A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110781082A (zh) | 接口的测试用例的生成方法及装置、介质和设备 | |
CN112836064A (zh) | 知识图谱补全方法、装置、存储介质及电子设备 | |
CN116775183A (zh) | 基于大语言模型的任务生成方法、***、设备及存储介质 | |
CN110991279B (zh) | 文档图像分析与识别方法及*** | |
CN111651989B (zh) | 命名实体识别方法和装置、存储介质及电子装置 | |
CN109815448A (zh) | 幻灯片生成方法及装置 | |
CN113468344B (zh) | 实体关系抽取方法、装置、电子设备和计算机可读介质 | |
CN105335466A (zh) | 一种音频数据的检索方法与装置 | |
CN114491064A (zh) | 一种物联网平台构建方法、装置、存储介质及终端 | |
CN117193738A (zh) | 应用搭建方法、装置、设备及存储介质 | |
CN116932147A (zh) | 流式作业处理方法、装置、电子设备及介质 | |
CN117075915A (zh) | 一种张量流模型的转化方法、***、装置及可读存储介质 | |
CN112612427B (zh) | 一种车辆停靠点数据处理方法、装置、存储介质及终端 | |
CN115061916A (zh) | 自动化生成接口测试用例的方法及其相关设备 | |
CN113962549A (zh) | 一种基于电网运行知识的业务流程编排方法及*** | |
CN108304219A (zh) | 二次开发平台及方法 | |
CN114650436B (zh) | 基于后台服务的遥控方法、装置、设备及介质 | |
CN117992598B (zh) | 基于大模型的需求响应方法、装置、介质及设备 | |
CN117744920A (zh) | 能源数据管理方法及相关装置 | |
CN115357814A (zh) | 一种报文数据处理方法、***、计算机设备及介质 | |
CN115146443A (zh) | 热力***设计方法及装置 | |
CN114610807A (zh) | 数据导入模板配置方法、装置、设备及存储介质 | |
CN115858639A (zh) | 一种动态生成财务报表方法、***和存储介质 | |
CN117744651A (zh) | 一种语言大模型融合nlu的槽位信息抽取方法及装置 | |
CN118052209A (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 |