Git para projetos de IA
git init, .gitignore para dados/modelos, confirmação de notebooks e DVC para versionamento de dados.
Git para projetos de IA é 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.
Git em projetos de IA
Git acompanha as alterações no seu código para que você possa colaborar, desfazer erros e revisar o histórico. Mas projetos de IA acrescentam uma particularidade: arquivos de dados enormes e modelos binários não devem ficar no Git.
Esta lição aborda um .gitignore adequado e o uso do DVC para controle de versões de dados.
O que o Git acompanha bem
O Git é excelente para texto: código-fonte, configurações, notebooks (com as saídas removidas) e documentação. Ele armazena diferenças eficientes de arquivos de texto.
Ele lida mal com binários grandes — cada versão é armazenada por completo, aumentando o repositório para sempre.
Por que não adicionar dados e modelos ao repositório
Adicionar um conjunto de dados de 2 GB ou um modelo de 500 MB:
- Aumenta o repositório, deixando cada clonagem mais lenta
- Não permite uma comparação significativa
- Permanece no histórico para sempre, mesmo depois de ser excluído
Solução: ignore esses arquivos no Git e controle suas versões com uma ferramenta dedicada.
O arquivo .gitignore
.gitignore lista os padrões que o Git não deve acompanhar. Crie-o na raiz do projeto. Cada linha é um padrão curinga.
# .gitignore
*.pkl
*.joblib
*.h5
data/raw/*
data/processed/*
models/*
__pycache__/
*.pyc
.ipynb_checkpoints/
.envIgnorando arquivos de modelos e cache
Padrões comuns para ignorar em projetos de IA:
*.pkl,*.joblib,*.h5— modelos serializados__pycache__/,*.pyc— código de bytes do Python.ipynb_checkpoints/— salvamentos automáticos do Jupyter.env— segredos e chaves de API (nunca os adicione ao repositório!)
Mantendo pastas vazias com .gitkeep
O Git ignora diretórios vazios. Para manter data/raw/ na estrutura do repositório e ignorar seu conteúdo, adicione um arquivo vazio .gitkeep e uma regra de negação.
# .gitignore
data/raw/*
!data/raw/.gitkeepApresentando o DVC
DVC (Controle de Versões de Dados) controla as versões de dados e modelos grandes junto com o Git. O Git acompanha pequenos arquivos ponteiro .dvc; os dados reais ficam em um armazenamento remoto (S3, GCS etc.).
Você obtém versões de dados reproduzíveis sem aumentar excessivamente o repositório Git.
dvc init
Inicialize o DVC dentro de um repositório Git existente. Ele cria um diretório .dvc/ e uma configuração que você adiciona ao Git.
# in your git repo
dvc init
git add .dvc .gitignore
git commit -m "Initialize DVC"dvc add — acompanhando dados
dvc add começa a acompanhar um arquivo ou uma pasta. O DVC move os dados para o cache e cria um pequeno arquivo ponteiro .dvc. Você adiciona o ponteiro ao Git, não os dados.
dvc add data/raw/dataset.csv
# creates data/raw/dataset.csv.dvc
git add data/raw/dataset.csv.dvc data/raw/.gitignore
git commit -m "Track dataset with DVC"dvc push e dvc pull
Configure um armazenamento remoto; então dvc push envia os dados para ele e dvc pull baixa a versão correspondente ao commit atual do Git. É assim que os membros da equipe compartilham dados.
dvc remote add -d storage s3://my-bucket/dvcstore
dvc push # upload data to the remote
# teammate after git clone + git checkout:
dvc pull # fetch the matching data versionO fluxo de trabalho da equipe
O ciclo Git + DVC mantém as versões do código e dos dados vinculadas:
git pullpara obter o código mais recente e os ponteiros.dvcdvc pullpara buscar os dados e modelos correspondentes- Trabalhe e depois use
dvc add+git commit+dvc push
Selecionar um commit antigo e executar dvc pull reproduz exatamente aquele estado.
Verificação rápida: arquivos grandes
Seu projeto tem um conjunto de dados de treinamento de 1 GB e um arquivo de modelo de 300 MB.
Recapitulação: Git para projetos de IA
Você aprendeu o controle de versões específico para IA:
- Git para texto (código, configurações e notebooks), não para binários grandes
- Um
.gitignorepara*.pkl,data/raw/*,__pycache__e.env .gitkeeppara preservar pastas vazias- DVC:
dvc init,dvc add,dvc push/pullpara controlar as versões de dados e modelos - O fluxo de trabalho Git + DVC mantém código e dados sincronizados
Próximo assunto: tornar os experimentos reproduzíveis.
Perguntas Frequentes
A aula “Git para projetos de IA” é grátis?
Sim — o texto completo de “Git para projetos de IA” é 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 “Git para projetos de IA”?
git init, .gitignore para dados/modelos, confirmação de notebooks e DVC para versionamento de dados. 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 “Git para projetos de IA”?
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
- Estrutura profissional de diretórios para projetos de IA
- Git para projetos de IA
- Reprodutibilidade: sementes, configurações e ambientes
- Boas práticas para Jupyter Notebooks