CN117389610A - 算子注册方法、装置、电子设备及存储介质 - Google Patents

算子注册方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117389610A
CN117389610A CN202311446521.5A CN202311446521A CN117389610A CN 117389610 A CN117389610 A CN 117389610A CN 202311446521 A CN202311446521 A CN 202311446521A CN 117389610 A CN117389610 A CN 117389610A
Authority
CN
China
Prior art keywords
component
operator
program
debugged
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
Application number
CN202311446521.5A
Other languages
English (en)
Inventor
官俊
肖勃飞
陈宏杰
庞绍玉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongdian Jinxin Digital Technology Group Co ltd
Original Assignee
Zhongdian Jinxin Digital Technology Group Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhongdian Jinxin Digital Technology Group Co ltd filed Critical Zhongdian Jinxin Digital Technology Group Co ltd
Priority to CN202311446521.5A priority Critical patent/CN117389610A/zh
Publication of CN117389610A publication Critical patent/CN117389610A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供了一种算子注册方法、装置、电子设备及存储介质,其中,该方法包括:根据用户输入的各参数配置项的配置信息,创建算子组件;根据算子组件的算子运行类型显示组件列表,组件列表中包括算子组件以及与算子组件的算子运行类型相同的至少一个关联组件;响应用户从组件列表中选择至少一个目标组件的操作,渲染显示各目标组件,并根据各目标组件的连接关系,生成待调试程序,待调试程序中包括相互关联的至少一个目标组件;响应用户针对待调试程序的调试指令,对待调试程序中的各目标组件进行调试;确定待调试程序是否调试成功,若是,则将待调试程序作为目标程序进行输出。根据本申请,能够减小算子注册成本,并提高算子程序开发调试的效率。

Description

算子注册方法、装置、电子设备及存储介质
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种算子注册方法、装置、电子设备及存储介质。
背景技术
算子是构建人工智能算法的计算单元,封装成组件后能够被开发平台调用并获取对应结果。现有的开发平台中通常包括内置组件,但在现有的内置组件不满足实际需求的情况下,则需要注册新的算子以得到新的组件。
目前,开发平台的算子注册方法较为简单,仅支持算子的基础信息录入,无法进行灵活的参数配置管理,并且算子的配置参数写死在算子注册代码中,若需要修改配置参数,则需要重新注册程序,再进行运行调试,从而导致算子注册的成本过高、开发效率较低。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种算子注册方法、装置、电子设备及存储介质,以解决现有技术中算子注册成本较高、开发效率较低的问题。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种算子注册方法,所述方法包括:
根据用户输入的各参数配置项的配置信息,创建算子组件;
根据所述算子组件的算子运行类型显示组件列表,所述组件列表中包括所述算子组件以及与所述算子组件的算子运行类型相同的至少一个关联组件;
响应用户从所述组件列表中选择至少一个目标组件的操作,渲染显示各所述目标组件,并根据各所述目标组件的连接关系,生成待调试程序,所述待调试程序中包括相互关联的至少一个所述目标组件;
响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试;
确定所述待调试程序是否调试成功,若是,则将所述待调试程序作为目标程序进行输出。
作为一种可能的实现方式,所述根据用户输入的各参数配置项的配置信息,创建算子组件,包括:
获取配置页面上显示的各参数配置项,所述参数配置项包括如下至少一项:算子打开模式、算子连线配置、算子参数分组设置、算子参数联动项配置、算子参数配置;
获取用户针对各参数配置项所输入的配置信息;
将各参数配置项以及参数配置项的配置信息分别组合为一个组件元素,并将各组件元素组合为所述算子组件。
作为一种可能的实现方式,所述获取配置页面上显示的各参数配置项之前,还包括:
根据用户上传的程序包,确定默认参数配置项以及所述默认参数配置项的配置信息。
作为一种可能的实现方式,所述根据所述算子组件的算子运行类型显示组件列表,包括:
根据所述算子组件的算子运行类型确定流程类型;
根据所述流程类型确定与所述算子组件的算子运行类型相同的至少一个关联组件,将所述算子组件以及所述至少一个关联组件组合为所述组件列表;
在流程设计界面的组件显示区域显示所述组件列表。
作为一种可能的实现方式,所述响应用户从所述组件列表中选择至少一个目标组件的操作,渲染显示各所述目标组件,包括:
响应用户从所述组件显示区域拖拽目标组件的操作,在所述流程设计界面的画布区域渲染显示所述目标组件;
响应用户在所述画布区域对至少两个目标组件的关联操作,建立所述至少两个目标组件的连接关系,并在所述画布区域渲染显示所述至少两个目标组件之间的连接关系。
作为一种可能的实现方式,所述响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试,包括:
根据所述待调试程序中各目标组件的连接关系,确定各目标组件的运行顺序;
根据各目标组件的运行顺序,依次运行所述待调试程序中的各目标组件。
作为一种可能的实现方式,所述响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试,包括:
获取所述待调试程序中各目标组件的优先级;
根据各目标组件的优先级,依次运行所述待调试程序中的各目标组件。
作为一种可能的实现方式,所述确定所述待调试程序是否调试成功,包括:
若所述待调试程序中各目标组件的渲染结果满足预设条件,且,各目标组件的运行日志中不存在异常信息,则确定所述待调试程序调试成功。
第二方面,本申请实施例提供了一种算子注册装置,所述装置包括:
创建模块,用于根据用户输入的各参数配置项的配置信息,创建算子组件;
显示模块,用于根据所述算子组件的算子运行类型显示组件列表,所述组件列表中包括所述算子组件以及与所述算子组件的算子运行类型相同的至少一个关联组件;
渲染模块,用于响应用户从所述组件列表中选择至少一个目标组件的操作,渲染显示各所述目标组件,并根据各所述目标组件的连接关系,生成待调试程序,所述待调试程序中包括相互关联的至少一个所述目标组件;
调试模块,用于响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试;
确定模块,用于确定所述待调试程序是否调试成功,若是,则将所述待调试程序作为目标程序进行输出。
作为一种可能的实现方式,所述创建模块具体用于:
获取配置页面上显示的各参数配置项,所述参数配置项包括如下至少一项:算子打开模式、算子连线配置、算子参数分组设置、算子参数联动项配置、算子参数配置;
获取用户针对各参数配置项所输入的配置信息;
将各参数配置项以及参数配置项的配置信息分别组合为一个组件元素,并将各组件元素组合为所述算子组件。
作为一种可能的实现方式,所述创建模块还用于:
根据用户上传的程序包,确定默认参数配置项以及所述默认参数配置项的配置信息。
作为一种可能的实现方式,所述显示模块具体用于:
根据所述算子组件的算子运行类型确定流程类型;
根据所述流程类型确定与所述算子组件的算子运行类型相同的至少一个关联组件,将所述算子组件以及所述至少一个关联组件组合为所述组件列表;
在流程设计界面的组件显示区域显示所述组件列表。
作为一种可能的实现方式,所述渲染模块具体用于:
响应用户从所述组件显示区域拖拽目标组件的操作,在所述流程设计界面的画布区域渲染显示所述目标组件;
响应用户在所述画布区域对至少两个目标组件的关联操作,建立所述至少两个目标组件的连接关系,并在所述画布区域渲染显示所述至少两个目标组件之间的连接关系。
作为一种可能的实现方式,所述调试模块具体用于:
根据所述待调试程序中各目标组件的连接关系,确定各目标组件的运行顺序;
根据各目标组件的运行顺序,依次运行所述待调试程序中的各目标组件。
作为一种可能的实现方式,所述调试模块具体用于:
获取所述待调试程序中各目标组件的优先级;
根据各目标组件的优先级,依次运行所述待调试程序中的各目标组件。
作为一种可能的实现方式,所述确定模块具体用于:
若所述待调试程序中各目标组件的渲染结果满足预设条件,且,各目标组件的运行日志中不存在异常信息,则确定所述待调试程序调试成功。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述第一方面任一项所述的算子注册方法的步骤。
第四方面,本申请实施例提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述第一方面任一项所述的算子注册方法的步骤。
根据本申请实施例的算子注册方法、装置、电子设备及存储介质,根据用户输入的各参数配置项的配置信息创建算子组件,并显示与算子组件的算子运行类型对应的组件列表,从组件列表中选择至少一个目标组件进行渲染,以及根据各目标组件的连接关系生成待调试程序,并对待调试程序进行调试,在确定待调试程序调试成功时,将待调试程序作为目标程序进行输出。根据本申请,将在算子注册过程中需要动态传递的参数配置项剥离出来,创建算子组件并实时渲染查看算子运行状态,以在需要进行参数调整时,直接在开发平台的参数配置界面中动态调整各参数配置项的配置信息,实现参数配置项的动态实时调整,并且在此过程中无需开发人员重新进行程序编译、打包、注册,简化了算子注册流程。基于此,实现便捷高效的可视化算子注册,能够降低算子注册成本以及提高算子开发效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种算子注册方法的流程示意图;
图2示出了本申请实施例提供的一种算子组件确定方法的流程图;
图3示出了本申请实施例提供的一种算子注册页面的示意图;
图4示出了本申请实施例提供的一种组件列表显示方法的流程示意图;
图5示出了本申请实施例提供的一种组件列表的示意图;
图6示出了本申请实施例提供的一种渲染方法的流程示意图;
图7示出了本申请实施例提供的一种组件渲染的界面示意图;
图8示出了本申请实施例提供的一种组件连接关系的示意图;
图9示出了本申请实施例提供的一种目标组件运行方法的流程示意图;
图10示出了本申请实施例提供的一种运行日志的界面显示图;
图11示出了本申请实施例提供的一种算子注册装置的结构示意图;
图12示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使得本领域技术人员能够使用本申请内容,结合特定应用场景“算子注册”,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕算子注册方法进行描述,但是应该理解,这仅是一个示例性实施例。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
现有的开发平台自定义的程序注册都较为简单,例如,基于用户提出的新的需求,新创建一个算子组件,由前端人员重新进行编码,在开发平台的配置界面进行相应的参数配置,封装并进行发布。在此过程中,程序中所包含的参数都写死在代码中,若封装得到的组件无法满足用户需求,需要进行参数调整时,则需要前端人员重新进行编码、运行调试,直至满足用户需求。因此,在现有的开发平台的算子注册过程中无法进行灵活的参数配置,也不支持参数的动态调整,此外,在算子注册过程中不便查看算子的运行状态,无法及时做出相应调整,只能在整个注册流程结束之后再进行调整,也为前端开发人员增加了工作量。基于此,现有的算子注册方法中算子注册开发调试的代价太大,且严重影响了算子开发效率。
为了解决上述问题,本申请实施例通过将动态传递的各参数配置项孤立出来,创建算子组件并实时渲染查看算子运行状态,以在需要进行参数调整时,直接在开发平台的参数配置界面中动态调整各参数配置项,无需重新进行编译、打包、注册,从而实现可视化算子注册,能够降低算子注册成本以及提高算子开发效率。
图1示出了本申请实施例提供的一种算子注册方法的流程示意图。如图1所示,该方法包括:
S101、根据用户输入的各参数配置项的配置信息,创建算子组件。
可选的,用户编译自定义程序,打包生成程序包,并将程序包上传到开发平台中。其中,自定义程序中包括多个算子注册的参数配置项,将程序包上传到开发平台中,开发平台才能响应用户的输入,根据用户输入的各参数配置项的配置信息创建算子组件。
示例性的,算子组件是针对用户输入的各参数配置项的配置信息进行封装得到的,以便后续使用过程中可直接调用封装后的算子组件,无需再对原始数据进行编码。
S102、根据算子组件的算子运行类型显示组件列表,组件列表中包括算子组件以及与算子组件的算子运行类型相同的至少一个关联组件。
可选的,通常情况下,组件列表中所包含的关联组件的算子运行类型是相同的,以此保证组件的正常运行。其中,算子运行类型包括实时和离线两种类型,算子运行类型不同,开发平台所显示的组件列表中包含的组件内容也会有所不同。例如,若算子组件的算子运行类型为实时类型,则开发平台中所显示的组件列表中包含的组件的算子运行类型均为实时,若算子组件的算子运行类型为离线类型,则开发平台中所显示的组件列表中包含的组件的算子运行类型均为离线。
此外,组件列表中除算子组件自身外,其余组件不仅与算子组件的算子运行类型相同,而且与算子组件具有关联关系。其中,关联关系具体体现为各组件与算子组件之间具有直接或间接的依赖关系。示例性的,算子组件与组件A之间的依赖关系具体表现为只有算子组件运行完成后才能运行组件A,或者只有当算子组件的参数配置项配置完成后才会显示组件A的参数配置项。
S103、响应用户从组件列表中选择至少一个目标组件的操作,渲染显示各目标组件,并根据各目标组件的连接关系,生成待调试程序,待调试程序中包括相互关联的至少一个目标组件。
可选的,在确定组件列表后,可从组件列表中选择至少一个目标组件进行渲染。具体地,开发平台中提供了渲染界面,可将选择好的至少一个目标组件放置在渲染界面中进行渲染显示,以实时查看目标组件的算子运行状态。同时,各目标组件之间存在依赖关系,在进行渲染显示时,可以通过连线的方式体现各目标组件之间的连接关系,并根据各目标组件的连接关系生成待调试程序。
S104、响应用户针对待调试程序的调试指令,对待调试程序中的各目标组件进行调试。
可选的,在生成待调试程序后,需要对待调试程序进行运行调试。示例性的,开发平台提供运行按钮,在接收到用户针对待调试程序的调试指令后,点击运行按钮后开始运行待调试程序。在待调试程序运行过程中,实时关注待调试程序的运行状态,以对待调试程序中各目标组件的参数配置项进行实时调整。
S105、确定待调试程序是否调试成功,若是,则将待调试程序作为目标程序进行输出。
可选的,在待调试程序调试成功的情况下,将待调试程序作为目标程序进行输出,示例性的,可将目标程序上传到开发平台中进行版本提交,以在后续使用过程中方便快速进行导入和导出。其中,确定待调试程序是否调试成功可以采用多种方式,例如在调试过程中实时查看开发平台中各目标组件的算子运行状态,运行生成的运行日志,或者查看目标组件的渲染结果。总之,对待调试程序进行调试,直至达到用户进行算子注册时的预期效果即可。
由此,根据本申请实施例提供的算子注册方法,将在算子注册过程中需要动态传递的参数配置项剥离出来,创建算子组件并实时渲染查看算子运行状态,以在需要进行参数调整时,直接在开发平台的参数配置界面中动态调整各参数配置项的配置信息,实现参数配置项的动态实时调整,并且在此过程中无需开发人员重新进行程序编译、打包、注册,简化了算子注册流程。基于此,实现便捷高效的可视化算子注册,能够降低算子注册成本以及提高算子开发效率。
作为一种可能的实现方式,如图2所示,上述步骤S101根据用户输入的各参数配置项的配置信息,创建算子组件,包括:
S201、获取配置页面上显示的各参数配置项,其中,参数配置项包括如下至少一项:算子打开模式、算子连线配置、算子参数分组设置、算子参数联动项配置、算子参数配置。
可选的,用户输入的各参数配置项的配置信息上传到开发平台后,在开发平台的配置页面上会对各参数配置项进行显示,以便对各参数配置项的配置信息进行调整。
示例性的,算子打开模式可以包括通过鼠标控制模式和编辑模式,若注册的算子是脚本类的算子,可以定义算子组件的编辑模式为:打开脚本编辑。由此,若打开了脚本编辑,则可以直接在开发平台中编辑算子的程序内容,以便进行快速修改和调试。
示例性的,算子连线配置是指定义算子支持的最大连接数,即确定新创建的算子组件能够与哪些其他算子进行连接。例如,若新创建的算子组件与其他组件存在依赖关系,则可以通过配置连接的方式,确定与新建的算子组件存在依赖关系的组件。由于算子包括实时算子和离线算子,实时算子只能和实时算子进行连接,离线算子只能和离线算子进行连接,所以在进行算子连线配置时,可通过连线的线型区分算子是实时的还是离线的。例如,若是实时算子则连线通过虚线展示,若是离线算子则连线通过实线展示。
示例性的,算子参数分组设置是指算子组件中的各个参数配置项可能存在大量的配置项,采用对多个配置项进行分组的方式,例如将同一类型的配置项放置在同一个分组中,如输入源配置组、基础配置组、高级配置组等。其中具体如何分组不做具体限定,可根据用户需求进行自定义设置。以此,不仅能够提高参数配置项的分布条理性,也能够简化配置项的配置难度,进而提升配置项的配置效率。
示例性的,算子参数联动项配置是指算子组件中的各参数配置项存在一些联动配置项,也即参数配置项与其他的一些配置项存在依赖关系。例如,在参数配置项A对应的配置信息配置完成后,参数配置项B才能得以显示,此时,参数配置项A和参数配置项B即存在依赖关系,参数配置项A和参数配置项B互为联动配置项,例如“数据源-数据库类型-该类型下的多个数据库”,其中三者即存在依赖关系,互为联动配置项。
示例性的,算子参数配置即配置录入算子组件的参数配置信息,例如参数键名、参数名称、组件类型(如输入框、文本框、下拉框、日期选择等)、默认值、参数排序、正则校验规则、长度限制、是否必填、隐藏、禁用、元数据、联动项关联、所属分组等。
S202、获取用户针对各参数配置项所输入的配置信息。
示例性的,在获取算子打开模式、算子连线配置、算子参数分组设置、算子参数联动项配置、算子参数配置等参数配置项,并对其进行相应参数配置,进而获取各参数配置项所输入的配置信息。例如对算子打开模式这一参数配置项进行配置,获取其对应的配置信息即为通过鼠标控制或是编辑模式。
S203、将各参数配置项以及参数配置项的配置信息分别组合为一个组件元素,并将各组件元素组合为算子组件。
示例性的,将算子打开模式和编辑模式组合为一个组件元素,将算子运行类型和实时组合为一个组件元素,将算子连线配置和最大连接数9组合为一个组件元素。诸如此类,将各参数配置项以及参数配置项的配置信息分别组合为一个组件元素,将各个组件元素进行组合即得到算子组件。
基于此,通过获取配置界面上显示的各参数配置项,以及各参数配置项对应的配置信息,确定算子组件,以及算子组件中的各组件元素,以便将各参数配置项从算子程序中剥离处理,在需要对各参数配置项的配置信息进行调整时,直接进行动态调整,以提高参数调整的便捷性和高效性。
作为一种可能的实现方式,在上述步骤S201获取配置页面上显示的各参数配置项之前,该方法还包括:根据用户上传的程序包,确定默认参数配置项以及默认参数配置项的配置信息。
示例性的,用户编译算子程序并打包生成程序包,将程序包上传到开发平台中的算子注册页面,以对上传的程序包进行识别和内容读取,并在开发平台中显示读取到的各默认参数配置项,其中,默认参数配置项即默认不需要修改配置信息的参数配置项。如图3所示,例如其中的算法名称、启动命令等参数配置项对应的配置信息固定不发生改变,即可将其作为默认参数配置项。
基于此,根据用户上传的程序包,提前确认其中的默认参数配置项以及默认参数配置项的配置信息,在后续需要对参数配置项的配置信息进行调整时,可自动滤过对默认参数配置项的配置信息的配置,以此能够提高参数配置项的配置效率。
作为一种可能的实现方式,如图4所示,上述步骤S102根据算子组件的算子运行类型显示组件列表,包括:
S401、根据算子组件的算子运行类型确定流程类型。
示例性的,算子组件的算子运行类型不同,在开发平台中新建开发流程时,对应的流程类型也不相同。其中,算子运行类型可以包括实时运行和离线运行两种运行类型,若算子组件的算子运行类型为实时运行,则对应的流程类型也为实时类型,若算子组件的算子运行类型为离线运行,则对应的流程类型也为离线类型。
S402、根据流程类型确定与算子组件的算子运行类型相同的至少一个关联组件,将算子组件以及至少一个关联组件组合为组件列表。
示例性的,开发平台中包括一部分内置组件,内置组件的算子运行类型是已经确定的,并且已根据对应的算子运行类型确定内置组件对应的流程类型,以及将内置组件划分到对应的流程中。
在根据算子组件的算子运行类型确定流程类型之后,从开发平台中确定与算子组件的算子运行类型相同的至少一个关联组件。例如,新建的算子组件对应的流程类型为实时类型,开发平台现有的内置组件包括A、B、C、D,其中内置组件A、B、C对应的算子运行类型为实时运行,内置组件D的算子运行类型为离线运行,且内置组件A、C与新创建的算子组件存在依赖关系,则内置组件A和内置组件C可作为算子组件的关联组件,并将内置组件A、内置组件C和算子组件组合为组件列表。
S403、在流程设计界面的组件显示区域显示组件列表。
示例性的,开发平台的流程设计界面中包含组件显示区域,如图5所示,将组件列表在组件显示区域中进行显示,以便后续从中选择目标组件进行渲染。
基于此,根据算子组件的算子运行类型确定流程类型,并从对应的流程类型中确定与算子组件的算子运行类型相同的至少一个关联组件,从而生成组件列表。以此,组件列表中所包含的组件除算子组件本身以外,皆是与算子组件具有依赖关系,且算子运行类型相同的组件,以确保在从组件列表中选择目标组件进行渲染、以及进行运行调试时,渲染和调试工作能够顺利执行。
作为一种可能的实现方式,如图6所示,上述步骤S103响应用户从组件列表中选择至少一个目标组件的操作,渲染显示各目标组件,包括:
S601、响应用户从组件显示区域拖拽目标组件的操作,在流程设计界面的画布区域渲染显示目标组件。
示例性的,如图7所示,从组件显示区域中显示的组件列表中,选择至少一个目标组件,并通过拖拉拽操作将目标组件放置在流程设计界面的画布区域中,以对目标组件进行渲染显示。
以上述组件列表的示例继续进行说明,已将内置组件A、内置组件C和算子组件组合为组件列表,则内置组件A、内置组件C和算子组件都可作为目标组件,示例性的,将内置组件A、内置组件C和算子组件作为目标组件拖拽到流程设计界面的画布区域中,以对内置组件A、内置组件C和算子组件进行渲染显示。
S602、响应用户在画布区域对至少两个目标组件的关联操作,建立至少两个目标组件的连接关系,并在画布区域渲染显示至少两个目标组件之间的连接关系。
示例性的,如图8所示,继续以上述选择目标组件的示例进行说明,例如已选择内置组件A、内置组件C和算子组件作为目标组件添加到了画布区域中,且已知内置组件A、内置组件C和算子组件对应的算子均是实时算子,则内置组件A、内置组件C和算子组件之间通过虚线连接,以此建立并显示内置组件A、内置组件C和算子组件之间的连接关系。
基于此,在开发平台的流程设计界面的画布区域中对目标组件的运行过程进行实时渲染,实现可视化的算子注册,以便用户实时查看目标组件对应的算子状态,以实时对目标组件的参数配置项进行及时的调整。
作为一种可能的实现方式,如图9所示,上述步骤S104响应用户针对待调试程序的调试指令,对待调试程序中的各目标组件进行调试,包括:
S901、根据待调试程序中各目标组件的连接关系,确定各目标组件的运行顺序。
示例性的,目标组件之间的连接关系也体现了目标组件之间的依赖关系,结合上图8所示,通过内置组件A、内置组件C和算子组件之间的连接关系,确定内置组件A、内置组件C和算子组件之间的运行顺序,例如先运行算子组件、再运行内置组件A,最后运行内置组件C。
S902、根据各目标组件的运行顺序,依次运行待调试程序中的各目标组件。
示例性的,按照目标组件的运行顺序:算子组件、内置组件A、内置组件C,依次运行算子组件、内置组件A和内置组件C。
基于此,按照各目标组件之间的连接关系确定各目标组件的运行顺序,以按照运行顺序依次运行各目标组件。由于各目标组件之间的连接关系也体现了各目标组件的依赖关系,以此按照连接关系确定运行顺序,也能够保证具有依赖关系的各目标组件能够顺利运行。
作为一种可能的实现方式,上述步骤S104还包括:获取待调试程序中各目标组件的优先级;根据各目标组件的优先级,依次运行待调试程序中的各目标组件。
示例性的,用户可根据待调试程序中各目标组件的重要程度为各目标组件设置优先级,优先级也能够影响待调试程序中各目标组件的运行顺序。例如待调试程序中存在目标组件A、B、C、D,各目标组件的重要程度依次排列为B、A、D、C,也即说明各目标组件的优先级依次为B、A、D、C,所以在接收到针对待调试程序的调试指令时,按照优先级顺序B、A、D、C依次运行各目标组件。
基于此,根据待调试程序中各目标组件的重要程度为各目标组件设置优先级,能够确保重要程度较高的、核心的目标组件被优先运行。
作为一种示例,若待调试程序中各目标组件的渲染结果满足预设条件,且,各目标组件的运行日志中不存在异常信息,则确定待调试程序调试成功。示例性的,如图10所示,按照各目标组件的运行顺序依次运行各目标组件的同时,可在画布区域中实时显示各目标组件的渲染结果,并且可以在开发平台中实时查看各目标组件的运行日志。由此,可以利用各目标组件的渲染结果以及各目标组件的运行日志来确定待调试程序是否调试成功。具体地,若待调试程序中各目标组件的渲染结果满足用户预期的效果,且各目标组件的运行日志中不存在异常信息,即可以确定待调试程序调试成功。
基于此,通过实时查看画布显示的各目标组件的渲染结果以及各目标组件的运行日志,监测各目标组件的算子运行状态,从而确定待调试程序是否调试成功,以便进一步对各参数配置项的配置信息进行适应修改。此外,将运行调试好的待调试程序进行版本提交,以便后续使用时可以进行快速的流程导出和导入。
基于同一发明构思,本申请实施例还提供了与算子注册方法对应的算子注册装置,由于本申请实施例中的装置解决问题的原理与本申请实施例中上述算子注册方法相似,因此算子注册装置的实施可以参见方法的实施,重复之处不再赘述。
参照图11所示,为本申请实施例提供的一种算子注册装置的结构示意图,所述算子注册装置1100包括:创建模块1101、显示模块1102、渲染模块1103、调试模块1104、确定模块1105;其中,
创建模块1101,用于根据用户输入的各参数配置项的配置信息,创建算子组件;
显示模块1102,用于根据算子组件的算子运行类型显示组件列表,组件列表中包括算子组件以及与算子组件的算子运行类型相同的至少一个关联组件;
渲染模块1103,用于响应用户从组件列表中选择至少一个目标组件的操作,渲染显示各目标组件,并根据各目标组件的连接关系,生成待调试程序,待调试程序中包括相互关联的至少一个目标组件;
调试模块1104,用于响应用户针对待调试程序的调试指令,对待调试程序中的各目标组件进行调试;
确定模块1105,用于确定待调试程序是否调试成功,若是,则将待调试程序作为目标程序进行输出。
根据本申请实施例的算子注册装置,将在算子注册过程中需要动态传递的参数配置项剥离出来,创建算子组件并实时渲染查看算子运行状态,以在需要进行参数调整时,直接在开发平台的参数配置界面中动态调整各参数配置项的配置信息,实现参数配置项的动态实时调整,并且在此过程中无需开发人员重新进行程序编译、打包、注册,简化了算子注册流程。基于此,实现便捷高效的可视化算子注册,能够降低算子注册成本以及提高算子开发效率。
一种可能的实施方式中,上述创建模块1101具体用于:
获取配置页面上显示的各参数配置项,参数配置项包括如下至少一项:算子打开模式、算子连线配置、算子参数分组设置、算子参数联动项配置、算子参数配置;
获取用户针对各参数配置项所输入的配置信息;
将各参数配置项以及参数配置项的配置信息分别组合为一个组件元素,并将各组件元素组合为算子组件。
一种可能的实施方式中,上述创建模块1101还用于:
根据用户上传的程序包,确定默认参数配置项以及默认参数配置项的配置信息。
一种可能的实施方式中,上述显示模块1102具体用于:
根据算子组件的算子运行类型确定流程类型;
根据流程类型确定与算子组件的算子运行类型相同的至少一个关联组件,将算子组件以及至少一个关联组件组合为组件列表;
在流程设计界面的组件显示区域显示组件列表。
一种可能的实施方式中,上述渲染模块1103具体用于:
响应用户从组件显示区域拖拽目标组件的操作,在流程设计界面的画布区域渲染显示目标组件;
响应用户在画布区域对至少两个目标组件的关联操作,建立至少两个目标组件的连接关系,并在画布区域渲染显示至少两个目标组件之间的连接关系。
一种可能的实施方式中,上述调试模块1104具体用于:
根据待调试程序中各目标组件的连接关系,确定各目标组件的运行顺序;
根据各目标组件的运行顺序,依次运行待调试程序中的各目标组件。
一种可能的实施方式中,上述调试模块1104具体用于:
获取待调试程序中各目标组件的优先级;
根据各目标组件的优先级,依次运行待调试程序中的各目标组件。
一种可能的实施方式中,上述确定模块1105具体用于:
若待调试程序中各目标组件的渲染结果满足预设条件,且,各目标组件的运行日志中不存在异常信息,则确定待调试程序调试成功。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
本申请实施例还提供了一种电子设备,如图12所示,为本申请实施例提供的电子设备1200的结构示意图,包括:处理器1201、存储器1202,可选的,还可以包括总线1203。所述存储器1202存储有所述处理器1201可执行的机器可读指令,当电子设备1200运行时,所述处理器1201与所述存储器1202之间通过总线1203通信,所述机器可读指令被所述处理器1201执行如上任一项所述的算子注册方法的步骤。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任一项算子注册方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。

Claims (10)

1.一种算子注册方法,其特征在于,包括:
根据用户输入的各参数配置项的配置信息,创建算子组件;
根据所述算子组件的算子运行类型显示组件列表,所述组件列表中包括所述算子组件以及与所述算子组件的算子运行类型相同的至少一个关联组件;
响应用户从所述组件列表中选择至少一个目标组件的操作,渲染显示各所述目标组件,并根据各所述目标组件的连接关系,生成待调试程序,所述待调试程序中包括相互关联的至少一个所述目标组件;
响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试;
确定所述待调试程序是否调试成功,若是,则将所述待调试程序作为目标程序进行输出。
2.根据权利要求1所述的方法,其特征在于,所述根据用户输入的各参数配置项的配置信息,创建算子组件,包括:
获取配置页面上显示的各参数配置项,所述参数配置项包括如下至少一项:算子打开模式、算子连线配置、算子参数分组设置、算子参数联动项配置、算子参数配置;
获取用户针对各参数配置项所输入的配置信息;
将各参数配置项以及参数配置项的配置信息分别组合为一个组件元素,并将各组件元素组合为所述算子组件。
3.根据权利要求2所述的方法,其特征在于,所述获取配置页面上显示的各参数配置项之前,还包括:
根据用户上传的程序包,确定默认参数配置项以及所述默认参数配置项的配置信息。
4.根据权利要求1所述的方法,其特征在于,所述根据所述算子组件的算子运行类型显示组件列表,包括:
根据所述算子组件的算子运行类型确定流程类型;
根据所述流程类型确定与所述算子组件的算子运行类型相同的至少一个关联组件,将所述算子组件以及所述至少一个关联组件组合为所述组件列表;
在流程设计界面的组件显示区域显示所述组件列表。
5.根据权利要求4所述的方法,其特征在于,所述响应用户从所述组件列表中选择至少一个目标组件的操作,渲染显示各所述目标组件,包括:
响应用户从所述组件显示区域拖拽目标组件的操作,在所述流程设计界面的画布区域渲染显示所述目标组件;
响应用户在所述画布区域对至少两个目标组件的关联操作,建立所述至少两个目标组件的连接关系,并在所述画布区域渲染显示所述至少两个目标组件之间的连接关系。
6.根据权利要求1所述的方法,其特征在于,所述响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试,包括:
根据所述待调试程序中各目标组件的连接关系,确定各目标组件的运行顺序;
根据各目标组件的运行顺序,依次运行所述待调试程序中的各目标组件。
7.根据权利要求1所述的方法,其特征在于,所述响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试,包括:
获取所述待调试程序中各目标组件的优先级;
根据各目标组件的优先级,依次运行所述待调试程序中的各目标组件。
8.根据权利要求1所述的方法,其特征在于,所述确定所述待调试程序是否调试成功,包括:
若所述待调试程序中各目标组件的渲染结果满足预设条件,且,各目标组件的运行日志中不存在异常信息,则确定所述待调试程序调试成功。
9.一种算子注册装置,其特征在于,包括:
创建模块,用于根据用户输入的各参数配置项的配置信息,创建算子组件;
显示模块,用于根据所述算子组件的算子运行类型显示组件列表,所述组件列表中包括所述算子组件以及与所述算子组件的算子运行类型相同的至少一个关联组件;
渲染模块,用于响应用户从所述组件列表中选择至少一个目标组件的操作,渲染显示各所述目标组件,并根据各所述目标组件的连接关系,生成待调试程序,所述待调试程序中包括相互关联的至少一个所述目标组件;
调试模块,用于响应用户针对所述待调试程序的调试指令,对所述待调试程序中的各目标组件进行调试;
确定模块,用于确定所述待调试程序是否调试成功,若是,则将所述待调试程序作为目标程序进行输出。
10.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器执行所述机器可读指令,以执行如权利要求1至8任一所述的算子注册方法的步骤。
CN202311446521.5A 2023-11-01 2023-11-01 算子注册方法、装置、电子设备及存储介质 Pending CN117389610A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311446521.5A CN117389610A (zh) 2023-11-01 2023-11-01 算子注册方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311446521.5A CN117389610A (zh) 2023-11-01 2023-11-01 算子注册方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117389610A true CN117389610A (zh) 2024-01-12

Family

ID=89470020

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311446521.5A Pending CN117389610A (zh) 2023-11-01 2023-11-01 算子注册方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117389610A (zh)

Similar Documents

Publication Publication Date Title
CN107273286B (zh) 针对任务应用的场景自动化测试平台及方法
US5745897A (en) Method and system for compiling management information base specifications
CN106933729A (zh) 一种基于云平台的测试方法和系统
CN104615541A (zh) 基于流程图的仿真测试建模系统及方法
CN110659018B (zh) 一种流程引擎实现方法及装置
CN106293664A (zh) 代码生成方法及装置
CN109144511B (zh) 数值模拟图形用户界面自动生成方法及系统
CN109002033B (zh) 基于uds的自动化标定系统及方法
CN112506500B (zh) 一种可视化控件创建方法及装置
WO2022188780A1 (zh) 视觉软件开发系统、方法、装置及计算机存储介质
CN113268227A (zh) 一种零代码可视化的软件开发平台及开发方法
CN104054051A (zh) 操纵源代码补丁
CN112199273A (zh) 一种虚拟机压力/性能测试方法及系统
Hopsu et al. On portability of IEC 61499 compliant structures and systems
CN110806871B (zh) 一种可配置的船舶管理系统
CN111813377A (zh) 一种自动生成应用程序的方法及装置
CN104252413A (zh) 一种自动化脚本生成方法、装置及系统
CN106951593A (zh) 一种生成保护测控装置的配置文件的方法和装置
CN113919158A (zh) 一种用于飞行控制面板的仿真方法、装置及存储介质
CN117389610A (zh) 算子注册方法、装置、电子设备及存储介质
Lourenço et al. Cloudcity: A live environment for the management of cloud infrastructures
US20050177773A1 (en) Software method for exhaustive variation of parameters, independent of type
US8347219B1 (en) Object-level display building
CN115269390A (zh) 一种图形化接口自动测试方法、装置及存储介质
CN114879943A (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