如何开发插件

通过上面的介绍,读者基本已经了解了 Pipcook 主要的使用场景了,对,那就是 —— Pipeline,但要说到 Pipeline 却离不开插件,我们为 Pipcook 的 Pipeline 生态构建了一套开放的插件机制,通过这套机制,任何开发者都可以随时随地基于 Node.js 为 Pipcook 拓展插件。

首先,一个插件,也是一个 NPM 包,在 NPM 包的基础上,Pipcook 增加了一些拓展字段,即在 package.json 中增加了一些额外的定义,下面就是一个简单的定义:


{
   "name": "my-own-pipcook-plugin",
   "version": "1.0.0",
   "description": "my own pipcook plugin",
   "dependencies": {
     "@pipcook/pipcook-core": "^0.5.0"
   },
   "pipcook": {
     "category": "dataCollect",
     "datatype": "image"
   },
   "conda": {
     "python": "3.7",
     "dependencies": {
       "tensorflow": "2.2.0"
     }
   }
}

首先,每个插件都必须依赖 @pipcook/pipcook-core,它包含了实际定义插件所依赖的类型定义和一些工具函数。然后是 “pipcook” 节点,它定义了插件的基本信息,比如类别和数据类型,它用于 Pipcook 对插件本身做归类和整理,接下来就是 “conda” 节点(可选),如果插件依赖 Python 环境,那么开发者可以通过这个字段配置 Python 的依赖,比如上述就表示插件依赖 Python 版 tensorflow@2.2.0,在 Pipcook 安装插件时就会自动进行安装。

定义好这些基本信息后,就可以开始写具体的插件代码了,还记得前面在说明 Pipeline 流程时的那张图吗?每一种插件类型的写法都是不一样的,比如一个简单的 data collect 插件如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值