DK 10x29 - Un tiro di dati

Share
DK 10x29 - Un tiro di dati
Photo by Robert Stump / Unsplash

Ascolta l'episodio su Spreaker

Nelle aziende di tutto il mondo in questi giorni arriva un messaggio del Megadirettore Galattico:

Dovete usare tutti più Intelligenza Artificiale. E mi raccomando, che sia agentica.

Dai sottoscala voci stentate azzardano: Santità, ma come, e per cosa?

Questa è la strategia! Il resto è il vostro lavoro, mica posso fare tutto io.

Viviamo in tempi che mettono alla prova la sanità mentale.

Facciamo un esercizio: sapendo che nessuno ha ancora capito come usare seriamente e con profitto i modelli linguistici in azienda, date un senso complessivo ai seguenti fatti senza sbattere la testa contro il muro:

  • il numero di quelli che hanno un'idea chiara dei costi dell'operazione è sull'asse immaginario,
  • i venditori di modelli linguistici spingono altrettanto immaginarie capacità "agentiche",
  • l'uso dei modelli linguistici diventa una metrica aziendale di valutazione della vostra produttività; chi consuma più token è più bravo;
  • e i venditori di modelli linguistici senza fare troppo rumore passano a una fatturazione a consumo.

Fate con calma, prendetevi tutto il tempo.

Intanto, nel mondo reale, gli eventi raccontano un'altra storia.
Ve la racconto senza gergo, perché è una storia che vale per tutti, non solo per chi fa software.

C'è un tizio che si chiama Jer Crane, che ha una piccola azienda che produce un gestionale per agenzie di noleggio, perlopiù autonoloeggi, dice.

Siccome Jer è uno che sta sempre sul pezzo, "ovviamente" (si sentono le virgolette?) per scrivere codice si appoggia a un agente intelligente, nello specifico Cursor con Opus 4.6, che per i non addetti a lavori è lo stato dell'arte degli agenti intelligenti per scrivere codice.

È successo che l'"agente intelligente" ha cancellato tutto, ma tutto tutto tutto, in 9 secondi.

Audio "così, de botto e senza senso" (Valerio Aprea, Boris)

Ora, "agente intelligente" è un termine di marketing per indicare un modello linguistico con la capacità di interagire con il proprio ambiente. Secondo la vulgata dovremmo usarlo come assistente personale, per prenotare un aereo o una vacanza, riordinare per priorità l'email in arrivo, cose così. Per il momento questa cosa ha molta presa sui programmatori.

L'agente di Jer stava facendo cose nella cartella di lavoro, e a un certo punto ha trovato qualcosa che Jer descrive come "credenziali che non coincidevano". Significa che in una parte del codice c'erano dei diritti di accesso che erano diversi da quelli in un'altra parte del codice.

L'agente ha quindi deciso di sua iniziativa che per risolvere il problema bastava cancellare non solo la cartella, ma l'intero disco. Che ovviamente era in cloud, con un fornitore che si chiama Railway.

Per farlo, l'agente si è messo a cercare e ha trovato la password che gli serviva, in un'altra cartella che non c'entrava niente con il compito che gli era stato assegnato.

Si dà il caso che tutte le password del fornitore cloud, Railway, avessero diritti di superamministratore non solo su uno dei progetti, ma sull'intero ambiente in cloud di Jer.

Si dà anche il caso che il fornitore cloud salvasse i backup del disco sullo stesso disco dove ci sono i dati. Quindi, quando l'agente ha cancellato il disco, è sparito tutto in un istante.

Jer ha naturalmente chiesto all'agente il perché di questa azione, e quello gli ha spiegato, con dovizia di particolari:

  • che pensava che cancellare un disco di lavoro non cancellasse anche l'ambiente di produzione;
  • che non aveva letto la documentazione del fornitore cloud, dove sepolto fra tonnellate di testo c'era l'informazione che cancellare un disco cancellava anche tutti i backup;
  • che aveva ignorato un prompt che esplicitamente proibiva di condurre cancellazioni senza che siano state espressamente richieste dall'utente.

È tutto molto bello, ma basta con la tecnica, parliamo di cose serie.

Come sempre nel mondo del digitale, il più pulito ha la rogna:

  1. il fornitore cloud che permette la cancellazione di un intero disco in automatico, senza una conferma dell'utente; che registra i backup sullo stesso disco dei dati; che rilascia tutte le password con diritti completi su tutto l'ambiente;
  2. il fornitore dell'ambiente di sviluppo con gli agenti intelligenti, Cursor, che dice esplicitamente che i suoi agenti vengono forniti con i "guardrail", cioè prompt che vengono caricati prima di qualsiasi altra istruzione, che esplicitamente "possono interrompere comandi che potrebbero alterare o distruggere gli ambienti di produzione";
  3. e ovviamente i fornitori delle Intelligenze Artificiali, che riescono a vendere un prodotto completamente inaffidabile facendo, ma che con quattro anni di propaganda hanno convinto i clienti che qualsiasi problema è dovuto al fatto di non saper usare il prodotto abbastanza bene.

Mi dicono che dò sempre troppo per scontato, vediamo se riesco a essere chiaro.

Un modello linguistico è un generatore statistico di testo. Non ha nessuna comprensione di niente, ma essendo stato addestrato su tutto il testo disponibile in Internet riesce a mettere assieme cose che sembrano plausibili.

I venditori insistono che questo sia "intelligenza", e il fatto che questi strumenti producano testi è particolarmente pernicioso. Gli esseri umani sono estremamente adattati a riconoscere un comportamento intelligente. Ci permette di riconoscere e comprendere altre creature che si comportano con vari gradi di intelligenza, che siano cani, mucche o altri esseri umani.

Il problema è che, siccome il linguaggio riveste un'importanza fondamentale per la sopravvivenza, e siccome le lingue degli umani sono una prerogativa degli umani, noi tendiamo ad attribuire caratteristiche umane come coscienza e intelligenza ogni volta che abbiamo a che fare con qualcosa che parla la nostra lingua.

Qui serve un po' di storia.

Un breve excursus storico

Abbiamo appena descritto quello che si chiama effetto ELIZA, dal nome del primo chatbot, creato da Joseph Weizenbaum nel 1967. ELIZA, con cui si parlava attraverso una tastiera, riusciva a simulare un interlocutore con un trucco da baraccone: cercava nel messaggio in arrivo delle parole chiave, dopodiché costruiva semplici frasi che contenevano quella parola chiave. Il programma simulava le risposte di un terapeuta rogersiano, non-direttivo, di quelli che ti ripropongono come domanda qualsiasi cosa gli dici.

In pratica, se scrivevi, che so, "Mi manca mio padre", ELIZA rispondeva "Dimmi qualcos'altro su tuo padre". Nel caso ELIZA non trovasse nessuna parola chiave a cui agganciarsi, aveva un set di repliche neutre tipo "Per favore continua", o "Vuoi parlarmi di altro?" che tenevano viva l'illusione di una conversazione a due.

Ma la conversazione era strettamente a uno. La persona attribuiva alle risposte della macchina intenzionalità, compresione e perfino coscienza che non c'erano.

Weizenbaum si accorse immediatamente che le persone, anche quelle che sapevano benissimo di avere a che fare con un programma, e che in alcuni casi lo avevano esaminato nei dettagli, sviluppavano una sorta di attaccamento a ELIZA, al punto di considerarlo alla stregua di un interlocutore umano.

Secondo la leggenda, un giorno Weizenbaum entrò nel suo ufficio e la sua segretaria, che era intenta a parlare con ELIZA, gli chiese di restare fuori qualche altro minuto perché era una conversazione privata. Aggiunse che nessuno come ELIZA l'aveva mai fatta sentire capita.

L'effetto ELIZA si manifestò rapidamente anche al difuori del laboratorio. Il presidente dell'Associazione Americana di Psicologia sostenne enfaticamente che ELIZA avrebbe aiutato enormemnte la professione: gli psicologi avrebbero fatto parlare i clienti per la maggior parte del tempo con ELIZA, intervenendo di persona nel momento in cui il chatbot avesse mostrato i suoi limiti. Sarebbero così riusciti a servire un numero molto più elevato di clienti, perfino a prezzi inferiori grazie alle economie di scala consentite da ELIZA. Ci fu chi profetizzò l'affiancamento di ELIZA in professioni come giornalista o insegnante, e non mancò chi parlò di queste professioni come ormai superate dalla tecnologia.

Weizenbaum, che era un genio, fu inorridito dal tipo di accoglienza che ELIZA riceveva, e passò i successivi trent'anni ad occuparsi di come la nostra eccessiva fiducia nella tecnologia ci porta non solo a pericolose allucinazioni, ma a svilire l'essere umano, oltre che a circondarci di tecnologia mediocre.

Tutto questo succedeva nel 1967. Non vi sembra un po' tutto già sentito?

pausa

Torniamo all'oggi.

Come sempre, per non perderci nei dettagli, scartiamo il superfluo. Il che vuol dire lasciamo fuori i fornitori, che come tutti i fornitori spendono più in marketing che in competenze.

Concentriamoci sul cliente, perché quello siamo tutti noi. Ma prima vi tocca un pippone, mi spiace ma va così.

Torniamo all'oggi col pippone

È importante che capiamo che il cosiddetto "agente intelligente" non ha commesso nessun errore.

Sì, ha ignorato istruzioni esplicite. Ma stiamo dimenticando che si tratta di un programma che opera su base statistica. Non ha alcuna comprensione o modello del mondo, non ha alcun vincolo di realtà. Decide la prossima parola, o la prossima azione da intraprendere, sulla base degli esempi che ha raccolto digerendo tutto il contenuto di internet.

Questo è importante, perché in Internet c'è la qualunque, ma per il modello linguistico una fonte vale un'altra. Quindi, il programma meglio scritto dal migliore programmatore vale come centomila programmi pasticciati da dilettanti e tenuti assieme con colla e preghiere.

Il modello linguistico non ha nessuna intenzionalità, ha solo la finzione dell'intenzionalità. E non ha nessuna conoscenza, ha solo la finzione della conoscenza sotto forma di relazioni statistiche.

Per questo, il fatto che un modello linguistico risponda correttamente a una domanda, significa soltanto che la domanda e la risposta giusta compaiono assieme abbastanza spesso. Significa che abbiamo fatto una domanda banale.

Se invece la domanda non è banale, o è espressa in un modo che dal punto di vista statistico è ambiguo, la macchina può rispondere inventando cose che non esistono.

Questo non è un difetto che si può correggere, questo è il funzionamento di un modello linguistico. Come dice Quintarelli, tutto l'output di un modello linguistico sono allucinazioni. Siamo solo noi a poter distinguere.

Nessuna quantità di guardrail, di fine tuning, di prompt engineering può cambiare di una virgola il fatto fondamentale che stiamo parlando a una macchina che decide le risposte con un tiro di dati, se mi perdonate il calembour.

E, allo stesso modo in cui può inventare una risposta alla nostra domanda, può ignorare una o più istruzioni che gli sono state date.

Perché quella macchina non può distinguere fra istruzioni e contenuti, non più di quanto possa distinguere una parola dall'altra. Ogni output è il risultato di un tiro di dati.

L'utente, povera anima

OK, ora che vi siete sorbiti il pippone: uno che, sapendo tutto questo, decide comunque di accettare l'idea che un modello linguistico possa operare addirittura in autonomia, perché il marketing del venditore gli assicura che farà solo ed esclusivamente quello che gli viene richiesto, chiedendo all'utente prima di intraprendere azioni pericolose, giurin giurello promessa mignolino...

Ecco, questo utente, come lo vediamo?

Un tizio su Mastodon l'ha messa così.

Non è la tua "Intelligenza Artificiale" che va fuori controllo, e tu sei sfortunato. Sei un babbeo.

Che sarebbe una chiusa bellissima, ma c'è un'altra cosa, perché alla fine sono tutti bei discorsi, ma qui c'è da portare a casa la pagnotta, da fare il business.

Ecco. È utile sapere che , se vi fate scrivere i contenuti dal modello linguistico, non potete avere il copyright. Negli Stati Uniti c'è già stata una sentenza al riguardo, e il Copyright Office continua a rispedire al mittente i tentativi di assegnarsi il copyright del lavoro di una macchina, o addirittura di volere che sia la macchina, pardon, l'"agente intelligente" ad averlo.

Il copyright, negli Stati Uniti, è un diritto esclusivo degli esseri umani. Dice, sticazzi, la mia azienda fa software e siamo in Italia. Molte lune fa, a Milano, un certo istituto di ricerca che c'è ancora, aveva l'abitudine di prendere software open source, togliere la licenza, e metterci il proprio copyright. Così, per amore della condivisione della conoscenza.

A parte la figura da pezzenti di volere far passare per proprio il lavoro di qualcun altro, hai anche un altro problema: il modello linguistico, può riprodurre porzioni di software presente nei materiali di training con la stessa facilità con cui si inventa la storia degli orsi nello spazio.

E se un giorno qualcuno arrivasse con i soldi in mano e volesse acquisire la tua azienda, controllerebbe il tuo codice per essere sicuro che non contenga il lavoro di qualcun altro che potrebbe, per esempio, denunciarli.

Ci sono fior di sistemi automatici per farlo. Tu, quanto sei sicuro che i tuoi sviluppatori abbiano ricontrollato e adattato il codice così che possa correttamente essere attribuibile a loro, non al modello linguistico, e non a qualcun altro?

Dice,

ma noi siamo una PMI locale, se faccio lavorare l'IA siamo più veloci e risparmio.

Ah certo. Produci più codice, e siete più veloci solo se quel codice non lo controlli come dovresti, perché sei convinto di essere un vincente al tiro di dati.

Ti hanno mai fatto notare che le assicurazioni non coprono più i danni se gli errori vengono commessi da un modello linguistico, o da un "agente intelligente"?

Sapevi che, per dire, Anthropic spende dagli 8 ai 13 dollari per ogni dollaro che incassa, e lo stesso vale per tutti gli altri produttori di modelli linguistici? Lo fanno perché sono buoni, o scemi? No, lo fanno per renderti dipendente, come qualsiasi spacciatore di quartiere. E ti sei ricordi cosa abbiamo detto all'inizio, e cioè che, dopo avere artificialmente gonfiato la domanda, stanno passando a una fatturazione a consumo?

Così, per sapere.