Codex è la fine per i programmatori? I rischi del conflitto tra intelligenza artificiale e “collettiva” - Agenda Digitale

software e AI

Codex è la fine per i programmatori? I rischi del conflitto tra intelligenza artificiale e “collettiva”

Se l’intelligenza artificiale automatizzerà del tutto la produzione di funzioni applicative anche complesse e articolate ad avere la peggio non saranno solo i programmatori, ma l’intelligenza collettiva come la conosciamo ora. E non sarà indolore

24 Set 2021
Guido Vetere

Università degli Studi Guglielmo Marconi

Un tempo, il software si scriveva con rudi editor di testo partendo da file vuoti. Quasi tutte le funzioni applicative andavano scritte ab ovo, e se il gioco si faceva duro si compulsavano i grossi volumi de L’Arte della programmazione di Donald Knuth.

Oggi, nessuno si mette davanti a un IDE (Integrated Development Environment, ve ne sono di strepitosi) senza aver pensato a come sviluppare ciò che ha in mente usando quello che è a disposizione nei repository di software aperto, in primis GitHub. Spesso, le app che usiamo sono di fatto patchwork tenuti insieme da “codice-colla” (glue code). Ma anche quando bisogna scrivere qualcosa di originale, non c’è programmatore che oggi non vada su a Stack Overflow per risolvere problemi o documentarsi sulle best practices. Si tratta di più di 20 milioni domande e risposte che riguardano la programmazione in tutti i linguaggi conosciuti, compresi quelli di cui non si sospetta l’esistenza. La base di conoscenza è gestita da una sofisticata piattaforma collaborativa che, dal 2008 ad oggi, ha trattato qualcosa come 45 miliardi di problemi.

Lavorandoci, si ha la confortante sensazione che non ci sia alcun grattacapo a cui qualche nostro simile non abbia trovato un’ingegnosa soluzione, che non ci sia alcun guaio informatico da cui qualcuno non possa tirarci fuori.

L’intelligenza artificiale scrive sempre meglio, ma non sa che sta dicendo

Il software come intelligenza collettiva

Si può dire che il software sia oggi la più compiuta realizzazione dell’intelligenza collettiva, così come l’aveva immaginata, venti anni fa, Pierre Lévy. Più significativamente della Wikipedia, che viene considerata il paradigma di questa intelligenza, il software moderno contiene, negli algoritmi e nelle strutture di dati, un enorme patrimonio di conoscenze condivise sui modelli della realtà fisica e sociale. Ogni applicazione porta in sé il lavoro intellettuale di chi in tutto il mondo coopera nella costruzione di un bene comune di incalcolabile valore, in quanto sottende ormai qualsiasi aspetto della vita quotidiana e il funzionamento di intere società.

WHITEPAPER
Computer quantistico: i player principali e la supremazia quantistica
Intelligenza Artificiale
Realtà virtuale

Ma v’è chi oggi suggerisce che questa forma di intelligenza umana stia per esaurire il suo compito. Basterà infatti descrivere a una intelligenza artificiale cosa si vuol fare, e quella, ipso facto produrrà il software per farlo. Niente analisi, niente ricerche, niente confronti, niente cooperazione tra persone. Questa intelligenza artificiale di fatto esiste già: si chiama Codex e viene da OpenAI, cioè dagli stessi laboratori che produssero, lo scorso anno, quello stupefacente e controverso generatore di linguaggio naturale chiamato GPT-3. Si tratta ancora una volta di un gigantesco “modello generale” ricavato con una rete neurale di dimensioni ciclopiche, addestrata sui repository di software a codice aperto di GitHub. La generazione del codice, in effetti, funziona grazie alle stesse tecniche con cui GTP-3 produce testi verosimili: si fornisce uno stimolo (ad esempio: “Voglio una pagina web fatta così e così”) e Codex fornisce la corrispondente codifica in javascript o python.

Codex è la fine dei programmatori?

Codex funziona sempre, con completezza, senza errori o fraintendimenti? Naturalmente no, e chi lo ha fatto lo sa e ne avverte, ma il punto non è questo. Chi prevede che la piattaforma di OpenAI (o le tante simili che potranno nascere nel prossimo futuro) sia destinata a rivoluzionare lo sviluppo del software, sostiene che le funzionalità di generazione solleveranno gli sviluppatori dai compiti più banali e ripetitivi, consentendo loro di concentrarsi sulle parti ad alto valore aggiunto. Tuttavia, nei filmati dimostrativi, non si fa mistero di un’ambizione molto più importante, cioè quella di automatizzare del tutto la produzione di funzioni applicative anche complesse e articolate. Basterà descrivere in linguaggio naturale, anche in diversi passaggi, cosa si vuole ottenere, e alla fine la si otterrà. Si profila dunque, per le imprese, un miraggio molto allettante: quello di liberarsi dei programmatori, che sono pochi e ambiscono perfino ad un salario.

Nelle liste dei lavori che l’intelligenza artificiale mette a rischio dovremo dunque aggiungere, paradossalmente, anche quelli legati alla digitalizzazione? L’informatica, come Cronos, divorerà i suoi stessi figli?

Molti indizi ci dicono che difficilmente le cose andranno proprio così. La generazione automatica di codice andrà messa alla prova nel vivo dei processi di produzione, dove si devono realizzare con cura funzioni che spesso non possono essere collaudate isolatamente, richiedendo invece una complessa interazione con componenti di infrastruttura specifici di ogni applicazione. Alla fine, il gioco potrebbe non valere la candela: i rischi di integrare in una piattaforma basi di codice non ben compreso sono inaccettabili. Certamente, l’autocompletamento intelligente del codice è già una realtà in molti IDE, ma il punto di equilibrio tra la generazione automatica e la progettazione umana andrà ricercato con cura, e non si tratta di una ricerca facile.

I veri rischi che corriamo

Al di là di come evolverà il lavoro dei programmatori, che comunque è già profondamente cambiato dai tempi non troppo remoti delle origini, un fenomeno sembra emergere con chiarezza: l’attacco che l’intelligenza artificiale generativa muove oggi all’intelligenza collettiva per come l’abbiamo pensata e costruita negli ultimi venti anni. L’idea che le conoscenze umane possano essere ingerite dai ‘modelli generali’ di giganteschi sistemi neurali centralizzati nelle cloud di pochi monopolisti e da lì usate in modo opaco da una moltitudine di soggetti passivi, è infatti diametralmente opposta alla visione dell’intelligenza collettiva mediata dalle tecnologie, che è invece un’attività decentralizzata, trasparente, partecipativa e critica.

La tensione tra artificiale (nel senso specifico descritto sopra) e collettivo si prospetta dunque come un conflitto strutturale della società tecnologica che può essere visto, per certi aspetti, come continuazione della storica contrapposizione tra capitale e lavoro, cioè tra chi detiene i mezzi di produzione e chi la capacità di produrre. Si tratta di un capitolo di storia ancora tutto da scrivere.

@RIPRODUZIONE RISERVATA

Articolo 1 di 4