What is MLOps (briefly)
MLOps is a set of best practices that revolve around making machine learning in production more seamless. The purpose is to bridge the gap between experimentation and production with key principles to make machine learning reproducible, collaborative, and continuous.
MLOps is not dependent on a single technology or platform. However, technologies play a significant role in practical implementations, similarly to how adopting Scrum often culminates in setting up and onboarding the whole team to e.g. JIRA.
What is the MLOps Stack?
To make it easier to consider what tools your organization could use to adopt MLOps, we've made a simple template that breaks down a machine learning workflow into components. This template allows you to consider where you need tooling.
Download the MLOps Stack here: Download PDF
As a machine learning practitioner, you'll have a lot of choices in technologies. First, some technologies cover multiple components, while others are more singularly focused. Second, some tools are open-source and can be implemented freely, while others are proprietary but save you the implementation effort.
No single stack works for everyone, and you need to consider your use-case carefully. For example, your requirements for model monitoring might be much more complex if you are working in the financial or medical industry.
The MLOps Stack template is loosely based on Google's article on MLOps and continuous delivery, but we tried to simplify the workflow to a more manageable abstraction level. There are nine components in the stack which have varying requirements depending on your specific use case.
Component | Requirements | Selected tooling |
---|---|---|
Data analysis | E.g. Must support Python/R, can run locally | |
Experimentation | ||
Feature store | ||
Code repository | ||
ML pipeline | ||
Metadata store | ||
Model registry | ||
Model serving | ||
Model monitoring |
An Example MLOps Stack
As an example, we've put together a technology stack containing our MLOps platform, Valohai, and some of our favorite tools that work complementary to it, including:
JupyterHub / Jupyter Notebook for data analysis and experimentation
Tecton for feature stores
GitLab for code repositories
Fiddler Labs for model monitoring
Valohai for training pipelines, model serving, and associated stores
Get Started
You might want to start by placing the tools you're already using and work from there. The MLOps Stack template is free to download here.
If you are interested in learning more about MLOps, consider our other related content.