A workshop for doing MLOps on Azure Machine Learning.
Goal:
- Understand basics around MLOps
- Understand how Azure Machine Learning can help you to build MLOps pipelines
- Experience hands-on for the key concepts (AML pipelines, AZ ML CLI, etc.) to further deepen the understanding
- Understand what is important to a good folder/project layout, what should be in your git repo, how to deal with notebooks, do versioning, etc.
Furthermore this workshop covers:
- Overview of when to use one model and when to use many models
- Deployment of models for real-time scoring vs. batch scoring
📌 Please follow the hands-on exercise in the proposed order, as they build on each other.
- AML Pipelines
- 🏋️ Exercise - Single-step pipeline -
pipelines-single-training-step
- 🏋️ Exercise - Multi-step pipeline with parameters -
pipelines-multi-step-pipeline
- 🏋️ Exercise - ParallelRunStep pipeline for batch scoring -
pipelines-parallel-run-step
- 🏋️ Exercise - Hyperparametertuning pipeline -
pipelines-hyperdrive-step
- 🏋️ Exercise - Multi-step pipeline with R code -
pipelines-with-r
- 🏋️ Exercise - Single-step pipeline -
- MLOps on Azure DevOps
- 🏋️♀️ Exercise - Deploy AML pipeline as Published Endpoint -
devops-deploy-simple-pipeline
- 🏋️♀️ Exercise - Deploy AML pipeline as Published Endpoint, automatically test it and then add it to a Pipeline Endpoint -
devops-deploy-pipeline-with-tests
- 🏋️♀️ Exercise - Deploy AML pipeline as Published Endpoint -
- Model Deployment using Python
- 🏋️♀️ Exercise - Deploy a trained model to AKS using the Python SDK -
python-model-deployment
- 🏋️♀️ Exercise - Deploy a trained model to AKS using the Python SDK -
- Model Training & Deployment using CLI
- 🏋️♀️ Exercise - Train a model using the AML CLI (mlflow option included) -
cli-training
- 🏋️♀️ Exercise - Deploy a model to ACI and AKS using the AML CLI -
cli-deployment
- 🏋️♀️ Exercise - Train a R model using the AML CLI -
cli-with-r
- 🏋️♀️ Exercise - Train a model using the AML CLI (mlflow option included) -
Words of caution: The hands-on exercises do not fully embrace concepts like DRY (don't repeat yourself) or other best pratices when it comes to coding standards. Feel free to use them for understanding the concepts, but don't blindly copy and paste them to production.