Gestione delle dipendenze con AI

Sviluppo avanzato con AI per programmatori

Thalia Barrera

AI Engineering Curriculum Manager, DataCamp

Il problema

Due computer mostrano risultati diversi

 

 

  • ✅ Atlas funziona sulla mia macchina
  • ❌ L'installazione fallisce sul server di produzione
  • 🔀 Stesso codice, risultati diversi
Sviluppo avanzato con AI per programmatori

Conflitti di dipendenze

 

Diagramma conflitto dipendenze

 

  • Atlas dipende da molte librerie
  • Ambiente non riproducibile
  • Noti come conflitti di dipendenze
Sviluppo avanzato con AI per programmatori

L'AI analizza l'errore

Errore di installazione:

installation-error2.png

🤖 Prompt diagnosi breve:

Ecco le mie specifiche di dipendenze e l'output di errore d'installazione. Spiega la causa radice del conflitto di versione.

Sviluppo avanzato con AI per programmatori
Sviluppo avanzato con AI per programmatori

Ambienti riproducibili

 

  • 📦 Un comando crea l'ambiente esatto
  • 🤖 L'AI può aiutare a generare i comandi di setup
  • 💻 Ambiente coerente tra colleghi e macchine

Ambienti riproducibili

Sviluppo avanzato con AI per programmatori

Generare i comandi di setup

🤖 Prompt per setup riproducibile:

Dato questa struttura di progetto, proponi un setup Python riproducibile con pip-tools. Genera i file e i comandi esatti per creare l'ambiente, bloccare le dipendenze e installare in modo deterministico. Spiega come usare l'ambiente virtuale nel file README.md del progetto.

Risposta del modello: ai-virtual-env.png

Sviluppo avanzato con AI per programmatori

Dipendenze transitive

Diagramma dipendenze transitive

 

  • 📦 Le toolbox portano dentro molti pacchetti
  • ❗ Libreria vulnerabile inclusa indirettamente: dipendenza transitiva

 

  • ✔ Rileva problemi con tool di audit
  • 🤖 L'AI interpreta i report, suggerisce versioni più sicure e indica cambi di codice
Sviluppo avanzato con AI per programmatori

Dipendenze mantenibili

🤖 Prompt audit dipendenze:

Dato questo repository Python, voglio verificare mantenibilità delle dipendenze e conformità licenze.

Genera il comando per produrre un report licenze JSON per l'ambiente Python attivo, includendo URL dei pacchetti e file di licenza, e salvalo in reports/licenses.json.

  • ✔ Manutenzione attiva = rischio minore

 

Risposta dell'AI: ai-licenses.png

Sviluppo avanzato con AI per programmatori

Ispezionare i report

Suggerimento AI: ai-licenses-command.png

Report licenze: licenses-output.png

Sviluppo avanzato con AI per programmatori

L'AI propone alternative

🤖 Prompt alternative:

Ecco reports/licenses.json da pip-licenses appena generato.

Riepiloga i risultati in una tabella breve con: package, versione, licenza e livello di rischio per uso commerciale. Evidenzia elementi insoliti, sconosciuti o senza licenza.

Proponi un'alternativa più sicura per la singola dipendenza a rischio più alto.

Risposta dell'AI: rischio-modelli.png

Sviluppo avanzato con AI per programmatori

Automatizzare il setup dell'ambiente

Flusso automazione setup ambiente

 

 

  • 💻 Setup con un comando per i nuovi dev
  • ✅ La CI valida l'ambiente a ogni modifica
Sviluppo avanzato con AI per programmatori

Parte del flusso quotidiano

ai-ci-licenses-emergency.png

Sviluppo avanzato con AI per programmatori

Ayo berlatih!

Sviluppo avanzato con AI per programmatori

Preparing Video For Download...