All Projects → kubeflow-kale → Kale

kubeflow-kale / Kale

Licence: apache-2.0
Kubeflow’s superfood for Data Scientists

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Kale

Pytorchneuralstyletransfer
Implementation of Neural Style Transfer in Pytorch
Stars: ✭ 327 (+0.93%)
Mutual labels:  jupyter-notebook
Tutorials
Jupyter notebook tutorials from QuantConnect website for Python, Finance and LEAN.
Stars: ✭ 323 (-0.31%)
Mutual labels:  jupyter-notebook
Machine Learning In 90 Days
Stars: ✭ 321 (-0.93%)
Mutual labels:  jupyter-notebook
Scipy Cookbook
Scipy Cookbook
Stars: ✭ 326 (+0.62%)
Mutual labels:  jupyter-notebook
Python Data Analysis And Image Processing Tutorial
파이썬을 활용한 데이터 분석과 이미지 처리 - 강의 자료 및 소스코드 Repository입니다.
Stars: ✭ 325 (+0.31%)
Mutual labels:  jupyter-notebook
Models
A collection of pre-trained, state-of-the-art models in the ONNX format
Stars: ✭ 4,226 (+1204.32%)
Mutual labels:  jupyter-notebook
Ml Art Colabs
A list of Machine Learning Art Colabs
Stars: ✭ 308 (-4.94%)
Mutual labels:  jupyter-notebook
Notebooks
Google Cloud Datalab samples and documentation
Stars: ✭ 328 (+1.23%)
Mutual labels:  jupyter-notebook
Cc150
《程序员面试金典》(cc150)
Stars: ✭ 326 (+0.62%)
Mutual labels:  jupyter-notebook
Whylogs
Profile and monitor your ML data pipeline end-to-end
Stars: ✭ 328 (+1.23%)
Mutual labels:  jupyter-notebook
Observations
Stars: ✭ 325 (+0.31%)
Mutual labels:  jupyter-notebook
Dota Doai
This repo is the codebase for our team to participate in DOTA related competitions, including rotation and horizontal detection.
Stars: ✭ 326 (+0.62%)
Mutual labels:  jupyter-notebook
Homemade Machine Learning
🤖 Python examples of popular machine learning algorithms with interactive Jupyter demos and math being explained
Stars: ✭ 18,594 (+5638.89%)
Mutual labels:  jupyter-notebook
Jupyter Edu Book
Teaching and Learning with Jupyter
Stars: ✭ 325 (+0.31%)
Mutual labels:  jupyter-notebook
Azurepublicdataset
Microsoft Azure Traces
Stars: ✭ 327 (+0.93%)
Mutual labels:  jupyter-notebook
Youtube Code Repository
Repository for most of the code from my YouTube channel
Stars: ✭ 317 (-2.16%)
Mutual labels:  jupyter-notebook
Pylightgbm
Python binding for Microsoft LightGBM
Stars: ✭ 328 (+1.23%)
Mutual labels:  jupyter-notebook
Baal
Using approximate bayesian posteriors in deep nets for active learning
Stars: ✭ 328 (+1.23%)
Mutual labels:  jupyter-notebook
Medium
Code related to blog posts on my Medium page
Stars: ✭ 329 (+1.54%)
Mutual labels:  jupyter-notebook
Mth594 machinelearning
The materials for the course MTH 594 Advanced data mining: theory and applications (Dmitry Efimov, American University of Sharjah)
Stars: ✭ 327 (+0.93%)
Mutual labels:  jupyter-notebook

Kale Logo

GitHub License PyPI Version npm Version Kale CI Workflow Status


KALE (Kubeflow Automated pipeLines Engine) is a project that aims at simplifying the Data Science experience of deploying Kubeflow Pipelines workflows.

Kubeflow is a great platform for orchestrating complex workflows on top Kubernetes and Kubeflow Pipeline provides the mean to create reusable components that can be executed as part of workflows. The self-service nature of Kubeflow make it extremely appealing for Data Science use, at it provides an easy access to advanced distributed jobs orchestration, re-usability of components, Jupyter Notebooks, rich UIs and more. Still, developing and maintaining Kubeflow workflows can be hard for data scientists, who may not be experts in working orchestration platforms and related SDKs. Additionally, data science often involve processes of data exploration, iterative modelling and interactive environments (mostly Jupyter notebook).

Kale bridges this gap by providing a simple UI to define Kubeflow Pipelines workflows directly from you JupyterLab interface, without the need to change a single line of code.

Read more about Kale and how it works in this Medium post: Automating Jupyter Notebook Deployments to Kubeflow Pipelines with Kale

Getting started

Install the Kale backend from PyPI and the JupyterLab extension. You can find a set of curated Notebooks in the examples repository

# install kale
pip install kubeflow-kale

# install jupyter lab
pip install "jupyterlab>=2.0.0,<3.0.0"

# install the extension
jupyter labextension install kubeflow-kale-labextension
# verify extension status
jupyter labextension list

# run
jupyter lab
Kale JupyterLab Extension

To build images to be used as a NotebookServer in Kubeflow, refer to the Dockerfile in the docker folder.

FAQ

Head over to FAQ to read about some known issues and some of the limitations imposed by the Kale data marshalling model.

Resources

Contribute

Backend

Create a new Python virtual environment with Python >= 3.6. Then:

cd backend/
pip install -e .[dev]

# run tests
pytest -x -vv

Labextension

The JupyterLab Python package comes with its own yarn wrapper, called jlpm. While using the previously installed venv, install JupyterLab by running:

pip install "jupyterlab>=2.0.0,<3.0.0"

You can then run the following to install the Kale extension:

cd labextension/

# install dependencies from package.lock
jlpm install
# build extension
jlpm run build

# list installed jp extensions
jlpm labextension list
# install Kale extension
jlpm labextension install .

# for development:
# build and watch
jlpm run watch

# in another shell, run JupyterLab in watch mode
jupyter lab --no-browser --watch

Git Hooks

This repository uses husky to set up git hooks.

For husky to function properly, you need to have yarn installed and in your PATH. The reason that is required is that husky is installed via jlpm install and jlpm is a yarn wrapper. (Similarly, if it was installed using the npm package manager, then npm would have to be in PATH.)

Currently installed git hooks:

  • pre-commit: Run a prettier check on staged files, using pretty-quick
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].