Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Norte 2026: Melhores práticas de MLOps usando Apache Airflow

Demo containerizada para a palestra "Melhores práticas de MLOps usando Apache Airflow".

Conteúdo

  • mlops_airflow_code_examples/dags: DAGs de treino, MLflow, drift/retraining e RAG.
  • mlops_airflow_code_examples/src: funções auxiliares didáticas.
  • exemplo_run: ambiente Docker Compose com Apache Airflow 3.2 e Postgres.
  • docs/demos: roteiro separado de execução para cada demo.

Demos

Demo DAG Guia
Treino com quality gate 01_mlops_training_quality_gate docs/demos/01_training_quality_gate.md
Tracking com MLflow 02_mlflow_tracking_training docs/demos/02_mlflow_tracking.md
Drift e retreinamento 03_monitoring_drift_retraining docs/demos/03_drift_retraining.md
RAG index refresh 04_rag_index_refresh_pipeline docs/demos/04_rag_index_refresh.md

Configurar

Crie o arquivo local de ambiente a partir do template versionado:

cd exemplo_run
cp .env.airflow.example .env.airflow

Preencha todos os campos vazios de .env.airflow antes de subir o Compose. Gere valores locais para senhas e chaves, por exemplo:

openssl rand -base64 48

O arquivo .env.airflow e ignorado pelo Git e nao deve ser commitado.

Se a porta 8080 estiver ocupada, altere o mapeamento de portas em exemplo_run/docker-compose.yml.

Principais pontos do Compose:

  • publica a UI/API do Airflow em http://localhost:8080;
  • monta mlops_airflow_code_examples/dags em /opt/airflow/dags;
  • monta mlops_airflow_code_examples/src em /opt/airflow/src;
  • persiste logs, runs do MLflow e artefatos temporários em volumes Docker;
  • usa SQLite local para o tracking backend do MLflow em sqlite:////opt/airflow/mlruns/mlflow.db;
  • usa AIRFLOW__CORE__EXECUTION_API_SERVER_URL para o LocalExecutor funcionar corretamente no Airflow 3.

Subir o Airflow

cd exemplo_run
docker compose --env-file .env.airflow up -d --build

Airflow UI:

http://localhost:8080

Use as credenciais definidas localmente em AIRFLOW_ADMIN_USERNAME e AIRFLOW_ADMIN_PASSWORD.

Rodar as demos

Cada demo pode ser disparada pela UI do Airflow ou via CLI:

cd exemplo_run
docker compose --env-file .env.airflow exec airflow-apiserver airflow dags trigger <dag_id>

Guias separados:

Derrubar

cd exemplo_run
docker compose --env-file .env.airflow down

Para reset completo dos volumes:

cd exemplo_run
docker compose --env-file .env.airflow down -v

About

exemplos para execução do que foi visto na palestra.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages