Visão Geral
Este Curso MLOps com Azure DevOps Automação e Entrega Contínua de Modelos de ML, com 24 horas de duração, foi meticulosamente desenhado para Cientistas de Dados, Engenheiros de Machine Learning (ML), Engenheiros de DevOps e Arquitetos de Nuvem que procuram dominar as práticas de MLOps (Machine Learning Operations) utilizando a robusta plataforma Azure DevOps. Num mercado que exige a rápida e fiável implantação de modelos de ML em produção, a capacidade de automatizar o ciclo de vida do modelo é um diferencial crítico. Do ponto de vista técnico e prático, você aprenderá a configurar pipelines de CI/CD (Integração Contínua/Entrega Contínua) no Azure DevOps para automatizar desde a ingestão de dados e o treino do modelo até a sua implantação em serviços do Azure (como o Azure Kubernetes Service - AKS ou Azure Machine Learning Endpoints). O curso abordará o uso de ferramentas como Azure Pipelines, Azure Repos, e Azure Machine Learning Service para versionamento de código, gestão de artefactos, registo de modelos e monitorização de desempenho. O foco será na implementação de um pipeline MLOps de ponta a ponta, garantindo a rastreabilidade, repetibilidade e escalabilidade do seu processo de ML.
Conteúdo Programatico
Módulo 1: Introdução ao MLOps e Configuração do Azure Environment (6 horas)
1.1. Fundamentos de MLOps e Ciclo de Vida:
- Diferença entre DevOps e MLOps.
- Os 4 pilares de MLOps: Rastreabilidade, Automação, Validação e Monitorização.
- Pipeline Típico de MLOps: Dados, Treino, Registo, Implantação.
1.2. Configuração do Azure Machine Learning Service:
- Criação e gestão do Azure ML Workspace.
- Computação Alvo (Compute Targets): Criação e configuração de Clusters de Computação para treino.
- Azure Storage e Datastores (Conexão a dados).
- Hands-on: Configurar um Azure ML Workspace e um Cluster de Computação.
1.3. Versionamento Essencial: Código e Dados:
- Azure Repos: Estrutura de repositórios para código de scripts de treino e deployment.
- Azure ML Datasets: Criação de Datasets versionados e imutáveis.
- Hands-on: Integrar o código do projeto de ML no Azure Repos e registar um Dataset no Azure ML Workspace.
1.4. Contentorização com Docker e ACR:
- O papel do Docker na criação de ambientes de runtime repetíveis.
- Azure Container Registry (ACR): Armazenamento seguro de imagens Docker.
- Hands-on: Criar um Dockerfile para o ambiente de treino e enviá-lo para o ACR.
Módulo 2: CI - Integração Contínua do Modelo (6 horas)
2.1. Introdução ao Azure Pipelines:
- Conceitos de Pipelines: Agentes, Jobs, Stages e Tasks.
- Sintaxe YAML para definição de pipelines.
- Hands-on: Criar o seu primeiro pipeline YAML para construir um projeto Python simples.
2.2. Pipeline de Treino Automatizado (CI):
- Definir o pipeline que dispara no commit de código.
- Task de execução do script de treino no Azure ML Compute.
- Passagem de parâmetros e variáveis de pipeline.
- Hands-on: Construir um pipeline de CI que executa o script de treino de ML.
2.3. Validação e Registo de Modelos:
- Task de Validação: Executar métricas de avaliação e testes de validade do modelo.
- Registo do Modelo: Utilizar o Azure ML Model Registry para registar o modelo e as suas métricas.
- Artefactos: Armazenar relatórios e logs como artefactos do pipeline.
- Hands-on: Modificar o pipeline de CI para registar o modelo apenas se as métricas de performance excederem um limite.
2.4. Integração com Testes Unitários e de Dados:
- Executar testes unitários do código de ML (Ex: pytest) como parte do pipeline de CI.
- Testes de sanidade de dados (validação de esquema e intervalo de valores).
- Hands-on: Adicionar uma fase de teste no pipeline YAML para garantir a qualidade do código.
Módulo 3: CD - Entrega Contínua e Implantação (6 horas)
3.1. Estratégias de Implantação de Modelos:
- Implantação para inferência em Tempo Real vs. Batch Inferencing.
- Escolha do Target de Implantação: Azure Kubernetes Service (AKS) vs. Managed Endpoints.
3.2. Pipeline de Deployment no Azure DevOps (CD):
- Criar o pipeline de CD que dispara após o registo de um modelo validado.
- Tasks para deployment de imagem Docker e configuração do Endpoint.
- Hands-on: Criar o pipeline de CD para implantar o modelo como um Azure Machine Learning Managed Endpoint.
3.3. Testes de Implantação e Qualidade de Serviço:
- Testes de integração pós-implantação (smoke tests): Enviar dados de amostra para o endpoint.
- Testes de performance (Load Testing) para validar a latência e o throughput.
- Hands-on: Adicionar uma task ao pipeline de CD para enviar uma requisição POST ao endpoint recém-implantado.
3.4. Rollout Seguro: A/B Testing e Canary Deployment:
- Técnicas para implementar novos modelos sem interrupção (tráfego dividido).
- Managed Endpoints para Traffic Splitting.
- Hands-on: Configurar o endpoint para direcionar uma pequena percentagem de tráfego (ex: 10%) para a nova versão do modelo.
Módulo 4: Monitorização, Retreino e Governança (6 horas)
4.1. Monitorização de Modelos em Produção:
- Application Insights e Azure Monitor: Captura de métricas de saúde e latência do endpoint.
- Monitorização de Deriva de Dados (Data Drift): Detetar alterações nas características dos dados de entrada.
- Hands-on: Configurar a monitorização básica do endpoint no Azure Portal e simular a leitura de logs.
4.2. MLOps para o Retreino e Drift:
- Configurar Gatilhos (Triggers) para o pipeline de retreino (ex: Agendamento semanal ou trigger por deriva de dados).
- Gestão de versões de model-in-production e rollback automatizado.
- Hands-on: (Discussão/Desenho) Desenhar a lógica para um pipeline que se reinicia quando o alerta de Data Drift é acionado.
4.3. Governança e Rastreabilidade (ML Lineage):
- Utilização de Azure ML Experiments para rastrear execuções.
- ML Metadata: Garantir que o modelo, os dados de treino e o código estão ligados e rastreáveis.
- Hands-on: Revisar os metadados de um modelo registado, verificando o ID da execução e o dataset de treino.
4.4. Projeto Final Integrador:
- Desafio: Implementar um pipeline MLOps de ponta a ponta (CI/CD) para um modelo de ML simples, desde o código no Azure Repos até um Managed Endpoint com smoke test e monitorização básica.
- Apresentação e Q&A: Apresentação dos pipelines e discussão de best practices.
Pronto para transformar a forma como a sua equipa entrega Machine Learning em escala e com confiança?