Automate Model Deployment
28 / 46 •
Deployment •
This practice was ranked as medium.
Click to read more. • This practice helps to increase
the team's agility.
Click to read more.
Click to read more. • This practice helps to increase
the team's agility.
Click to read more.
Intent
Increase the ability to deploy models on demand, which increases availability and scalability.
Motivation
Deploying and orchestrating different components of an application can be a tedious task. Instead of manually packaging and delivering models, and in order to avoid manual interventions or errors, one can automate this task.
Applicability
Automatic model deployment should be implemented in any production-level ML application.
Description
Automated deployment involves automatically packing the model together with its dependencies and ‘shipping’ it to a production server – instead of manually connecting to a server and perform the deployment.
Automated model deployment brings several advantages. At first, it saves time and it increases reliability because the chances to introduce human errors are removed. Secondly, it improves availability and scalability because one can repeat the process on demand for as many instances as it is needed, without manual intervention. This means one can spin off many instances of the model whenever many users need access to a service and decrease the number of instances when the demand lowers.
In order to facilitate continuous deployment:
- use virtualization abstractions , e.g. Docker, Kubeflow,
- use CD tools, e.g. Gitlab CD/Shipyard, Travis, etc.
Adoption
Read more
- Preparing and Architecting for Machine Learning
- Machine Learning Logistics
- Operational Machine Learning
- Versioning for end-to-end machine learning pipelines
28 / 46 •
Deployment •
This practice was ranked as medium.
Click to read more. • This practice helps to increase
the team's agility.
Click to read more.
Click to read more. • This practice helps to increase
the team's agility.
Click to read more.