CN111427702A - 一种人工智能ai系统及数据处理方法 - Google Patents
一种人工智能ai系统及数据处理方法 Download PDFInfo
- Publication number
- CN111427702A CN111427702A CN202010170003.5A CN202010170003A CN111427702A CN 111427702 A CN111427702 A CN 111427702A CN 202010170003 A CN202010170003 A CN 202010170003A CN 111427702 A CN111427702 A CN 111427702A
- Authority
- CN
- China
- Prior art keywords
- component
- data processing
- thrift
- big data
- processing engine
- 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
- 238000013473 artificial intelligence Methods 0.000 title claims abstract description 168
- 238000003672 processing method Methods 0.000 title claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 76
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000006870 function Effects 0.000 claims abstract description 18
- 238000004364 calculation method Methods 0.000 claims description 25
- 239000003795 chemical substances by application Substances 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 244000299461 Theobroma cacao Species 0.000 description 2
- 235000009470 Theobroma cacao Nutrition 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 239000010979 ruby Substances 0.000 description 2
- 229910001750 ruby Inorganic materials 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种人工智能AI系统及数据处理方法,其中该系统包括:大数据处理引擎、代理组件和图形处理器GPU计算组件;所述GPU计算组件上部署多个独立运行的AI子模型,每一个AI子模型对应一个AI模型中的部分功能;所述大数据处理引擎用于通过所述代理组件以远程过程调用RPC形式实现对所述AI子模型的调用。如此,能够将运行在GPU上的AI模型应用在大数据处理引擎上,兼具较高计算速度和更高吞吐量。
Description
技术领域
本发明实施例涉及人工智能AI(Artificial Intelligence)技术,尤指一种人工智能AI系统及数据处理方法。
背景技术
随着计算机技术高速发展,大数据和AI(Artificial Intelligence,人工智能)技术也迎来了一波大的浪潮,然而AI算法计算量太大所以大多使用GPU(GraphicsProcessing Unit,图形处理器)硬件加速来提高计算速度,但是GPU目前无法通过大数据技术调度。如果硬要将AI算法应用在大数据组件上(例如Flink、Spark等),则必须将GPU计算转成CPU(central processing unit,中央处理器)计算,这样计算速度将大大降低。
如何保证AI算法应用在大数据组件上时,能够兼具较高计算速度和更高吞吐量是目前急需解决的问题。
发明内容
为此,本发明实施例提供了一种人工智能AI系统,包括:
大数据处理引擎、代理组件和图形处理器GPU计算组件;
所述GPU计算组件上部署多个独立运行的AI子模型,每一个AI子模型对应一个AI模型中的部分功能;
所述大数据处理引擎用于通过所述代理组件以远程过程调用RPC形式实现对所述AI子模型的调用。
本发明实施例还提供了一种数据处理方法,应用于上述人工智能AI系统,包括:
大数据处理引擎读取外部数据;
通过所述代理组件以远程过程调用RPC形式调用GPU计算组件上部署的AI子模型对所述外部数据进行AI处理.
本发明实施例提供的技术方案,能够将运行在GPU上的AI模型应用在大数据处理引擎上,且兼具较高计算速度和更高吞吐量。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的其他优点可通过在说明书以及附图中所描述的方案来实现和获得。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为本发明一实施例提供的一种人工智能AI系统的结构示意图;
图2为本发明一实施例提供的一种数据处理的方法的流程示意图;
图3为本发明另一实施例提供的一种人工智能AI系统的结构示意图;
图4为本发明另一实施例提供的一种数据处理的方法的流程示意图;
图5为本发明另一实施例提供的一种人工智能AI系统的结构示意图;
图6为本发明另一实施例提供的一种数据处理的方法的流程示意图;
图7为本发明另一实施例提供的一种人工智能AI系统的结构示意图;
图8为本发明另一实施例提供的一种数据处理的方法的流程示意图;
图9为本发明另一实施例提供的一种人工智能AI系统的结构示意图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成由权利要求限定的独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个由权利要求限定的独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。因此,除了根据所附权利要求及其等同替换所做的限制以外,实施例不受其它限制。此外,可以在所附权利要求的保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对权利要求的限制。此外,针对该方法和/或过程的权利要求不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
图1为本发明一实施例提供的一种人工智能AI系统的结构示意图,如图1所示,该系统包括:
大数据处理引擎、代理组件和图形处理器GPU计算组件;
所述GPU计算组件上部署多个独立运行的AI子模型,每一个AI子模型对应一个AI模型中的部分功能;
所述大数据处理引擎用于通过所述代理组件以远程过程调用RPC形式实现对所述AI子模型的调用。
可选地,所述GPU计算组件包括多个GPU;
一个AI子模型的实例部署在一个或者多个GPU上,一个AI子模型的实例为一个或者多个。
可选地,所述大数据处理引擎用于读取外部数据,然后通过所述代理组件以远程过程调用RPC形式调用一个或者多个AI子模型对所述外部数据进行AI处理。
可选地,所述RPC采用Thrift框架;
所述大数据处理引擎承载所述Thrift框架的一个或者多个Thrift客户端,所述多个AI子模型组成所述Thrift框架的Thrift服务端;
所述大数据处理引擎用于利用所述Thrift客户端通过所述代理组件实现对所述Thrift服务端中一个或者多个AI子模型的远程调用。
可选地,所述RPC采用Thrift框架;
所述大数据处理引擎承载所述Thrift框架的一个或者多个Thrift客户端,所述多个AI子模型组成所述Thrift框架的Thrift服务端;
所述系统还包括:缓存组件;
大数据处理引擎利用hrift客户端通过缓存组件和代理组件实现对Thrift服务端中一个或者多个AI子模型的远程调用。
可选地,所述大数据处理引擎为Flink计算引擎或者Spark计算引擎;
所述代理组件为高可用代理组件HAProxy。
可选地,所述缓存组件为共享池Common Pool。
可选地,所述系统还包括:Kafka集群;
所述大数据处理引擎用于从所述Kafka集群读取外部数据,然后通过所述代理组件以远程过程调用RPC形式调用一个或者多个AI子模型对所述外部数据进行AI处理。
可选地,每一个AI子模型提供一个AI微服务。
本实施例提供的技术方案,能够将将运行在GPU上的AI模型应用在大数据处理引擎上,且兼具较高计算速度和更高吞吐量。
基于图1所示的系统,本发明的一实施例还提供了一种数据处理的方法,如图2所示,该方法包括:
步骤201,大数据处理引擎读取外部数据;
步骤202,通过所述代理组件以远程过程调用RPC形式调用GPU计算组件上部署的AI子模型对所述外部数据进行AI处理。
可选地,所述大数据处理引擎为Flink计算引擎或者Spark计算引擎;
所述代理组件为高可用代理组件HAProxy。
可选地,所述大数据处理引擎用于从所述Kafka集群读取外部数据,然后通过所述代理组件以远程过程调用RPC形式调用一个或者多个AI子模型对所述外部数据进行AI处理。
图3为本发明另一实施例提供的一种人工智能AI系统的结构示意图。
本实施例中,大数据处理引擎以Flink计算引擎,代理组件为高可用代理组件HAProxy为例进行说明。
当然大数据处理引擎可以为其他现有类型的任一种计算引擎,例如Spark等,代理组件也可以是其他现有类型的任一种代理,对此并不作限制,本实施仅为示例性说明。
如图3所示,该系统包括:
Flink计算引擎、高可用代理组件HAProxy、GPU计算组件。
其中,Flink计算引擎,其功能包括两个方面:一方面是读取外部数据,并对数据进行简单处理;另一方面通过代理组件以远程过程调用RPC形式调用AI子模型对数据进行AI处理。
Flink是由Apache软件基金会开发的开源流处理框架,是一种用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。Flink的数据来源可以有多种,读取的数据类型也有多种,例如流数据、图像数据等各种格式的数据。例如,该系统还可以包括:Kafka集群,Flink计算引擎从Kafka集群读取实时流数据。上面提到的简单处理包括Flink对读取的外部数据进行整合和筛选、过滤等操作。例如,外部数据中的数据格式可能是多种多样的,就需要将其整合为统一的格式。又例如,还可以根据具体的业务需要对数据进行筛选和过滤,比如将出现在黑名单中的数据进行删除,等等。
远程过程调用RPC是一种通过网络从远程计算机程序上请求服务的通信机制。本实施例中,Flink计算引擎通过HAProxy以RPC形式实现对AI子模型的调用,即子模型以RPC的形式向外提供服务。
其中,GPU计算组件,其功能包括用于部署AI子模型。
人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。AI模型是指利用AI算法对数据进行机器学习得到的模型。本实施例中的AI模型可以是现有技术中已有的任一种模型,也可以是技术人员根据实际需要训练出来的新的AI模型。
其中,每一个AI子模型对应一个AI模型中的部分功能。
例如,可以将一个AI模型按照功能拆分为多个独立运行的子模型。比如,可以将一个AI算法拆解成多个独立运行的子任务,每一个子任务对应一个子模型。并且每一个子模型都可以进行集群化部署,即每个子模型都部署多个实例,能够进一步提高子模型吞吐量和计算效率。
又例如,目前一个业务需求就需要开发一个AI模型,多个业务需求就需要开发多个AI模型,但是这些模型可能都包含了一部分共同的功能。如此将多个AI模型按照功能拆分为多个子模型,重复的功能只需要开发一个子模型即可,这样多个子模型可以自由组合为多种AI模型,能够大大降低底层开发难度,提升开发效率。并且一个子模型的运算数据要小于一个大的AI模型,多个子模型可以进行并行计算,进一步提高运算速度。
其中,GPU计算组件可以包括多个GPU,一个AI子模型的实例部署在一个或者多个GPU上,一个AI子模型的实例为一个或者多个。
例如,每一个AI子模型部署在一个GPU上,为每一个AI子模型部署多个实例,如此不仅能够实现每一个子模型的集群化部署,而每一个子模型都独立运行在一个GPU上,能够大大提升子模型的吞吐量和计算效率,而各个子模型还可以并行计算,进一步提升整个计算组件的吞吐量和计算效率。
其中,高可用代理组件HAProxy,其功能包括在Flink计算引擎和GPU计算组件上的AI子模型之间起到代理作用。
HAProxy是一个自由及开放源代码软件,能够提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。通过HAProxy(高可用代理组件)对AI子模型进行代理,Flink对AI子模型集群是无感知,只需要放访问HAProxy即可,无需关心每个具体子模型的地址是多少,不仅简化了处理流程,而且降低了开发难度。
另外,HAProxy还可以起到对AI子模型进行健康检查、负载均衡等作用。
现有技术中,Flink一般部署在CPU上,当需要应用AI模型时必须通过CPU硬件提供计算,导致计算速度大大降低。而本实施例中,AI子模型部署在GPU上,Flink只需要通过代理以RPC形式调用AI子模型就可以实现在GPU上进行计算,能够兼具较高计算速度和更高吞吐量。
基于图3所示的系统,本发明的另一实施例还提供了一种数据处理方法,如图4所示,该方法包括:
步骤401,Flink计算引擎读取外部数据;
步骤402,通过HAProxy以远程过程调用RPC形式调用GPU计算组件上部署的AI子模型对所述外部数据进行AI处理。
可选地,所述Flink计算引擎用于从Kafka集群读取外部数据,然后通过HAProxy以远程过程调用RPC形式调用一个或者多个AI子模型对所述外部数据进行AI处理。
在上述实施例的基础上,本发明的一实施例中,RPC采用Thrift框架。
Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目。Thrift通过一个中间语言(IDL,接口定义语言)来定义RPC的接口和数据类型,然后通过一个编译器生成不同语言的代码(目前支持C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,Smalltalk和OCaml),并由生成的代码负责RPC协议层和传输层的实现。Thrift实际上是实现了C/S(Consumer客户端/Service服务端)模式,通过代码生成工具将接口定义文件生成服务器端和客户端代码(可以为不同语言),从而实现服务端和客户端跨语言的支持。
如图5所示,该系统包括:
Thrift客户端和Thrift服务端;
其中,一个或者多个Thrift客户端部署于大数据处理引擎上,多个AI子模型组成Thrift服务端。大数据处理引擎用于利用Thrift客户端通过代理组件实现对Thrift服务端中一个或者多个AI子模型的远程调用。
其中,大数据处理引擎读取外部数据,然后利用Thrift客户端通过代理组件远程调用Thrift服务端的一个或者多个AI子模型对所述外部数据进行AI处理。例如,Flink计算引擎读取外部数据,然后利用Thrift客户端通过HAProxy远程调用Thrift服务端的一个或者多个AI子模型对所述外部数据进行AI处理。
基于图5所示的系统,本发明的另一实施例还提供了一种数据处理方法,如图6所示,该方法包括:
步骤601,大数据处理引擎读取外部数据;
步骤602,利用Thrift客户端通过代理组件远程调用Thrift服务端中一个或者多个AI子模型对所述外部数据进行AI处理。
可选地,所述利用Thrift客户端通过代理组件远程调用Thrift服务端中一个或者多个AI子模型对所述外部数据进行AI处理,包括:
利用Thrift客户端向代理组件发送RPC请求,以通过所述代理组件实现对Thrift服务端中一个或者多个AI子模型的远程调用;
利用Thrift客户端通过代理组件接收RPC响应,根据所述RPC响应远程调用Thrift服务端中一个或者多个AI子模型对所述外部数据进行AI处理。
可选地,所述大数据处理引擎为Flink计算引擎或者Spark计算引擎;
所述代理组件为高可用代理组件HAProxy。
可选地,所述大数据处理引擎用于从所述Kafka集群读取外部数据,然后利用Thrift客户端向代理组件发送RPC请求,以通过所述代理组件远程调用Thrift服务端中一个或者多个AI子模型对外部数据进行AI处理。
在上述实施例的基础上,本发明的一实施例中,RPC采用Thrift框架。
Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目。Thrift通过一个中间语言(IDL,接口定义语言)来定义RPC的接口和数据类型,然后通过一个编译器生成不同语言的代码(目前支持C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Cocoa,Smalltalk和OCaml),并由生成的代码负责RPC协议层和传输层的实现。Thrift实际上是实现了C/S(Consumer客户端/Service服务端)模式,通过代码生成工具将接口定义文件生成服务器端和客户端代码(可以为不同语言),从而实现服务端和客户端跨语言的支持。
如图7所示,该系统包括:
Thrift客户端、缓存组件,Thrift服务端。
其中,多个Thrift客户端部署于大数据处理引擎上,多个AI子模型组成Thrift服务端。大数据处理引擎利用hrift客户端通过缓存组件和代理组件实现对Thrift服务端中一个或者多个AI子模型的远程调用。
其中,缓存组件可以为现有的任一种能够实现缓存功能的组件。本实施例中,采用共享池Common Pool作为缓存组件。
其中,大数据处理引擎读取外部数据,然后利用Thrift客户端通过Common Pool和代理组件远程调用Thrift服务端的一个或者多个AI子模型对所述外部数据进行AI处理。
例如,Flink计算引擎读取外部数据,然后利用Thrift客户端通过Common Pool和HAProxy远程调用Thrift服务端的一个或者多个AI子模型对所述外部数据进行AI处理。当Flink调用AI子模型时,需要和AI子模型建立连接,相比于数据处理,连接时间是很漫长的,并且多个数据可以共同使用同一个连接,所以对客户端连接建立缓存以提高系统整体相应时间,而使用Common Pool作为缓存组件,可以非常高效的实现Flink上的Thrift Client和后台Thrift服务端/集群之间的缓存功能。
基于图7所示的系统,本发明的另一实施例还提供了一种数据处理方法,如图8所示,该方法包括:
步骤801,大数据处理引擎读取外部数据;
步骤802,利用hrift客户端通过缓存组件和代理组件远程调用Thrift服务端中一个或者多个AI子模型对所述外部数据进行AI处理。
其中,多个Thrift客户端可以共享一个连接,如此缓存组件可以进行负载均衡,例如利用消息队列对多个Thrift客户端的RPC请求进行负载均衡。
可选地,所述利用hrift客户端通过缓存组件和代理组件远程调用Thrift服务端中一个或者多个AI子模型对所述外部数据进行AI处理,包括:
利用Thrift客户端向缓存组件发送RPC请求,以通过代理组件实现对所述Thrift服务端中一个或者多个AI子模型的远程调用;
所述缓存组件用于接收和缓存所述RPC请求,并进行负载均衡后再向代理组件发送RPC请求,以通过所述代理组件实现对Thrift服务端中一个或者多个AI子模型的远程调用;
利用Thrift客户端通过缓存组件和代理组件接收RPC响应,根据所述RPC响应远程调用Thrift服务端中一个或者多个AI子模型对所述外部数据进行AI处理。
可选地,所述大数据处理引擎为Flink计算引擎或者Spark计算引擎;
所述代理组件为高可用代理组件HAProxy。
可选地,所述缓存组件为共享池Common Pool。
可选地,所述大数据处理引擎用于从所述Kafka集群读取外部数据,然后利用Thrift客户端通过缓存组件和代理组件远程调用Thrift服务端的一个或者多个AI子模型对所述外部数据进行AI处理。
在上述实施例的基础上,本发明的一实施例中,每一个AI子模型提供一个AI微服务。
微服务是一个新兴的软件架构,是指把一个大型的单个应用程序和服务拆分为数十个的支持微服务。一个微服务的策略可以让工作变得更为简便,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。AI微服务是指一个整体的AI服务拆分为相互独立的多个微服务。其中,可以将AI模型或者AI算法从功能上进行拆分,每一个独立的功能都可以包装为一个AI子模型,对外提供AI微服务。
如图9所示,该系统包括:
Flink,Common Pool、Services Conter(HAProxy)、RPC。
其中,Flink上部署有多个客户端Consumer。
其中,RPC采用Thrift框架,Flink上Consumer作为Thrift客户端。Common Pool作为Thrift客户端的缓存组件。
其中,Services Conter作为代理组件,其实现可以为HAProxy。
其中,Flink利用Consumer向Common Pool发送RPC请求,由于多个Thrift客户端可以共用一个连接,因此Common Pool对请求进行负载均衡后通过连接发送给ServicesConter,由Services Conter调用RPC Thrift服务端中的一个或者多个AI子模型。
其中,多个AI子模型部署在GPU上,且可以部署多个实例实现集群化,例如图中所示NER(命名实体识别,Named Entity Recognition)、POS(词性标注,POS-Tagging)、RE(分句)……CoreNLP(自然语言处理,Natural Language Processing),每一个都代表了一个AI子模型,一个AI子模型可以对应独立的AI功能。多个AI子模型构成了Thrift服务端。
其中,每一个AI子模型都可以对外提供AI微服务,例如NER可以对外提供实体识别微服务。
本发明实施例提供的技术方案,能够以微服务的方式对外提供AI服务,多个AI子模型不仅独立运行在GPU上,而且可以自由组合共同完成一个整体的AI服务,具有低延迟、低耦合和动态伸缩的功能。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (10)
1.一种人工智能AI系统,其特征在于,包括:
大数据处理引擎、代理组件和图形处理器GPU计算组件;
所述GPU计算组件上部署多个独立运行的AI子模型,每一个AI子模型对应一个AI模型中的部分功能;
所述大数据处理引擎用于通过所述代理组件以远程过程调用RPC形式实现对所述AI子模型的调用。
2.根据权利要求1所述的AI系统,其特征在于,
所述GPU计算组件包括多个GPU;
一个AI子模型的实例部署在一个或者多个GPU上,所述实例为一个或者多个。
3.根据权利要求1所述的AI系统,其特征在于,
所述大数据处理引擎用于读取外部数据,然后通过所述代理组件以远程过程调用RPC形式调用一个或者多个AI子模型对所述外部数据进行AI处理。
4.根据权利要求1所述的AI系统,其特征在于,
所述RPC采用Thrift框架;
所述大数据处理引擎承载所述Thrift框架的一个或者多个Thrift客户端,所述多个AI子模型组成所述Thrift框架的Thrift服务端;
所述大数据处理引擎用于利用所述Thrift客户端通过所述代理组件实现对所述Thrift服务端中一个或者多个AI子模型的远程调用。
5.根据权利要求1所述的AI系统,其特征在于,
所述RPC采用Thrift框架,所述大数据处理引擎承载所述Thrift框架的一个或者多个Thrift客户端,所述多个AI子模型组成所述Thrift框架的Thrift服务端;
所述系统还包括:缓存组件;
所述大数据处理引擎利用hrift客户端通过缓存组件和代理组件实现对Thrift服务端中一个或者多个AI子模型的远程调用。
6.根据权利要求1所述的AI系统,其特征在于,
所述大数据处理引擎为Flink计算引擎或者Spark计算引擎;
所述代理组件为高可用代理组件HAProxy。
7.根据权利要求5所述的AI系统,其特征在于,
所述缓存组件为共享池Common Pool。
8.根据权利要求1所述的AI系统,其特征在于,所述系统还包括:Kafka集群;
所述大数据处理引擎用于从所述Kafka集群读取外部数据,然后通过所述代理组件以远程过程调用RPC形式调用一个或者多个AI子模型对所述外部数据进行AI处理。
9.根据权利要求1所述的AI系统,其特征在于,
每一个AI子模型提供一个AI微服务。
10.一种数据处理方法,应用于上述权利要求1-9任一项所述的人工智能AI系统,包括:
大数据处理引擎读取外部数据;
通过所述代理组件以远程过程调用RPC形式调用GPU计算组件上部署的AI子模型对所述外部数据进行AI处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010170003.5A CN111427702A (zh) | 2020-03-12 | 2020-03-12 | 一种人工智能ai系统及数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010170003.5A CN111427702A (zh) | 2020-03-12 | 2020-03-12 | 一种人工智能ai系统及数据处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111427702A true CN111427702A (zh) | 2020-07-17 |
Family
ID=71546311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010170003.5A Pending CN111427702A (zh) | 2020-03-12 | 2020-03-12 | 一种人工智能ai系统及数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427702A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112241632A (zh) * | 2020-10-14 | 2021-01-19 | 国家电网有限公司 | 一种基于语音ai智能会议系统及其实现方法 |
CN112346870A (zh) * | 2020-11-18 | 2021-02-09 | 脸萌有限公司 | 模型处理方法及系统 |
CN114153433A (zh) * | 2021-11-17 | 2022-03-08 | 南京航空航天大学 | 一种OCaml函数式语言调用GPU进行算子加速的方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301098A (zh) * | 2017-06-15 | 2017-10-27 | 搜易贷(北京)金融信息服务有限公司 | 一种基于Thrift协议的远程过程调用装置、方法及系统 |
CN108871781A (zh) * | 2018-04-25 | 2018-11-23 | 佛山科学技术学院 | 一种发动机故障诊断方法及其系统 |
US20180357047A1 (en) * | 2016-01-27 | 2018-12-13 | Bonsai AI, Inc. | Interface for working with simulations on premises |
CN109582425A (zh) * | 2018-12-04 | 2019-04-05 | 中山大学 | 一种基于云端与终端gpu融合的gpu服务重定向系统及方法 |
US20190124202A1 (en) * | 2017-10-23 | 2019-04-25 | Accenture Global Solutions Limited | Call center system having reduced communication latency |
US20190384660A1 (en) * | 2018-06-15 | 2019-12-19 | EMC IP Holding Company LLC | Method, device and computer program product for optimizing remote call |
CN110782004A (zh) * | 2019-09-26 | 2020-02-11 | 超参数科技(深圳)有限公司 | 模型训练方法、模型调用方法、设备及可读存储介质 |
CN110851285A (zh) * | 2020-01-14 | 2020-02-28 | 支付宝(杭州)信息技术有限公司 | 一种基于gpu虚拟化的资源复用方法、装置及设备 |
-
2020
- 2020-03-12 CN CN202010170003.5A patent/CN111427702A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180357047A1 (en) * | 2016-01-27 | 2018-12-13 | Bonsai AI, Inc. | Interface for working with simulations on premises |
CN107301098A (zh) * | 2017-06-15 | 2017-10-27 | 搜易贷(北京)金融信息服务有限公司 | 一种基于Thrift协议的远程过程调用装置、方法及系统 |
US20190124202A1 (en) * | 2017-10-23 | 2019-04-25 | Accenture Global Solutions Limited | Call center system having reduced communication latency |
CN108871781A (zh) * | 2018-04-25 | 2018-11-23 | 佛山科学技术学院 | 一种发动机故障诊断方法及其系统 |
US20190384660A1 (en) * | 2018-06-15 | 2019-12-19 | EMC IP Holding Company LLC | Method, device and computer program product for optimizing remote call |
CN109582425A (zh) * | 2018-12-04 | 2019-04-05 | 中山大学 | 一种基于云端与终端gpu融合的gpu服务重定向系统及方法 |
CN110782004A (zh) * | 2019-09-26 | 2020-02-11 | 超参数科技(深圳)有限公司 | 模型训练方法、模型调用方法、设备及可读存储介质 |
CN110851285A (zh) * | 2020-01-14 | 2020-02-28 | 支付宝(杭州)信息技术有限公司 | 一种基于gpu虚拟化的资源复用方法、装置及设备 |
Non-Patent Citations (2)
Title |
---|
SHAOHUAI SHI 等: "Performance Modeling and Evaluation of Distributed Deep Learning Frameworks on GPUs", 《2018 IEEE 16TH INT. CONF. ON DEPENDABLE, AUTONOMIC & SECURE COMP., 16TH INT. CONF. ON PERVASIVE INTELLIGENCE &》 * |
杨志刚 等: "基于虚拟化的多GPU深度神经网络训练框架", 《计算机工程》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112241632A (zh) * | 2020-10-14 | 2021-01-19 | 国家电网有限公司 | 一种基于语音ai智能会议系统及其实现方法 |
CN112346870A (zh) * | 2020-11-18 | 2021-02-09 | 脸萌有限公司 | 模型处理方法及系统 |
CN112346870B (zh) * | 2020-11-18 | 2024-04-16 | 脸萌有限公司 | 模型处理方法及系统 |
CN114153433A (zh) * | 2021-11-17 | 2022-03-08 | 南京航空航天大学 | 一种OCaml函数式语言调用GPU进行算子加速的方法 |
CN114153433B (zh) * | 2021-11-17 | 2024-08-09 | 南京航空航天大学 | 一种OCaml函数式语言调用GPU进行算子加速的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11640528B2 (en) | Method, electronic device and computer readable medium for information processing for accelerating neural network training | |
CN111427702A (zh) | 一种人工智能ai系统及数据处理方法 | |
CN107479990B (zh) | 一种分布式软件服务系统 | |
Szydlo et al. | Flow-based programming for IoT leveraging fog computing | |
CN111126895A (zh) | 一种复杂场景下调度智能分析算法的管理仓库及调度方法 | |
CN108833510B (zh) | 消息处理方法和装置 | |
WO2021136512A1 (zh) | 基于深度学习节点计算的调度方法、设备及存储介质 | |
CN112764875B (zh) | 一种面向智能计算的轻量级入口容器微服务系统及方法 | |
CN113849293A (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
US11321090B2 (en) | Serializing and/or deserializing programs with serializable state | |
CN112418427A (zh) | 深度学习的统一推理服务的提供方法、装置、系统及设备 | |
CN115244511A (zh) | 分布式计算流水线处理 | |
CN115600676A (zh) | 深度学习模型推理方法、装置、设备及存储介质 | |
CN116010069A (zh) | 管理推理过程的方法、电子设备和计算机程序产品 | |
CN115878711B (zh) | 一种Redis连接池的实现方法、装置、设备及介质 | |
CN112965788A (zh) | 一种混合虚拟化方式的任务执行方法、系统及设备 | |
US10409762B2 (en) | Remote direct memory access-based on static analysis of asynchronous blocks | |
CN116932147A (zh) | 流式作业处理方法、装置、电子设备及介质 | |
CN116909748A (zh) | 算力资源分配方法、装置、电子设备及存储介质 | |
CN112308205A (zh) | 基于预训练模型的模型改进方法及装置 | |
CN116389492A (zh) | 视频分析系统、方法、装置、计算机可读存储介质 | |
US11475921B1 (en) | Per component schedulers making global scheduling decision | |
CN111782407B (zh) | 用于执行gpu中的控制任务的方法、装置及gpu | |
CN114399773A (zh) | Ocr识别系统构建方法和装置、ocr识别方法、设备、介质 | |
CN113849287A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200717 |