Key4biz

L’intelligenza artificiale renderà obsoleta la programmazione?

Nel 2017 i ricercatori di Google hanno introdotto un nuovo programma di machine learning per processare il linguaggio denominato “transformer”. Mentre l’interesse principale risiedeva nel miglioramento della traduzione, la community dell’AI ci ha messo poco a intuire le potenzialità del programma anche in altri campi.

Allenato su grandi quantità di documenti per prevedere cosa succederà dopo, in base a un dato contesto, ha sviluppato una straordinaria abilità per il ritmo della parola scritta. Potresti iniziare un pensiero e, come un amico che ti conosce molto bene, il transformer potrebbe completare le tue frasi. Se la tua sequenza iniziasse con una domanda, il trasformatore ti darebbe una risposta. Ancora più sorprendentemente, se iniziassi a descrivere un programma, riprenderebbe da dove avevi interrotto e genererebbe quel programma.

Programmare è difficile

È noto da tempo che la programmazione è difficile, a causa della sua notazione arcana e dell’atteggiamento che non perdona gli errori.

È ben documentato che i programmatori alle prime armi possono avere difficoltà a specificare correttamente anche un compito semplice come calcolare una media numerica, fallendo più della metà delle volte. Anche i programmatori professionisti hanno scritto codici difettosi che hanno provocato lo schianto di veicoli spaziali, automobili e persino di Internet stessa.

Così quando si scoprì che sistemi basati su transformer come ChatGPT potevano trasformare descrizioni casuali leggibili dall’uomo in codice funzionante, c’erano molti motivi di eccitazione.

E’ incredibile pensare che, con l’aiuto dellAI generativa, chiunque sappia scrivere sappia anche scrivere programmi, Andrej Karpathy, uno degli artefici dell’attuale ondata di AI generativa, ha detto che “il nuovo programma migliore di tutti è l’Inglese”.

Programmazione superata dall’AI?

Con gli incredibili progressi annunciati ogni giorno, si potrebbe forse pensare che l’era dell’apprendimento della programmazione sia ormai alle spalle. Ma mentre i recenti sviluppi hanno cambiato radicalmente il modo in cui principianti ed esperti potrebbero programmare, la democratizzazione della programmazione ha reso il suo apprendimento più importante che mai perché ha consentito a un gruppo molto più ampio di persone di sfruttarne i vantaggi. L’intelligenza artificiale generativa rende le cose più facili, ma non le rende facili.

Ciò non significa quindi che la programmazione sia finita nel cassetto.

Il primo è il problema delle allucinazioni. I Transformer sono noti per sputare parole senza senso dal suono ragionevole, soprattutto quando non sono veramente sicuri di cosa accadrà dopo. Dopotutto, sono addestrati a fare ipotesi plausibili, a non ammettere quando hanno torto. Pensa a cosa significa nel contesto della programmazione. Il bug del programma è quanto mai possibile.

Se l’AI sbaglia bisogna sapersene accorgere

Ad esempio, si potrebbe chiedere ald un’AI di generare il programma piuttosto basic per fare delle medie numeriche.

Gli esperti hanno visto GPT (il “transformer generativo pre-addestrato” di OpenAI, un derivato dell’idea del team di Google) produrre alcuni errori sorprendenti, come usare la formula sbagliata per la media o arrotondare tutti i numeri a numeri interi prima di calcolarne la media. Questi sono piccoli errori e sono facilmente risolvibili, ma richiedono la capacità di leggere il programma prodotto dal transformer.

Difficile scrivere delle descrizioni verbali anche per le persone

In realtà, è piuttosto difficile scrivere descrizioni verbali dei compiti, anche per le persone. E questo è un secondo problema con l’AI.

Questo concetto dovrebbe essere ovvio a chiunque abbia provato a seguire le istruzioni per assemblare un mobile. Le persone si prendono gioco delle istruzioni di IKEA, ma forse non ricordano quale fosse lo stato dell’arte prima che IKEA entrasse in scena. Era brutto. Negli anni ’70, montare un kit di modellini di dinosauri non era facile per ninete, pur seguendo le istruzioni. Anzi, era un vero terno al lotto riuscire ad assemblare un determinato Diplodocus.

Infine, considerare la programmazione in generale come l’atto di far eseguire a un computer i comportamenti che si desidera esegua suggerisce che, alla fine, non è possibile sostituire gli individui che decidono quali dovrebbero essere tali comportamenti. Cioè, l’intelligenza artificiale generativa potrebbe aiutare a esprimere i comportamenti desiderati in modo più diretto in una forma che i normali computer possono eseguire. Ma non può scegliere l’obiettivo per te. E quanto più ampia è la gamma di persone che possono decidere sugli obiettivi, tanto migliore e più rappresentativa diventerà l’informatica.

Exit mobile version