Perché l'AI è geniale ma spesso stupida? Anche Karpathy si sente "indietro"

Cosa succede quando un programmatore esperto come Andrej Karpathy dichiara di sentirsi "indietro" rispetto al progresso dell'intelligenza artificiale? Non è un segnale di sconfitta, ma il riconoscimento di un cambiamento di paradigma senza precedenti.

In un recente intervento durante l'evento annuale di Sequoia, Karpathy ha delineato la transizione verso quello che definisce Software 3.0, spiegando il motivo per cui l'IA può risolvere problemi di programmazione complessi e, nello stesso istante, fallire in compiti banali come contare le lettere in una parola.

Dal Codice ai Prompt: L'evoluzione del Software

Per capire dove stiamo andando, dobbiamo guardare da dove veniamo. Karpathy suddivide l'evoluzione del software in tre fasi distinte:

  1. Software 1.0 (Programmazione esplicita): Gli esseri umani scrivono righe di codice con regole logiche precise (se X, allora Y). Il programmatore controlla ogni singolo passaggio.
  2. Software 2.0 (Apprendimento dai dati): Non si scrivono più regole, ma si creano dataset per addestrare reti neurali. Il "codice" diventa l'insieme dei pesi che la rete apprende dai dati.
  3. Software 3.0 (L'era degli Agenti): La programmazione avviene attraverso il prompting e il contesto. L'LLM (Large Language Model) funge da processore centrale (CPU), il contesto diventa la RAM e i pesi del modello sono la capacità di calcolo. In questo scenario, non istruisci il computer su come fare una cosa, ma descrivi il risultato desiderato.

"Vibe Coding" vs "Agentic Engineering"

Uno dei concetti più affascinanti emersi è la distinzione tra due nuovi modi di interagire con la tecnologia:

  • Vibe Coding: È l'atto di costruire software "andando a sensazione". Grazie alla facilità d'uso degli agenti, chiunque può creare applicazioni descrivendo semplicemente l'idea. Questo alza la base (raises the floor), permettendo a chiunque di essere un creatore.
  • Agentic Engineering: È la disciplina professionale che utilizza agenti per orchestrare flussi di lavoro complessi. Qui l'obiettivo non è solo creare qualcosa, ma garantire qualità, sicurezza e scalabilità. Questo alza il soffitto (raises the ceiling), permettendo agli ingegneri esperti di essere produttivi fino a 100 o 1000 volte di più.

Il paradosso della "Verificabilità"

Perché l'IA è così "a zig-zag" (jagged) nelle sue capacità? Perché sembra un genio in matematica e codice, ma un bambino che non capisce la logica comune?

La risposta risiede nella verificabilità.

I laboratori di IA (come OpenAI o Anthropic) utilizzano il Reinforcement Learning (apprendimento per rinforzo) per ottimizzare i modelli. I domini in cui il risultato è facilmente verificabile (come il codice che compila o i risultati matematici corretti) ricevono un "premio" algoritmico massiccio. Questo spinge il modello a diventare incredibilmente bravo in quelle aree.

Al contrario, compiti che richiedono intuizione, senso comune o "gusto" (come capire se una strada è troppo lontana per essere percorsa a piedi o valutare l'estetica di un'immagine) sono molto più difficili da verificare automaticamente. Finché non avremo modi efficienti per "verificare" il gusto umano tramite algoritmi, l'IA rimarrà "stupida" in quei domini.

Il futuro del lavoro: Delegare il pensiero, non la comprensione

La conclusione di Karpathy è un monito per tutti i professionisti: "Puoi esternalizzare il tuo pensiero, ma non puoi esternalizzare la tua comprensione."

Mentre gli agenti diventeranno sempre più capaci di eseguire compiti complessi, l'essere umano non diventerà inutile, ma cambierà ruolo. Passerà dall'essere l'esecutore (colui che scrive il codice) all'essere l'orchestratore (colui che dirige gli agenti).

Il rischio non è che l'IA ci sostituisca, ma che noi perdiamo la capacità di capire ciò che l'IA sta facendo per noi. Per dirigere correttamente la "macchina pensante", dobbiamo mantenere una comprensione profonda dei problemi che stiamo cercando di risolvere.