Pipelines escaláveis de aprendizado de máquina com Airflow
Pipelines baseados em DAG, dependências de tarefas e ingestão de dados → treinamento → avaliação → implantação.
Pipelines escaláveis de aprendizado de máquina com Airflow é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.
Por que Usar Orquestração
Um fluxo de trabalho de ML tem muitas etapas: ingerir dados, criar características, treinar, avaliar e fazer deploy. Executá-las manualmente é frágil. O Apache Airflow as orquestra como código, com agendamento, novas tentativas, dependências e monitoramento integrados.
O DAG
O Airflow modela um fluxo de dados como um DAG (grafo direcionado acíclico) de tarefas. Acíclico significa que nenhuma tarefa pode depender de si mesma em um laço, portanto a execução sempre tem uma ordem bem definida do início ao fim.
Definindo um DAG
Você declara um DAG com um identificador, um agendamento e uma data de início. O agendamento controla a frequência de execução, por exemplo, o retreinamento diário.
from airflow import DAG
import datetime
with DAG(
dag_id="ml_pipeline",
schedule="@daily",
start_date=datetime.datetime(2024, 1, 1),
catchup=False,
) as dag:
...Operadores são Tarefas
Cada nó no DAG é uma tarefa criada a partir de um operador. Operadores diferentes executam tipos diferentes de trabalho: funções Python, comandos Bash, consultas SQL e muito mais.
PythonOperator para Treinamento
O PythonOperator executa uma função chamável do Python. Ele é perfeito para uma etapa de treinamento que chama sua função de treinamento.
from airflow.operators.python import PythonOperator
def train_model():
# load features, fit model, save artifact
...
train = PythonOperator(
task_id="train",
python_callable=train_model,
)BashOperator para Avaliação
O BashOperator executa um comando do interpretador de comandos, sendo útil para chamar um script de avaliação ou uma ferramenta de CLI.
from airflow.operators.bash import BashOperator
evaluate = BashOperator(
task_id="evaluate",
bash_command="python /opt/ml/evaluate.py --model latest",
)Definindo Dependências
O operador >> define a ordem das tarefas: a >> b significa que b é executada depois que a é concluída com sucesso. Isso conecta o DAG para que a avaliação só comece quando o treinamento terminar.
train >> evaluate
# train must succeed before evaluate runsCadeias de Dependências Mais Longas
Você pode encadear muitas tarefas para expressar a ordem completa do fluxo de dados. O Airflow executa ramificações independentes em paralelo e respeita todas as dependências que você declarar.
ingest >> features >> train >> evaluate >> deployPassando Dados com XCom
As tarefas são executadas de forma isolada, então como uma passa um resultado para a próxima? O XCom (comunicação entre tarefas) permite que uma tarefa envie um valor pequeno (como o caminho de um modelo ou uma métrica) para que uma tarefa subsequente o obtenha.
def train_model(ti):
path = "/models/run_42.pt"
ti.xcom_push(key="model_path", value=path)
def deploy(ti):
path = ti.xcom_pull(key="model_path", task_ids="train")
# deploy the artifact at pathXCom é para Dados Pequenos
O XCom foi criado para metadados pequenos (caminhos, identificadores e métricas), não para conjuntos de dados grandes. Artefatos grandes devem ficar no armazenamento de objetos (S3), passando pelo XCom apenas a localização deles. Usar o XCom em excesso para cargas grandes sobrecarrega o banco de dados de metadados.
Agendamento e Novas Tentativas
O Airflow adiciona robustez de produção sem esforço: o agendamento dispara as execuções automaticamente, as tarefas que falham fazem uma nova tentativa com espera progressiva, e a interface mostra o estado de cada tarefa e execução, emitindo alertas em caso de falha.
Verificação rápida
Teste seus conhecimentos sobre o Airflow.
Recapitulação
Você aprendeu a criar fluxos de dados de ML escaláveis com o Airflow:
- Um DAG com um agendamento define o fluxo de dados
- PythonOperator executa o treinamento; BashOperator executa a avaliação
- O operador
>>define as dependências das tarefas - O XCom passa pequenos artefatos entre tarefas; os dados grandes vão para o armazenamento de objetos
Perguntas Frequentes
A aula “Pipelines escaláveis de aprendizado de máquina com Airflow” é grátis?
Sim — o texto completo de “Pipelines escaláveis de aprendizado de máquina com Airflow” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.
O que vou aprender em “Pipelines escaláveis de aprendizado de máquina com Airflow”?
Pipelines baseados em DAG, dependências de tarefas e ingestão de dados → treinamento → avaliação → implantação. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Learn AI with Python?
Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Pipelines escaláveis de aprendizado de máquina com Airflow”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Learn AI with Python?
Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Padrões de arquitetura de sistemas de IA
- Pipelines escaláveis de aprendizado de máquina com Airflow
- Armazenamentos de atributos: Feast e Tecton
- Observabilidade e monitoramento de sistemas de IA