Skip to main content

Accelerate your ML journey—deploy production-ready MLOps in minutes, not months.

Project description

BusySloths presents

Logo

Accelerate your ML journey—deploy production-ready MLOps in minutes, not months.

Tired of tangled configs, YAML jungles, and broken ML pipelines? So were we. MLOX gives you a calm, streamlined way to deploy, monitor, and maintain production-grade MLOps infrastructure—without rushing. It’s for engineers who prefer thoughtful systems over chaos. Powered by sloths. Backed by open source.

Maintainability Code Coverage GitHub Issues or Pull Requests GitHub Discussions

ATTENTION

MLOX is still in a very early development phase. If you like to contribute in any capacity, we would love to hear from you contact[at]mlox.org.

What Can You Do With MLOX?

Server

  • Add, delete, tag and name server
  • Select Native, Docker, Kubernetes backend
  • Setup one or more single- or multi-node Kubernetes Cluster

Services

  • Add, delete, and update Services
  • Use a centralized secret and configuration manager out-of-the-box
  • Install secured Docker Services (e.g. MLFlow, Airflow, LiteLLM, Ollama, InfluxDB, Redis, etc pp)
  • Install K8s Services (e.g. Dashboard, Helm, Headlamp)
  • Easily import public or private Github repositories
  • Use the following GCP services in your code:
    • BigQuery
    • Secret Manager
    • Storage
    • and Spreadsheets

Installation

There are two parts of the project.

A Web UI to Manage Your Infrastructure and Services

If you want to install the main UI to manage your infrastructure, then

  pip install busysloths-mlox[all]

and start the UI via

  mlox ui

This will install the main UI together with all supporting components (means lots of packages).

Utilize Your Infrastructure in Your Code

If you have existing MLOX infrastructure and want to use certain functionality in your apps, you can install only the necessary parts, e.g. if you want to use GCP related functionality:

  pip install busysloths-mlox[gcp]

This will only install the base packages as well as GCP related packages.

Unnecessary Long Introduction

Machine Learning (ML) and Artificial Intelligence (AI) are revolutionizing businesses and industries. Despite its importance, many companies struggle to go from ML/AI prototype to production.

ML/AI systems consist of eight non-trivial sub-problems: data collection, data processing, feature engineering, data labeling, model design, model training and optimization, endpoint deployment, and endpoint monitoring. Each of these step require specialized expert knowledge and specialized software.

MLOps, short for Machine Learning Operations, is a paradigm that aims to tackle those problems and deploy and maintain machine learning models in production reliably and efficiently. The word is a compound of "machine learning" and the continuous delivery practice of DevOps in the software field.

Cloud provider such as Google Cloud Platform or Amazon AWS offer a wide range of solutions for each of the MLOps steps. However, solutions are complex and costs are notorious hard to control on these platforms and are prohibitive high for individuals and small businesses such as startups and SMBs. E.g. a common platform for data ingestion is Google Cloud Composer who’s monthly base rate is no less than 450 Euro for a meager 2GB RAM VPS. Solutions for model endpoint hosting are often worse and often cost thousands of euros p. month (cf. Databricks).

Interestingly, the basis of many cloud provider MLOps solutions is widely available open source software (e.g. Google Cloud Composer is based on Apache Airflow). However, these are complex software packages were setup, deploy and maintaining is a non-trivial task.

This is were the MLOX project comes in. The goal of MLOX is four-fold:

  1. [Infrastructure] MLOX offers individuals, startups, and small teams easy-to-use UI to securily deploy, maintain, and monitor complete MLOps infrastructures on-premise based on open-source software without any vendor lock-in.
  2. [Code] To bridge the gap between the users` code base and the MLOps infrastructure, MLOX offers a Python PYPI package that adds necessary functionality to integrate with all MLOps services out-of-the-box.
  3. [Processes] MLOX provides fully-functional templates for dealing with data from ingestion, transformation, storing, model building, up until serving.
  4. [Migration] Scripts help to easily migrate parts of your MLOps infrastructure to other service providers.

More Links:

  1. https://en.wikipedia.org/wiki/MLOps
  2. https://www.databricks.com/glossary/mlops
  3. https://martinfowler.com/articles/cd4ml.html

Contributing

There are many ways to contribute, and they are not limited to writing code. We welcome all contributions such as:

Please see our Contributing Guide for details.

Big Thanks to our Sponsors

MLOX is proudly funded by the following organizations:

BMFTR

Supporters

We would not be here without the generous support of the following people and organizations:

PrototypeFund PrototypeFund

License

MLOX is open-source and intended to be a community effort, and it wouldn't be possible without your support and enthusiasm. It is distributed under the terms of the MIT license. Any contribution made to this project will be subject to the same provisions.

Join Us

We are looking for nice people who are invested in the problem we are trying to solve.

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

busysloths_mlox-0.1.0.post89.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

busysloths_mlox-0.1.0.post89-py3-none-any.whl (2.7 MB view details)

Uploaded Python 3

File details

Details for the file busysloths_mlox-0.1.0.post89.tar.gz.

File metadata

  • Download URL: busysloths_mlox-0.1.0.post89.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for busysloths_mlox-0.1.0.post89.tar.gz
Algorithm Hash digest
SHA256 2a2762d8325c3a8e1ff813f78536265c4f2a526d1ca874e5b1a2d669061cb086
MD5 1073a537df2ff2dfc526cc8e5d2c52fb
BLAKE2b-256 42fd57692842d877e140c5deef119a134bcf0eb1bccab954a679a36e420e988d

See more details on using hashes here.

File details

Details for the file busysloths_mlox-0.1.0.post89-py3-none-any.whl.

File metadata

File hashes

Hashes for busysloths_mlox-0.1.0.post89-py3-none-any.whl
Algorithm Hash digest
SHA256 98d5c0ab2021a8fdb7d69034429d8d3f944890c378a45115f33a4f2c381d72a0
MD5 5b95c5777dc81fed86addba58b005175
BLAKE2b-256 b171fc4cce140d7cc9cbec387abceafb0bbd5d17f98544e2449339b8618b049a

See more details on using hashes here.

Supported by

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