Skip to content

New version 2.0.0

Compare
Choose a tag to compare
@dtzar dtzar released this 16 Aug 04:45
· 286 commits to master since this release

Code refactoring

  • Concise and clean folders structure aligning with the "bring-my-own-code" concept
  • Simple and clean Python code
  • Update to the latest AzureML SDK

Linting and Unit testing

  • PR and CI pipelines perform linting (with flake8) and unit testing of Python code
  • PR and CI pipelines perform data integrity tests

Parameterization - via @tarockey

  • AzDo pipelines and Python code are based on a set of variables defined in a Variable Group in an AzDo Project. * For local development the variables are grouped in .env.example file

Environment Setup

  • Infrastructure as Code (IaC) pipelines to create (iac-create-environment.yml) and remove (iac-remove-environment.yml) all required resources for the repo (e.g. resource group, ML workspace, container registry, etc.)

Pipeline agent as a Docker container

  • AzDo build pipelines are configured to run tasks in a Docker container having installed Python and all required dependencies
  • The Docker Image is publicly available https://hub.docker.com/_/microsoft-mlops-python
  • There is an AzDo pipeline (docker-image-pieline.yml) building and pushing the docker image

AzDo Build Pipelines

  • Separate pipelines for PR and CI events
    • PR pipeline (azdo-pr-build-train.yml) is triggered when a Pull Request to master is created. Performs linting, data and unit testing only.
    • CI pipeline (azdo-ci-build-train.yml) is triggered when the code is merged to master. Performs linting, data testing, unit testing, building and publishing an ML pipeline.
  • PR and CI pipelines use a pipeline template (azdo-base-pipeline.yml) handling common tasks such as linting and testing

Model Deployment with AML Deploy Model task

  • The release pipeline deploying a model to ACI and AKS environments leverages AML Model Deploy Task

Rewritten documentation

  • Readme
  • Getting Started
  • Code Description