[发明专利]可扩展的自定义算子的方法及系统在审
申请号: | 202111315529.9 | 申请日: | 2021-11-08 |
公开(公告)号: | CN116088809A | 公开(公告)日: | 2023-05-09 |
发明(设计)人: | 俞汇源;代真虎;孔晓阳;邹祎文;刘蔚超;薛秋兰;冯隽永;胡红 | 申请(专利权)人: | 上海宝信软件股份有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 胡晶 |
地址: | 200120 上海市浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 扩展 自定义 算子 方法 系统 | ||
1.一种可扩展的自定义算子的系统,其特征在于,包括:
Java自定义算子模块:指定自定义Java算子存放路径,将Java算子文件编译并实例化,在调用时通过反射传入参数,获得执行结果;
Python自定义算子模块:实现自定义Python算子的运行,在预处理框架中构造一个执行包装类,实现传参、运行、获得执行结果;
组合自定义算子模块:将原有的系统算子进行组合,记录所包含算子的id和上下线,实现逻辑封装,作为自定义组合算子重复使用;
算子审核模块:保证自定义算子代码安全性。
2.根据权利要求1所述的可扩展的自定义算子的系统,其特征在于,在所述Java自定义算子模块中:
规范要求:自定义Java算子的引脚、参数、和执行方法需要符合预处理框架中Java算子的的规范,Java自定义算子放置在指定的包路径下,继承指定的父对象,输入和输出引脚根据实际的业务需求配置,并提供出对应的get和set方法,设置与引脚相对应的参数获取,算子内部逻辑在excute()方法中编写,excute()方法为自定义算子主逻辑的指定方法名,自定义算子按照以上要求编写和存放;
性能要求:评估Java自定义算子的性能,不能出现使用过量的内存资源的对象,死锁或循环浪费CPU资源的逻辑,对异常进行处理并记录日志,以免影响整个框架的运行;
第三方jar包的使用和管理:如果自定义Java算子使用了第三方jar包,需要评审人员对外部jar包进行评审和测试,验证jar包的安全性之后由支持人员手动放置到生产环境中;
Java自定义算子的新增和修改:编写完成审核通过的算子通过自定义算子管理页面上传,在系统在线编译通过后使用,Java的自定义算子支持在线修改;
Java自定义算子的调试:通过自定义算子的调试接口,设定参数值和参数类型,传入算子ID对该算子进行在线调试。
3.根据权利要求1所述的可扩展的自定义算子的系统,其特征在于,在所述Python自定义算子模块中:
Python自定义算子规范:自定义Python算子接入预处理模块使用命令行传参,调用sys模块与JSON模块进行参数的解析,解析后的参数为一个字典,包含该算子的所有输入;参数从字典中获取输入引脚的数据进行相应的计算,保存结果,参数支持数据类型包括int,double,boolean,String,多维数组;算子的所有输出放在字典中用键值对存储,键位输出引脚名,并使用Print函数打印该字典生成的JSON字符串;Python自定义算子上传时,测试人员进行审查;
Python自定义算子执行过程:数据预处理框架是基于Java的框架,Python算子在预处理中的执行过程如下,先根据node中的语言类型判断算子语言,如果为Python算子则在实例化时构造一个Python的执行包装类,在执行类中将Python算子的输入参数转化为一个JSON串,建立一个Process,根据算子名在宝新数据预处理项目路径下执行对应的Python算子,取得Python转换成JSON串的执行结果,根据每个返回参数的类型做对应解析,执行包装类返回执行结果;
Python自定义算子的新增:在自定义算子管理页面上传算子文件,算子名称和自定义算子文件名相同;
Python自定义算子的调试:调用自定义算子调试接口,传入算子类型和参数、参数名在线调试,预先安装支持算子的对应版本的Python环境。
4.根据权利要求1所述的可扩展的自定义算子的系统,其特征在于,在所述组合自定义算子模块中:
组合自定义算子的新建和保存:在算子自定义界面选择算子组合器,获取到已有的系统算子列表,构建组合算子并保存;算子信息和算子引脚信息在数据库中按照一个系统算子的格式保存,部包含的算子的信息保存在另一张表中,记录算子类别、算子ID、算子语言、算子脚本、算子脚本路径和算子上线下线;
组合自定义算子的使用:用户在算法在使用组合算子,保存生成后台可运行的规则图,前台查询组合算子信息,将其替换成原本的算法流程,直接运行规则。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海宝信软件股份有限公司,未经上海宝信软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111315529.9/1.html,转载请声明来源钻瓜专利网。