CN114168114A - 一种算子注册方法、装置以及设备 - Google Patents
一种算子注册方法、装置以及设备 Download PDFInfo
- Publication number
- CN114168114A CN114168114A CN202210124808.5A CN202210124808A CN114168114A CN 114168114 A CN114168114 A CN 114168114A CN 202210124808 A CN202210124808 A CN 202210124808A CN 114168114 A CN114168114 A CN 114168114A
- Authority
- CN
- China
- Prior art keywords
- operator
- port
- data
- execution
- type
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本说明书实施例公开了一种算子注册方法、装置以及设备。所述方法包括:获取待处理的数据;基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。采用本说明书实施例提供的方法,能够实现不同类型端口间的数据转换算子,实现相同端口类型的不同开发语言之间的数据转化,并且能够实现相同端口类型的相同开发语言之间的数据传递,实现基于多种开发语言的开发算子在同一流程中的执行,提高算子的可拓展性。在进行算子注册时,无需进行代码开发,简化算子开发流程,实现算子注册阶段的自动适配。
Description
技术领域
本说明书涉及计算机技术及大数据领域,尤其涉及一种算子注册方法、装置以及设备。
背景技术
随着计算机的不断发展,基于机器学***台应运而生,这类平台旨在降低对操作人员的专业要求,仅通过流程的搭建即可完成算法流程的实现。但是这类平台是以单独任务作为算子主体,每种任务内嵌有固定的逻辑和输入输出配置项。各算子间的逻辑顺序固定,算子的前后关系固定,流程固化较为严重,算子开发困难;用基类的方式固定算子的后端形态,所有算子的执行实体均继承该基类,基类中定义算子的可处理数据类型,处理逻辑方法,数据洞察方法。算子后端实体实现自己的逻辑功能,洞察功能,数据输入输出功能。但由于所有算子实体中的所有功能均需开发人员实现,即每个算子为一个工程,算子开发工作量较大,也无法加入其他开发语言开发的算子。算子开发较为复杂,算子库拓展能力差。
因此,需要一种新的方法,能够简化算子开发,减少算子开发工作量,流程更加灵活。
发明内容
本说明书实施例提供一种算子注册方法、装置以及设备,用于解决以下技术问题:现有的算子平台是以单独任务作为算子主体,每种任务内嵌有固定的逻辑和输入输出配置项。各算子间的逻辑顺序固定,算子的前后关系固定,流程固化较为严重,算子开发困难;用基类的方式固定算子的后端形态,所有算子的执行实体均继承该基类,基类中定义算子的可处理数据类型,处理逻辑方法,数据洞察方法。算子后端实体实现自己的逻辑功能,洞察功能,数据输入输出功能。但由于所有算子实体中的所有功能均需开发人员实现,即每个算子为一个工程,算子开发工作量较大,也无法加入其他开发语言开发的算子。算子开发较为复杂,算子库拓展能力差。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供一种算子注册方法,包括:
获取待处理的数据;
基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
本说明书实施例还提供一种算子注册装置,包括:
获取模块,获取待处理的数据;
端口确定模块,基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
注册模块,基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
本说明书实施例还提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取待处理的数据;
基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
本说明书实施例提供的一种算子注册方法,以待处理数据的类型为支点,将待处理数据的类型定义为预设的端口类型。以端口类型为基准,提供不同类型端口间的数据转换算子,实现相同端口类型的不同开发语言之间的数据转化,并且能够实现相同端口类型的相同开发语言之间的数据传递,实现基于多种开发语言的开发算子在同一流程中的执行,提高算子的可拓展性。在进行算子注册时,只需要填写算子基本信息和端口信息,通过简单的拖拽即可完成算子配置界面,生成算子实体,无需进行代码开发,简化算子开发流程,实现算子注册阶段的自动适配。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的一种算子注册方法的示意图;
图2为本说明书实施例提供的一种算子结构的示意图;
图3为本说明书实施例提供的一种算子注册过程的示意图;
图4为本说明书实施例提供的一种算子配置界面生成的示意图;
图5为本说明书实施例提供的一种实验执行逻辑示意图;
图6为本说明书实施例提供的一种脚本执行逻辑示意图;
图7为本说明书实施例提供的一种算子执行示意图;
图8为本说明书实施例提供的一种算子注册装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1为本说明书实施例提供的一种算子注册方法的示意图。如图1所示,本说明书实施例提供一种算子注册方法,包括:
步骤S101:获取待处理的数据。
在本说明书实施例中,待处理的数据为进行算子注册的数据。
步骤S103:基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型。
在本说明书实施例中,所述数据类型包括:基于开发框架的数据类型,基于原生数据库的数据类型,基于文档的数据,基于图形的数据及基于算子模型的可视化数据类型;
所述基于所述待处理的数据所属的数据类型,确定所述待处理的数据端口数据,具体包括:
若所述待处理的数据属于基于开发框架的数据类型,则所述待处理的数据的端口类型为第一端口;
若所述待处理的数据属于基于原生数据库的数据类型,则所述待处理的数据的端口类型为第二端口;
若所述待处理的数据属于基于文档的数据类型,则所述待处理的数据的端口类型为第三端口;
若所述待处理的数据属于基于图形的数据类型,则所述待处理的数据的端口类型为第四端口;
若所述待处理的数据属于基于算子模型的可视化数据类型,则所述待处理的数据的端口类型为第五端口。
在本说明书的一个实施例中,开发框架可以为spark,dataset,pandas:daaframe等,开发框架的具体类型并不构成对本申请的限定。采用本说明书实施例提供的方法,可以适用于各种开发框架。
在本说明书实施例中,第一端口用于承载开发框架中的数据。在本说明书的一个实施例中,开发框架为spark框架,基于spark框架的数据类型端口,类型为dataset端口,该端口用来承载spark中dataset类型数据。
在本说明书实施例中,原生数据库为来源于开发框架中的数据,用于承载不同开发框架中的各种数据源的连接信息。在本说明书的一个实施例中,第二端口为dataSource端口。
在本说明书的一个实施例中,第三端口用于承载预设格式的文档的数据。在本说明书的一个实施例中,基于文档的数据类型中,文档为json格式的文件。在本说是的一个实施例中,第三端口为json端口,json端口用于承载json格式的各种数据。
在本说明书的一个实施例中,第四端口用于承载用于绘制各种图形的数据。在本说明书的一个具体实施例中,第四端口为基于echarts的图形数据,第四端口为graph端口,该端口用于承载绘制各种图形的数据。
在本说明书的一个实施例中,第五端口用于承载各种模型的可视化数据以及算法模型本身。在本说明书的一个具体实施例中,第五端口为model端口。
需要说明的是,本说明书实施例提供的算子注册方法,可以支持前述五种端口类型。第一端口、第二端口、第三端口、第四端口和第五端口仅为端口的示意性说明,并不代表端口的先后顺序。
步骤S105:基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
在本说明书实施例中,所述基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册,具体包括:
基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,所述算子执行体基类是由算子执行实体集成的。
在本说明书实施例中,所述基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,具体包括:
基于所述算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置;
基于所述配置的算子基本信息和所述配置的算子端口信息,进行界面配置,完成算子注册。
在本说明书实施例中,所述算子执行体基类包括算子执行体基类和端口执行体基类,所述执行体基类包括端口的基本信息,算子的抽象执行函数,算子洞察数据的生成函数。
在本说明书实施例中,所述算子执行实体的开发语言包括:JAVA/SCALA开发语言,PYTHON开发语言,C/C++开发语言中的一种或几种;
其中,
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能;
基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能;
基于C/C++开发语言的算子执行实体的功能通过调用动态库,实现算子功能。
在本说明书实施例中,所述基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能,具体包括:
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,通过算子执行函数完成算子输入数据及算子配置参数的接收、处理,和输出端口数据的传递,通过算子洞察函数进行可视化数据的生成,实现算子功能。
在本说明书实施例中,所述基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能,具体包括:
若基于PYTHON开发语言的算子执行实体具有输入输出端口,则输入数据转化为预设格式的文件;
基于所述预设格式的文件,根据执行脚本路径及执行脚本的执行环境,实现算子功能;
若基于PYTHON开发语言的算子执行实体不具有输入输出端口,则调用脚本,通过所述脚本执行控制台信息,将所述控制台信息固定至预设类型的输出端口中,实现算子功能。
在本说明书的一个实施例中,算子执行实体为基于JAVA/SCALA开发语言的算子执行实体,JAVA/SCALA算子执行实体直接继承算子基类,实现算子执行函数以及算子洞察函数。算子执行函数中完成算子输入数据以及参数的接收,对输入数据的处理,输出端口数据的传递三个步骤。算子洞察函数根据算子具体的数据处理过程,处理方式,应用的算法/模型等进行可视化数据的生成。
在本说明书的一个实施例中,算子执行实体为基于PYTHON开发语言的算子执行实体,PYTHON算子的逻辑实现主体为PYTHON脚本,即PYTHON算子执行实体的功能根据算子是否拥有输入输出端口分为两种执行方式,若有输入输出端口,则执行过程为接收输入数据与参数,转化输入数据参数,执行脚本,接收脚本输出。具体步骤如下:1)处理输入数据,将端口数据信息写入文件,文件格式为json文件。文件中每个端口分为由端口名称(portName),端口类型(portType),和端口数据(portValue)三个字段组成,端口名称类型对应算子实体中的端口信息,端口数据针对不同类型进行处理:dataset端口数据进行文件落盘操作,持久化dataset数据,生成对应数据的读取路径,将该数据读取路径设置为该类型端口的端口数据字段;dataSource端口数据为端口对应的数据库连接信息;json端口数据为端口中传递的端口内容;graph端口数据与json端口数据处理方式相同。2)根据执行脚本的路径以及该脚本执行环境,开启新进程直接执行脚本。执行的脚本需根据提供的算子创建说明,在算子执行主体前,使用提供的transfer_input_class.py PYTHON脚本中提供的类方法获得输入端口数据和输入参数,并与脚本逻辑完成后使用类方法进行输出端口数据的传递。3)与输入端口处理模式相同,transfer_input_class.py PYTHON脚本提供方法将端口数据写入中间文件,PYTHON算子执行实体中根据文件内容获取对应输出端口内容。若执行脚本无输入输出端口,则PYTHON算子执行实体仅负责调用脚本,并获取脚本执行控制台信息,将信息固定置于json类型输出端口之中,以便了解该算子的执行情况和错误信息。
在本说明书的一个实施例中,算子执行实体为基于C/C++开发语言的算子执行实体,C/C++算子执行主体的功能是通过提供的执行实体调用编译好的C/C++可执行文件。执行类中使用JNI调用编译好的DLL动态库,算子主要功能由动态库实现。
在本说明书实施例中,所述预设格式的文件为json文件,所述预设格式的文件的名称包括:端口名称,端口类型和端口数据;
其中,
所述端口名称及所述端口类型与算子实体中的端口信息;
所述端口数据为第一端口、和/或第二端口、和/或第三端口、和/或第四端口、和/或第五端口的执行方式的集合。
在本说明书实施例中,所述算子的基本信息的包括算子ID和算子名称,所述算子的端口信息是算子之间进行连线的依据。
算子ID和算子名称均为算子的唯一标识,其中,算子ID是动态生成的,算子ID针对的是不同的流程,相同的算子名称,可能具有不同的算子ID。
为了进一步理解本说明书实施例提供的算子注册方法,下面将结合算子的逻辑结构予以说明。图2为本说明书实施例提供的一种算子结构的示意图。在本说明书实施例中,算子的逻辑结构是以输入数据为驱动,以输出数据为目标而进行的数据处理工作的独立个体,在具体实施中,算子的逻辑结构包括:算子后端,算子前端和算子数据库。算子后端是执行实体,算子前端可实现拖拽、可编辑、可配置、可执行的可视化算子组件。
在算子的逻辑结构中,算子前端包括算子的基本信息,算子的端口信息,算子的配置界面及算子的洞察界面。其中,算子的基本信息至少包括算子ID及算子名称,算子的端口信息是算子间进行连线的依据,算子的配置界面是进行算子处理逻辑中的可变参数和/或算子所需参数的配置,算子的洞察界面进行算子处理结果和算子可展示部分内容的可视化展示。
在算子的逻辑结构中,算子后端是算子的核心,用于完成算子的主要功能;算子数据库作为数据基础,保证算子的唯一性,并进行算子后端与算子前端的连接;算子前端中可视化组件是关键,用于完成流程中算子的创建、配置和展示,是算子后端实体执行的前提。
算子后端提供不同类型端口间的数据转化算子,实现相同类型端口不同开发语言之间的数据转化,实现相同类型端口相同开发语音之间的数据传递。
在本说明书实施例中,算子后端主要用于算子执行的信息,包括:算子的执行逻辑,算子所需参数及算子输入输出端口信息。算子数据库主要存储算子的基础信息及算子执行基本信息。算子前端主要用于算子的基础信息,算子所需参数及算子输入输出端口信息。
在本说明书实施例中,算子创建过程主要为确定算子功能,实现算子后端的功能,亦即实现算子执行实体的开发。根据算子功能进行算子注册,进而进行算子功能测试,最后完成算子的创建流程。
算子后端相当于服务器,在进行算子注册时,只需要从算子后端或者说服务器调取数据,通过算子ID和算子名称进行配置,进行注册,通过拖拽生成算子实体即可。
在本说明书实施例中,算子数据库包括算子的基本信息、算子的端口信息、算子的开发语言、算子的后端配置信息。其中,算子的基本信息至少包括算子ID和算子名称,算子的基本信息还可以包括算子别名,算子分类。算子ID为算子的英文名,算子别名为算子的中文名,用于算子前端进行算子注册时,选择算子名称。算子后端配置信息包括算子执行类的类路径,jar包路径,脚本/DLL文件路径等定位执行主体的信息。
算子的基本信息定位算子的前端界面,算子的执行信息定位算子的后端,完成算子前后端信息的一一对应。数据库设计时规定算子的名称、id等基本信息不能重复,以保证算子的唯一性。
在本说明书实施例中,算子注册是生成算子数据库的信息,并根据输入输出端口类型,确定配置界面,从而自动生成算子前端组件。在具体实施例中,算子注册通过注册界面的操作生成算子数据库的信息,并根据注册界面所选择的输入输出端口类型,所配置的配置界面,以注册时的算子ID、算子名称为唯一标识,自动生成算子前端组件。
在本说明书实施例中,算子功能是根据业务场景而定的。例如,在本说明书的一个实施例中,需要实现svm算法对数据进行处理,则需要一个svm算子。根据算法的执行流程可知,该算法需要对输入数据进行相关处理,生成相对应的模型,然后将模型进行传递。因此,svm算子需要数据输入端口,数据处理过程,模型输出端口。svm的算子仅为本申请的一个示例性说明,其它算子的功能的确定亦是采用该方法,根据算法的执行流程,生成相应的模型,然后将模型进行传递。
算子执行实体需要集成算子执行体基类,算子执行体基类中定义了算子输入输出端口的处理方式,即根据端口名称及端口类型,进行执行端口数据的获取和传递。
在具体实施例中,算子执行体基类可以包括算子基类和端口基类,其中算子基类用于记载算子的抽象执行函数和/或洞察数据的生成函数;端口基类用于记载端口数据。
在本说明书的一个实施例中,以***定义的PortBean基类作为端口数据的承载实体,该实体记录端口的名称,类型,数据、数据结构及附加信息。其中,端口的名称可以作为端口标识。
附加信息是针对待处理的数据的附加信息,附加信息的具体内容由待处理的数据所属的数据类型而定,附加信息可简化计算过程。在具体实施例中,dataset端口(第一端口)中会携带当前数据的统计信息,在第一次生成该数据时,统计数据的总数,平均数,最大最小值等,并储存在端口数据中。以减少多次对同一数据进行统计信息的计算,减少计算流程中的时间损耗。
算子执行体基类中,还定义了算子的抽象执行函数和/或洞察数据的生成函数。在具体实施例中,算子的抽象执行函数用于完成算子执行功能的实现,返回值均为以输出端口名称为key的map结构数据,以向后传递输出端口数据。算子洞察数据的生成函数用于完成算子独有的洞察数据的生成,为前端洞察页面的显示提供数据支持。
注册过程中若注册算子开发语言为JAVA/SCALA则上传算子jar包并制定算子执行类的类路径;若上传算子开发语言为PYTHON,则在注册界面显示当前PYTHON可执行环境中支持的第三方库,并提供安装其他库的按钮。支持上传文件则转变为py文件(单一脚本)或zip包(多个py文件以及算子使用数据文件),上传成功后需选择唯一的执行文件作为算子执行主体入口文件,该文件通过调用其他脚本或独立执行完成算子的具体逻辑功能;若上传算子开发语言为C/C++,支持上传文件则转变为c/cpp文件,上传过程中通过提供编译环境,执行gcc命令实现自动编译。上传完成后选择唯一动态库文件作为算子执行主体入口文件,该动态库通过调用其他动态库或独立执行完成算子的具体逻辑功能。算子基本信息填写完成后进行算子配置界面自定义生成,最后完成算子注册。
算子注册阶段,可以在算子基础信息配置完成后进入配置界面自生成步骤。可根据参数需求进行文本框,单选框,多选框等多种类型的参数配置方案的选择。配置方案选择后填写对应的参数名称,默认参数,参数校验规则等信息。所有参数配置方案配置完毕后点击确定,则会生成对应算子的配置界面,完成前端配置界面的自生成步骤。
算子创建、注册完成后,即可获得算子注册框架。在算子注册框架上,可以看到已有的算子列表。在实际应用时,可根据需求进行算子的选择,并根据算子执行逻辑以端口为基准进行算子间的连线,形成实验流程,并对所有算子的配置界面进行参数配置。点击执行按钮后程序根据实验流程文件中的算子连接关系决定算子执行顺序,开始执行算子时根据算子执行信息通过反射的方式进行算子执行实体的生成,并执行算子执行函数,完成算子功能实现,执行算子洞察数据生成函数,并将结果通过程序提供的相关接口对对应算子的洞察界面进行赋值,完成算子洞察界面生成。依次执行各个算子,完成实验流程执行。算子执行过程,可在算子前端界面获得各个算子的执行日志。
为了进一步理解本说明书实施例提供的算子注册方法,下面将结合算子的注册过程予以说明。图3为本说明书实施例提供的一种算子注册过程的示意图,如图3所示,基于算子注册框架,待处理数据在算子前端完成算子注册。算子注册主要是进行算子基本信息配置,算子端口配置。在算子基本信息配置和算子端口配置完成后,进一步基于算子执行信息的配置,进行算子配置界面的生成,从而完成算子前端组件的生成,同时生成算子数据库信息。
为了进一步理解前述关于算子配置界面的生成,下面将结合具体的示意图予以说明。图4为本说明书实施例提供的一种算子配置界面生成的示意图,如图4所示,算子配置界面的生成包括:
基于算子注册框架,进行算子基本信息配置和算子端口配置;
确定算子执行是否需要额外配置项;在本说明书实施例中,额外配置项是指是否需要调用接口,是否需要算子本身之外的配置信息,配置内容是否需要额外的展示方式。一般在具体实施时,额外配置项的判断常基于算子的功能进行判断,一般算子功能复杂,配置信息会根据上级算子变更,配置信息需要调用接口获取,而不能简单地进行输入,或者说配置界面表现形式复杂。
若算子执行需要额外配置项,则判断配置界面提供的配置界面模板是否符合额外配置项的要求,若符合要求,则选择相应的模板,或者使用提供的相关组件通过拖拽生成配置界面;若不符合要求,则自定义配置界面,生成配置界面。需要特别说明的是,自定义配置界面可以保存为模板,作为配置界面模板以便后续使用。
若算子执行不需要额外配置项,则通过简单组件,进行相关参数配置,自动生成配置界面。
基于前述方法获得配置界面后,即完成算子注册,生成算子组件。
为了进一步理解本说明书实施例提供的算子注册方法,下面将结合算子执行的逻辑图予以说明。图5为本说明书实施例提供的一种实验执行逻辑示意图,如图5所示,在算子执行过程中,主要是输入端口数据输入,输入数据处理,输出端口数据生成及洞察数据生成,而且采用本说明书实施例提供的注册方法,进行算子注册后,可以实现不同执行主体的执行,而且能够实现不同类型端口间的数据转换算子,实现相同端口类型的不同开发语言之间的数据转化,并且能够实现相同端口类型的相同开发语言之间的数据传递。
进一步理解前述提到的实验执行逻辑,具体到脚本予以进一步说明。图6为本说明书实施例提供的一种脚本执行逻辑示意图,如图6所示,在算子执行过程中,基于端口数据转化及脚本执行位置,通过脚本执行工具类,进行脚本执行,实现算子的后端逻辑。
为了进一步理解本说明书实施例提供的算子注册方法,下面将结合算子的执行过程予以说明,以JAVA开发语言为例,图7为本说明书实施例提供的一种算子执行示意图。如图7所示,在流程开始执行当前算子时,首选判断当前算子是否属于***算子,若属于***算子,则流程获取算子执行类文件,进而生成执行类实体;若当前算子不属于***算子,则流程获取算子执行软件包(jar文件)路径及执行类文件,进而生成执行类实体。
进一步地,获得执行类实体后,需要进一步判断是否为JAVA算子,若是JAVA算子,则完成算子执行,生成输出端口数据,并生成洞察数据;若不是JAVA算子,则需要进行输入数据的转化,生成执行脚本或者其他可执行文件,进而输出转化的数据,从而完成算子执行,生成输出端口数据,并生成洞察数据。
采用本说明书实施例提供的方法,能够实现相同端口类型的不同开发语言之间的数据转化,并且能够实现相同端口类型的相同开发语言之间的数据传递,实现基于多种开发语言的开发算子在同一流程中的执行,提高算子的可拓展性。在进行算子注册时,只需要填写算子基本信息和端口信息,通过简单的拖拽即可完成算子配置界面,生成算子实体,无需进行代码开发,简化算子开发流程,实现算子注册阶段的自动适配。
上述内容详细说明了一种算子注册方法,与之相应的,本说明书还提供了一种算子注册装置,如图8所示。图8为本说明书实施例提供的一种算子注册装置的示意图,该装置包括:
获取模块801,获取待处理的数据;
端口确定模块803,基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
注册模块805,基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
进一步地,所述数据类型包括:基于开发框架的数据类型,基于原生数据库的数据类型,基于文档的数据,基于图形的数据及基于算子模型的可视化数据类型;
所述基于所述待处理的数据所属的数据类型,确定所述待处理的数据端口数据,具体包括:
若所述待处理的数据属于基于开发框架的数据类型,则所述待处理的数据的端口类型为第一端口;
若所述待处理的数据属于基于原生数据库的数据类型,则所述待处理的数据的端口类型为第二端口;
若所述待处理的数据属于基于文档的数据类型,则所述待处理的数据的端口类型为第三端口;
若所述待处理的数据属于基于图形的数据类型,则所述待处理的数据的端口类型为第四端口;
若所述待处理的数据属于基于算子模型的可视化数据类型,则所述待处理的数据的端口类型为第五端口。
进一步地,所述基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册,具体包括:
基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,所述算子执行体基类是由算子执行实体集成的。
进一步地,所述基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,具体包括:
基于所述算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置;
基于所述配置的算子基本信息和所述配置的算子端口信息,进行界面配置,完成算子注册。
进一步地,所述算子执行体基类包括算子执行体基类和端口执行体基类,所述执行体基类包括端口的基本信息,算子的抽象执行函数,算子洞察数据的生成函数。
进一步地,所述算子执行实体的开发语言包括:JAVA/SCALA开发语言,PYTHON开发语言,C/C++开发语言中的一种或几种;
其中,
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能;
基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能;
基于C/C++开发语言的算子执行实体的功能通过调用动态库,实现算子功能。
进一步地,所述基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能,具体包括:
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,通过算子执行函数完成算子输入数据及算子配置参数的接收、处理,和输出端口数据的传递,通过算子洞察函数进行可视化数据的生成,实现算子功能。
进一步地,所述基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能,具体包括:
若基于PYTHON开发语言的算子执行实体具有输入输出端口,则输入数据转化为预设格式的文件;
基于所述预设格式的文件,根据执行脚本路径及执行脚本的执行环境,实现算子功能;
若基于PYTHON开发语言的算子执行实体不具有输入输出端口,则调用脚本,通过所述脚本执行控制台信息,将所述控制台信息固定至预设类型的输出端口中,实现算子功能。
进一步地,所述预设格式的文件为json文件,所述预设格式的文件的名称包括:端口名称,端口类型和端口数据;
其中,
所述端口名称及所述端口类型与算子实体中的端口信息;
所述端口数据为第一端口、和/或第二端口、和/或第三端口、和/或第四端口、和/或第五端口的执行方式的集合。
进一步地,所述算子的基本信息的包括算子ID和算子名称,所述算子的端口信息是算子之间进行连线的依据。
本说明书实施例还提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取待处理的数据;
基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
进一步地,所述数据类型包括:基于开发框架的数据类型,基于原生数据库的数据类型,基于文档的数据,基于图形的数据及基于算子模型的可视化数据类型;
所述基于所述待处理的数据所属的数据类型,确定所述待处理的数据端口数据,具体包括:
若所述待处理的数据属于基于开发框架的数据类型,则所述待处理的数据的端口类型为第一端口;
若所述待处理的数据属于基于原生数据库的数据类型,则所述待处理的数据的端口类型为第二端口;
若所述待处理的数据属于基于文档的数据类型,则所述待处理的数据的端口类型为第三端口;
若所述待处理的数据属于基于图形的数据类型,则所述待处理的数据的端口类型为第四端口;
若所述待处理的数据属于基于算子模型的可视化数据类型,则所述待处理的数据的端口类型为第五端口。
进一步地,所述基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册,具体包括:
基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,所述算子执行体基类是由算子执行实体集成的。
进一步地,所述基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,具体包括:
基于所述算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置;
基于所述配置的算子基本信息和所述配置的算子端口信息,进行界面配置,完成算子注册。
进一步地,所述算子执行体基类包括算子执行体基类和端口执行体基类,所述执行体基类包括端口的基本信息,算子的抽象执行函数,算子洞察数据的生成函数。
进一步地,所述算子执行实体的开发语言包括:JAVA/SCALA开发语言,PYTHON开发语言,C/C++开发语言中的一种或几种;
其中,
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能;
基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能;
基于C/C++开发语言的算子执行实体的功能通过调用动态库,实现算子功能。
进一步地,所述基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能,具体包括:
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,通过算子执行函数完成算子输入数据及算子配置参数的接收、处理,和输出端口数据的传递,通过算子洞察函数进行可视化数据的生成,实现算子功能。
进一步地,所述基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能,具体包括:
若基于PYTHON开发语言的算子执行实体具有输入输出端口,则输入数据转化为预设格式的文件;
基于所述预设格式的文件,根据执行脚本路径及执行脚本的执行环境,实现算子功能;
若基于PYTHON开发语言的算子执行实体不具有输入输出端口,则调用脚本,通过所述脚本执行控制台信息,将所述控制台信息固定至预设类型的输出端口中,实现算子功能。
进一步地,所述预设格式的文件为json文件,所述预设格式的文件的名称包括:端口名称,端口类型和端口数据;
其中,
所述端口名称及所述端口类型与算子实体中的端口信息;
所述端口数据为第一端口、和/或第二端口、和/或第三端口、和/或第四端口、和/或第五端口的执行方式的集合。
进一步地,所述算子的基本信息的包括算子ID和算子名称,所述算子的端口信息是算子之间进行连线的依据。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书实施例提供的装置、电子设备、非易失性计算机存储介质与方法是对应的,因此,装置、电子设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、电子设备、非易失性计算机存储介质的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书实施例可提供为方法、***、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种算子注册方法,其特征在于,所述方法包括:
获取待处理的数据;
基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
2.如权利要求1所述的方法,其特征在于,所述数据类型包括:基于开发框架的数据类型,基于原生数据库的数据类型,基于文档的数据,基于图形的数据及基于算子模型的可视化数据类型;
所述基于所述待处理的数据所属的数据类型,确定所述待处理的数据端口数据,具体包括:
若所述待处理的数据属于基于开发框架的数据类型,则所述待处理的数据的端口类型为第一端口;
若所述待处理的数据属于基于原生数据库的数据类型,则所述待处理的数据的端口类型为第二端口;
若所述待处理的数据属于基于文档的数据类型,则所述待处理的数据的端口类型为第三端口;
若所述待处理的数据属于基于图形的数据类型,则所述待处理的数据的端口类型为第四端口;
若所述待处理的数据属于基于算子模型的可视化数据类型,则所述待处理的数据的端口类型为第五端口。
3.如权利要求1所述的方法,其特征在于,所述基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册,具体包括:
基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,所述算子执行体基类是由算子执行实体集成的。
4.如权利要求3所述的方法,其特征在于,所述基于算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置,完成算子注册,具体包括:
基于所述算子执行体基类及所述端口类型,进行算子基本信息和算子端口信息配置;
基于所述配置的算子基本信息和所述配置的算子端口信息,进行界面配置,完成算子注册。
5.如权利要求3所述的方法,其特征在于,所述算子执行体基类包括算子执行体基类和端口执行体基类,所述执行体基类包括端口的基本信息,算子的抽象执行函数,算子洞察数据的生成函数。
6.如权利要求3所述的方法,其特征在于,所述算子执行实体的开发语言包括:JAVA/SCALA开发语言,PYTHON开发语言,C/C++开发语言中的一种或几种;
其中,
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能;
基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能;
基于C/C++开发语言的算子执行实体的功能通过调用动态库,实现算子功能。
7.如权利要求6所述的方法,其特征在于,所述基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,实现算子功能,具体包括:
基于JAVA/SCALA开发语言的算子执行实体直接继承算子基类,通过算子执行函数完成算子输入数据及算子配置参数的接收、处理,和输出端口数据的传递,通过算子洞察函数进行可视化数据的生成,实现算子功能。
8.如权利要求6所述的方法,其特征在于,所述基于PYTHON开发语言的算子执行实体的功能分为是否具有输入输出端口两种执行方式,实现算子功能,具体包括:
若基于PYTHON开发语言的算子执行实体具有输入输出端口,则输入数据转化为预设格式的文件;
基于所述预设格式的文件,根据执行脚本路径及执行脚本的执行环境,实现算子功能;
若基于PYTHON开发语言的算子执行实体不具有输入输出端口,则调用脚本,通过所述脚本执行控制台信息,将所述控制台信息固定至预设类型的输出端口中,实现算子功能。
9.如权利要求8所述的方法,其特征在于,所述预设格式的文件为json文件,所述预设格式的文件的名称包括:端口名称,端口类型和端口数据;
其中,
所述端口名称及所述端口类型与算子实体中的端口信息;
所述端口数据为第一端口、和/或第二端口、和/或第三端口、和/或第四端口、和/或第五端口的执行方式的集合。
10.如权利要求1所述的方法,其特征在于,所述算子的基本信息的包括算子ID和算子名称,所述算子的端口信息是算子之间进行连线的依据。
11.一种算子注册装置,其特征在于,所述装置包括:
获取模块,获取待处理的数据;
端口确定模块,基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
注册模块,基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
12.一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取待处理的数据;
基于所述待处理的数据所属的数据类型,确定所述待处理的数据的端口类型;
基于所述端口类型,通过算子基本信息配置和算子端口信息配置,进行算子注册。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210124808.5A CN114168114A (zh) | 2022-02-10 | 2022-02-10 | 一种算子注册方法、装置以及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210124808.5A CN114168114A (zh) | 2022-02-10 | 2022-02-10 | 一种算子注册方法、装置以及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114168114A true CN114168114A (zh) | 2022-03-11 |
Family
ID=80489564
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210124808.5A Pending CN114168114A (zh) | 2022-02-10 | 2022-02-10 | 一种算子注册方法、装置以及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114168114A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114879943A (zh) * | 2022-06-30 | 2022-08-09 | 浙江大华技术股份有限公司 | 一种算法方案生成方法、装置以及计算机可读存储介质 |
CN116360891A (zh) * | 2023-04-03 | 2023-06-30 | 北京柏睿数据技术股份有限公司 | 一种可视化人工智能建模的算子自定义的方法和*** |
CN115729641B (zh) * | 2022-11-21 | 2023-08-25 | 中电金信软件有限公司 | 一种自定义组件的元数据流转方法、装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943945A (zh) * | 2017-11-24 | 2018-04-20 | 清华大学 | 一种大数据分析开发平台中异构算子管理方法 |
CN112270399A (zh) * | 2020-09-29 | 2021-01-26 | 北京百度网讯科技有限公司 | 基于深度学习的算子注册处理方法、装置及电子设备 |
CN112558942A (zh) * | 2020-12-22 | 2021-03-26 | 上海商汤智能科技有限公司 | 算子注册方法和相关产品 |
CN113342346A (zh) * | 2021-05-18 | 2021-09-03 | 北京百度网讯科技有限公司 | 深度学习框架的算子注册方法、装置、设备和存储介质 |
WO2021190597A1 (zh) * | 2020-03-27 | 2021-09-30 | 华为技术有限公司 | 一种神经网络模型的处理方法以及相关设备 |
-
2022
- 2022-02-10 CN CN202210124808.5A patent/CN114168114A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943945A (zh) * | 2017-11-24 | 2018-04-20 | 清华大学 | 一种大数据分析开发平台中异构算子管理方法 |
WO2021190597A1 (zh) * | 2020-03-27 | 2021-09-30 | 华为技术有限公司 | 一种神经网络模型的处理方法以及相关设备 |
CN112270399A (zh) * | 2020-09-29 | 2021-01-26 | 北京百度网讯科技有限公司 | 基于深度学习的算子注册处理方法、装置及电子设备 |
CN112558942A (zh) * | 2020-12-22 | 2021-03-26 | 上海商汤智能科技有限公司 | 算子注册方法和相关产品 |
CN113342346A (zh) * | 2021-05-18 | 2021-09-03 | 北京百度网讯科技有限公司 | 深度学习框架的算子注册方法、装置、设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114879943A (zh) * | 2022-06-30 | 2022-08-09 | 浙江大华技术股份有限公司 | 一种算法方案生成方法、装置以及计算机可读存储介质 |
CN115729641B (zh) * | 2022-11-21 | 2023-08-25 | 中电金信软件有限公司 | 一种自定义组件的元数据流转方法、装置及电子设备 |
CN116360891A (zh) * | 2023-04-03 | 2023-06-30 | 北京柏睿数据技术股份有限公司 | 一种可视化人工智能建模的算子自定义的方法和*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114168114A (zh) | 一种算子注册方法、装置以及设备 | |
CN107451663B (zh) | 算法组件化、基于算法组件建模方法、装置以及电子设备 | |
US9928038B2 (en) | Dynamically building locale objects or subsections of locale objects based on historical data | |
US9122491B2 (en) | Detecting serialization scheme used in software applications | |
CN109213685B (zh) | 业务逻辑测试方法及装置 | |
US20090228862A1 (en) | Modularized integrated software development environments | |
CN111881019B (zh) | 一种用户界面测试方法及装置 | |
WO2021197140A1 (zh) | 小程序文件包的生成 | |
CN111399840A (zh) | 一种模块开发方法及装置 | |
CN107391529B (zh) | 一种实现对象关系映射orm的方法及装置 | |
CN110046052B (zh) | 一种服务调用方法及装置 | |
US9141353B2 (en) | Dynamically building locale objects at run-time | |
US11934420B2 (en) | Systems and methods for componentization and plug and play workflows | |
US11176161B2 (en) | Data processing method, apparatus, and device | |
CN107391099B (zh) | 一种资源预处理方法及装置 | |
CN116719457A (zh) | 一种信息显示方法、装置及设备 | |
CN112559346A (zh) | 一种业务测试的方法及装置 | |
CN111538667A (zh) | 一种页面测试的方法及装置 | |
CN112416440B (zh) | 一种基于测控***的板卡控制方法、装置、设备及介质 | |
CN110874322A (zh) | 一种用于应用程序的测试方法及测试服务器 | |
CN110968513B (zh) | 一种测试脚本的录制方法及装置 | |
CN115687310A (zh) | 数据清洗方法及装置 | |
CN111639030A (zh) | 一种页面测试方法、装置、设备及存储介质 | |
CN110704039B (zh) | 应用开发过程中的配置数据处理方法以及装置 | |
CN110019034A (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: 20220311 |