Gerenciamento de dependências com IA

Programação assistida por IA avançada para desenvolvedores

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

O problema

Dois computadores mostrando resultados diferentes

 

 

  • ✅ Atlas funciona na minha máquina
  • ❌ Instalação falha no servidor de produção
  • 🔀 Mesmo código, resultados diferentes
Programação assistida por IA avançada para desenvolvedores

Conflitos de dependência

 

Diagrama de conflito de dependências

 

  • Atlas depende de muitas bibliotecas
  • Ambiente não é reprodutível
  • Conhecido como conflitos de dependência
Programação assistida por IA avançada para desenvolvedores

IA analisa o erro

Erro de instalação:

installation-error2.png

🤖 Prompt de diagnóstico curto:

Aqui estão minha especificação de dependências e o erro de instalação. Explique a causa raiz do conflito de versões.

Programação assistida por IA avançada para desenvolvedores
Programação assistida por IA avançada para desenvolvedores

Ambientes reprodutíveis

 

  • 📦 Um comando cria o ambiente exato
  • 🤖 A IA ajuda a gerar os comandos de setup
  • 💻 Ambiente consistente entre colegas e máquinas

Ambientes reprodutíveis

Programação assistida por IA avançada para desenvolvedores

Gerando comandos de setup

🤖 Prompt de setup reprodutível:

Dado esta estrutura de projeto, proponha um setup de ambiente Python reprodutível usando pip-tools. Gere os arquivos e comandos exatos para criar o ambiente, travar dependências e instalar de forma determinística. Explique como usar o ambiente virtual no README.md do projeto.

Resposta do modelo: ai-virtual-env.png

Programação assistida por IA avançada para desenvolvedores

Dependências transitivas

Diagrama de dependências transitivas

 

  • 📦 Toolboxes trazem muitos pacotes
  • ❗ Biblioteca vulnerável puxada indiretamente: dependência transitiva

 

  • ✔ Detecte problemas com ferramentas de auditoria
  • 🤖 A IA interpreta relatórios, sugere versões mais seguras e destaca mudanças no código
Programação assistida por IA avançada para desenvolvedores

Dependências sustentáveis

🤖 Prompt de auditoria de dependências:

Dado este repositório Python, quero auditar a mantenibilidade das dependências e a conformidade de licenças.

Gere o comando para produzir um relatório de licenças em JSON para o ambiente Python ativo, incluindo URLs dos pacotes e arquivos de licença, e grave em reports/licenses.json.

  • ✔ Ativamente mantido = menor risco

 

Resposta da IA: ai-licenses.png

Programação assistida por IA avançada para desenvolvedores

Inspecionando relatórios

Sugestão da IA: ai-licenses-command.png

Relatório de licenças: licenses-output.png

Programação assistida por IA avançada para desenvolvedores

IA propõe alternativas

🤖 Prompt de alternativas:

Aqui está o reports/licenses.json do pip-licenses que acabamos de gerar.

Resuma os resultados em uma tabela curta com: pacote, versão, licença e nível de risco para uso comercial. Marque qualquer coisa incomum, desconhecida ou sem licença.

Proponha uma alternativa mais segura para a dependência de maior risco.

Resposta da IA: models-risk.png

Programação assistida por IA avançada para desenvolvedores

Automatizando o setup do ambiente

Fluxo de automação de setup de ambiente

 

 

  • 💻 Um comando de setup para novxs devs
  • ✅ CI valida o ambiente a cada mudança
Programação assistida por IA avançada para desenvolvedores

Parte do fluxo diário

ai-ci-licenses-emergency.png

Programação assistida por IA avançada para desenvolvedores

Vamos praticar!

Programação assistida por IA avançada para desenvolvedores

Preparing Video For Download...