We’re excited to share our new integration with MLflow, a popular open-source platform for managing various stages of the ML lifecycle.

Algorithmia and MLflow: Integrating open-source tooling with enterprise MLOps

At Algorithmia, we take an integration-first approach to machine learning operations (MLOps). We know that many organizations use a variety of open-source and proprietary tools to support machine learning experimentation and development. Regardless of where an ML model has been trained, though, it can’t generate value for your business unless it’s put into production—and that’s where Algorithmia comes in.

Algorithmia’s enterprise MLOps platform manages all stages of the production ML lifecycle within existing operational processes. With Algorithmia, you can deliver more models, quicker, while protecting your business with advanced security and governance. Our broad support of over 3,900 languages and frameworks ensures that you can use any preferred tool or system to develop your models, and they’ll automatically work in production.

We’re excited to share our new integration with MLflow, a popular open-source platform for managing various stages of the ML lifecycle. With this new integration, you can build and train your models using MLflow, then deploy them to production with Algorithmia where you can use our advanced features for enterprise ML operations and governance.

This blog post demonstrates how to get started with the Algorithmia-MLflow integration.

How to set up the Algorithmia-MLflow integration

Using this new integration requires very little effort for MLflow users. It’s a native third-party integration that integrates with the MLflow CLI and, more specifically, with the MLflow deployment commands.

This extension is available in PyPI as mlflow-algorithmia and can be installed using a simple pip command:

pip install mlflow-algorithmia

This will install a new deployment type in MLflow called algorithmia. With the new deployment type, users can deploy any model trained in MLflow using the standard MLflow API while passing the path to the trained model. For example:

mlflow deployments create -t algorithmia --name mlflow_sklearn_demo -m mlruns/0/<run-id>/artifacts/model

After this, the model will be sent to Algorithmia and a new API endpoint will be ready for use. Here’s an example using cURL:

curl -X POST -d '{"columns":["alcohol", "chlorides", "citric acid", "density", "fixed acidity", "free sulfur dioxide", "pH", "residual sugar", "sulphates", "total sulfur dioxide", "volatile acidity"],"data":[[12.8, 0.029, 0.48, 0.98, 6.2, 29, 3.33, 1.2, 0.39, 75, 0.66]]}' -H 'Content-Type: application/json' -H 'Authorization: Simple '${ALGORITHMIA_API_KEY} https://api.algorithmia.com/v1/algo/$ALGORITHMIA_USERNAME/mlflow_sklearn_demo/<version>

This API endpoint uses the same interface MLflow uses for other deployment types, so everything is standard and easy for any MLflow user to get up and running.

Get started with the Algorithmia-MLflow integration today

Ready to get started using Algorithmia and MLflow together? Watch this video demo for more information and to view this new integration in action.

You can also follow along with the video and get started today by using the mlflow-algorithmia Github repository.

We’re excited to publish this new integration to help the ML community put more models into production regardless of how and where they’ve been trained, and we can’t wait to hear how you use it.

Daniel Rodriguez