Skip to content
Latchkey

O que é MLOps? Operações de Machine Learning explicadas

MLOps aplica a disciplina de CI/CD e DevOps ao machine learning para que dados, treinamento e deploy de modelos sejam automatizados, versionados e reproduzíveis.

MLOps (Machine Learning Operations) é a prática de executar sistemas de machine learning em produção de forma confiável. Ela estende as ideias por trás do CI/CD - automação, versionamento, testes e monitoramento - para o mundo mais complexo de dados e modelos, onde um sistema pode quebrar não apenas por uma mudança no código, mas por uma mudança nos dados de entrada.

O que é MLOps

MLOps é o conjunto de workflows, ferramentas e cultura que leva um modelo de um notebook num laptop até um serviço que roda e melhora em produção. Ele trata dados, código e modelos treinados como artifacts de primeira classe que precisam ser versionados e testados. O objetivo é o mesmo do DevOps: entregar mudanças de forma rápida e segura, e se recuperar rapidamente quando algo quebra.

Por que ML precisa de mais do que CI/CD

Um app tradicional é definido pelo seu código. Um sistema de ML é definido por código, dados e um modelo treinado, e os três podem mudar de forma independente. O mesmo código de treinamento pode produzir um modelo pior se os dados sofrerem drift, então o MLOps adiciona validação de dados, rastreamento de experimentos e monitoramento de modelo além da integração contínua comum.

O ciclo de vida de MLOps

Um loop típico executa ingestão de dados, validação de dados, engenharia de features, treinamento do modelo, avaliação, registro do modelo vencedor, deploy e monitoramento. Quando o monitoramento detecta drift ou degradação, o loop dispara o retreinamento. Cada estágio pode ser um job em um pipeline, e é por isso que as plataformas de CI/CD são o lar natural do MLOps.

Executando MLOps em CI/CD

A maioria dos estágios de MLOps mapeia de forma limpa para jobs de CI: validar dados a cada mudança, retreinar em um cronograma, executar a avaliação como um portão de qualidade e promover um modelo apenas se as métricas melhorarem. Jobs de treinamento frequentemente precisam de GPUs e muita memória, e puxam datasets grandes, então cache e runners dimensionados corretamente importam muito para custo e velocidade.

A training stage as a CI job
# A training job in GitHub Actions
jobs:
  train:
    runs-on: gpu-large
    steps:
      - uses: actions/checkout@v4
      - run: dvc pull            # fetch versioned data
      - run: python train.py     # produces model.pkl
      - run: python evaluate.py  # quality gate

Nota da Latchkey

Jobs de treinamento e avaliação são pesados e intermitentes. Nos runners gerenciados da Latchkey você pode rotear o treinamento para GPU ou runners grandes, fazer cache de datasets e modelos base de vários gigabytes entre execuções para não precisar baixá-los toda vez, e aplicar retry automático em buscas de dados instáveis vindas do object storage em vez de falhar o pipeline inteiro.

Principais conclusões

  • MLOps aplica a disciplina de CI/CD - automação, versionamento, testes, monitoramento - aos sistemas de machine learning.
  • Sistemas de ML dependem de dados, código e um modelo treinado, então precisam de validação de dados e monitoramento de drift além do CI comum.
  • A maioria dos estágios de MLOps mapeia para jobs de CI, mas o treinamento precisa de GPU ou runners grandes e cache de datasets para se manter rápido e acessível.

Guias relacionados