Repositório contendo exemplos práticos para a aula de DS sobre orquestração de pipelines. Os exemplos utilizam o framework Kubeflow Pipelines (KFP), integrados com o Google Cloud Agent Platform para criar e gerenciar fluxos.
O projeto está dividido em quatro exemplos progressivos:
Uma introdução simples à criação de pipelines modulares em KFP.
- Componentes:
process_csv: Lê e processa dados iniciais no formato CSV salvando os resultados.evaluate_age_mean: Analisa e valida estatísticas geradas no passo anterior (ex: média de idade).
- Objetivo: Compreender a passagem de dados/artefatos entre componentes e controle de recursos (CPU/Memória).
Implementação de um pipeline clássico de ciclo de vida de Machine Learning (MLOps).
- Componentes:
data_prep: Preparação e divisão de dados para treino/teste.train: Treinamento do modelo preditivo.inference: Execução de inferências com base no modelo treinado.
- Objetivo: Estruturar pipelines de aprendizado de máquina onde os artefatos gerados por um passo (como o modelo treinado) são insumos diretos para os passos seguintes.
Um pipeline focado em cenários reais de marketing digital, usando dados do BigQuery e containers customizados.
- Componentes:
bq_grouping: Executa consultas no BigQuery para agrupar e preparar jornadas de usuários.run_mam: Roda modelos de atribuição multicanal (MAM - Marketing Attribution Models) utilizando um container Docker customizado.
- Objetivo: Integrar bases de dados modernas de Cloud (BigQuery) e empacotar tarefas pesadas em containers personalizados do Docker (
build/Dockerfile).
Uma evolução do pipeline de atribuição de mídia adicionando uso de um componente padrão, automações adicionais de análise e orquestração cronometrada.
- Componentes:
bq_grouping: Consulta e preparação de dados no BigQuery.run_mam: Modelos de atribuição em container customizado.generate_insights: Processamento final e geração de insights de marketing através de prompts dinâmicos de análise.
- Objetivo: Entender o agendamento de execuções de pipelines (
run_schedule.py), o uso de prompts estruturados para relatórios e queries customizadas (queries/grouping_query.sql).
- Python 3.10 ou superior
- Google Cloud SDK (caso pretenda interagir e executar os pipelines no GCP / Vertex AI)
-
Clone o repositório:
git clone https://github.com/DP6/data_science_aula_orquestracao.git cd data_science_aula_orquestracao -
Crie e ative um ambiente virtual:
python -m venv venv source venv/bin/bin/activate # No Linux/macOS # ou: venv\Scripts\activate # No Windows
-
Instale as dependências:
pip install -r requirements.txt
Cada pasta de exemplo (exemplo_1, exemplo_2, etc.) possui um arquivo run.py responsável por compilar e/ou executar o pipeline correspondente.
Para compilar/executar um pipeline, navegue até a pasta desejada e execute o script:
cd exemplo_1
python run.py(Nota: Certifique-se de configurar as credenciais do Google Cloud se o script estiver configurado para submeter a execução diretamente para o Vertex AI).