Skip to main content

MLOps framework for running model-training workloads and deploying model-scoring services on Kubernetes.

Project description

bodywork


Bodywork is a Python framework that helps machine learning engineers run batch jobs, serve models and deploy machine learning pipelines, in containers on Kubernetes.

It automates repetitive and time-consuming tasks that machine learning engineers think of as DevOps, letting them focus on what they do best - solving data problems with machine learning.

What Problems Does Bodywork Solve?

Running machine learning code in containers has become a common pattern to guarantee reproducibility between what has been developed and what is deployed in production environments.

Most machine learning engineers do not, however, have the time to develop the skills and expertise required to deliver and deploy containerised machine learning systems into production environments. This requires an understanding of how to build container images, how to push build artefacts to image repositories and how to configure a container orchestration platform to use these to execute batch jobs and deploy services.

Developing and maintaining these deployment pipelines is time-consuming. If there are multiple projects, each requiring re-training and re-deployment, then the management of these pipelines will quickly become a large burden.

This is where the Bodywork framework steps-in - to take responsibility for pulling you machine learning projects into containers and deploying them to the Kubernetes container orchestration platform. Bodywork can ensure that your projects are always trained with the latest data, the most recent models are always deployed and your machine learning systems remain generally available.

bodywork_diagram

More specifically, Bodywork helps machine learning engineers to:

  • continuously deliver - code for preparing features, training models, scoring data and defining model-scoring services. Bodywork containers running on Kubernetes will pull code directly from your project's Git repository, removing the need to build-and-push your own container images.
  • continuously deploy - batch jobs, model-scoring services and complex machine learning pipelines, using the Bodywork workflow-controller to orchestrate end-to-end machine learning workflows on Kubernetes.

Bodywork uses Kubernetes for running machine learning jobs and services, because we believe that Kubernetes comes shipped with all the resources required for building an effective Machine Learning Operations (MLOps) platform.

Bodywork is built and maintained by machine learning engineers, for machine learning engineers, and will always remain 100% open-source.

Prerequisites

Before you start exploring what Bodywork can do for you, you will need:

Familiarity with basic Kubernetes concepts and some exposure to the kubectl command-line tool will make life easier. We recommend the first two introductory sections of Marko Lukša's excellent book Kubernetes in Action, or the introductory article we wrote on Deploying Python ML Models with Flask, Docker and Kubernetes.

Documentation

The official documentation for bodywork-core can be found here. This is the best place to start.

Contacting Us

If you:

  • have a question that these pages haven't answered, then please ask a question on our forum.
  • have found a bug, then please open an issue.
  • would like to read the Bodywork source code, then you can find it here.
  • would like to contribute, then please talk to us first at info@bodyworkml.com
  • would like to commission new functionality, then please contact us at info@bodyworkml.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bodywork-0.2.6.tar.gz (30.5 kB view hashes)

Uploaded Source

Built Distribution

bodywork-0.2.6-py3-none-any.whl (59.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page