文档

自定义Python组件上架

更新时间:

AICS组件根据来源分为平台组件和自定义组件。平台组件为系统内置的组件,用户不可编辑;自定义组件是用户自己编辑上架的组件。目前AICS支持Python脚本、Python组件、算法包组件三种自定义组件。本文介绍自定义Python组件的上架流程。

  1. 登录工业大脑智能制造平台AICS

  2. 左侧导航栏单击组件管理 > 自定义组件

  3. 自定义组件页面,单击右上角的新增组件

    新建组件
  4. 新增组件面板,正确填入参数,单击左下角确定

    python组件

    参数

    说明

    控制场景

    实时算法编排工业分析建模

    如选择实时算法编排,该自定义组件只能在实时算法编排的画布中使用;选择工业分析建模,该自定义组件只能在工业分析建模的画布中使用。

    组件名称

    自定义组件的名称。

    标识

    自定义组件的唯一标识。

    类型

    • Python脚本:画布通过Python编译器编写脚本。

    • Python组件:上架组件前编写好脚本,画布通过控件运行脚本。

    • 算法包组件:上传算法包方式运行组件。

    此处选择Python组件

    分组

    目前选择默认分组。

    运行方式

    • service实时调用:画布可实时调用组件,组件超时一分钟运行失败。此调用为常驻服务。

    • service异步回调:组件运行超过一分钟,服务挂起状态,走异步逻辑。此调用为常驻服务。

    • job:只有算法包组件类型可使用。调用一次启动一次pod,运行完成自动销毁。

    图标

    为自定义组件选择一个图标。

    描述

    选填,自定义组件的描述信息。

    Python脚本

    根据用户的业务来书写的Python代码。

    Python脚本样例:

    #import start
    
    ### customer code start
    def main(input_data, context):
        # input_data["IN1"] 用来取输入端口 参数标识为IN1的数据
        IN1 = input_data["IN1"] or None
        # IN1["key1"]["value"] 用来表示取IN1中配置的key1的值
        key1 = IN1["key1"]["value"]
        # OUT1是返回的参数标准JSON对象。用户可以根据自己的业务定义
        OUT1 = {
            "dataKey":{
                "value": key1,
                "keyName":"keyName",
                "quality":192
            },
            "dataKey2":{
                "value": 192,
                "keyName":"keyName",
                "quality":192
            },
            "dataKey3":{
                "value": 222,
                "keyName":"keyName",
                "quality":192
            }
        }
        return OUT1
    ### customer code end
  5. 组件控件添加。

    image.png

    序号

    操作

    1

    新增输入端口,IN1端口配置控件自动出现在输入配置页签下。

    可根据自己的业务需求新增多个输入端口,并从左侧控件栏拖入控件。

    2

    新增输出端口,OUT1端口配置控件自动出现在输入配置页签下。

    可根据自己的业务需求新增多个输出端口,并从左侧控件栏拖入控件。

    3

    分别选中IN1端口配置OUT1端口配置控件,在右侧控件配置栏进行配置。

    4

    保存编辑。

  6. 回到自定义组件页面,选中刚刚新建的Python组件,在操作栏中单击发布,填写版本号,选择发布类型,即可上架该组件。

  7. 运行Python组件。

    将自定义Python脚本拖入画布,单击画布左上角的运行图标。

    运行