yorkie / pipcook

基于 tfjs-node 的前端算法工程框架 front-end algorithm engineer platform based on tfjs-node

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pipcook

A JavaScript application framework for machine learning and its engineering.

npm npm Github Action Build Docker Cloud Build Status GitHub repo size

Why Pipcook

With the mission of enabling JavaScript engineers to utilize the power of machine learning without any prerequisites and the vision to lead front-end technical field to the intelligention. Pipcook is to become the JavaScript application framework for the cross-cutting area of machine learning and front-end interaction.

We are truly to design Pipcook's API for front-end and machine learning applications, and focusing on the front-end area and developed from the JavaScript engineers' view. With the principle of being friendly to JavaScript, we will push the whole area forward with the machine learning engineering. For this reason we opened an issue about machine-learning application APIs, and look forward to you get involved.

What's Pipcook

Pipcook can be divided into the following 3 layers from top to bottom.

Pipcook Application

It defines flexible and intuitive APIs to build machine-learning application, even though you don't know the details of algorithm.

Pipcook Core

It's used to represent ML pipelines consisting of Pipcook plugins. This layer ensures the stability and scalability of the whole system, and uses a plug-in mechanism to support rich functions including: dataset, training, validations and deployment.

Pipcook Bridge to Python

For JavaScript engineers, the most difficult part is the lack of a mature machine learning toolset in the ecosystem. To this end, we have opened up the interaction between Python and Node.js at the bottom and can easily call some missing APIs.

Quick start

Setup

Prepare the following on your machine:

Installer Version range
Node.js >= 10.16
Python >= 3.6
npm >= 6.1

Install the command-line tool for managing Pipcook projects:

$ npm install -g @pipcook/pipcook-cli

Initialize a project:

$ mkdir pipcook-example && cd pipcook-example
$ pipcook init
$ cd pipcook-project

Examples

In this reposiory, We have prepared several examples, some of they are:

See here for complete list, and it's easy and quick to run these examples. For example, to do a minst image classification, just run the following to start the pipeline:

$ node examples/pipcook-app-example/pipcook-imageclass-app-test.js

Documentation

Please refer to English | 中文

Developers

Clone this repository:

$ git clone git@github.com:alibaba/pipcook.git

Install lerna and TypeScript, and check:

$ lerna -v
$ tsc -v

or install via npm:

$ npm install

After the above, now build the project:

$ npm run build

License

Apache 2.0

About

基于 tfjs-node 的前端算法工程框架 front-end algorithm engineer platform based on tfjs-node

License:Apache License 2.0


Languages

Language:TypeScript 58.7%Language:JavaScript 29.1%Language:Python 8.8%Language:CSS 2.4%Language:Dockerfile 0.6%Language:HTML 0.4%