lunedì 21 settembre 2026

INTELLIGENZA ARTIFICIALE: UNA LINGUA CHE NON E' LA LORO

Io non riesco a parlare di LLM (oppure di Machine Learning, ML) senza pensare non alla storia del calcolo ma alla mia storia con il calcolo. 

E se dovessi pensare ai suoi inizi, penserei a una Texas Instruments programmabile, senza capacità di leggere schede di memoria: solo RAM. Ma, nel manuale di istruzioni, c'era il listato di Lunar Lander. Quindi, per giocare, dovevi inserire una riga alla volta tutto il codice, operazione abbastanza lunga, e poi giocare. Il video esemplifica parzialmente l'oggetto, perché nel video c'è un HP capace di leggere schede di memoria, quindi tutta la fase "inserisci il codice" manca.

 

E fin qui si parla di anni settanta. Nel decennio successivo accaddero molte cose. Venne fuori il Commodore 64 e i programmi (in BASIC) li potevi registrare su o caricare da audio cassette. Come si potrà intuire l'operazione (sia di registrazione che di carica) non era precisamente velocissima: una cassetta TDK C90 non era fatta per quello, era fatta per registrare e riprodurre musica, e anche quella era un'operazione lenta. Non fui tra quelli che mossero i primi passi nella programmazione con il linguaggio macchina del C64, che era una cosa fatta così:

Su Archive c'è il manuale

Ma il C64 era poca cosa rispetto a ZX-Spectrum: lo Spectrum aveva il look ed aveva anche giochi pazzeschi, tipo Elite (1984):



La grafica vettoriale era una novità rivoluzionaria (già usata nella sigla di Quark). Il liguaggio macchina dello Spectrum era, ovviamente, tutto diverso da quello del C64:


Il manuale è qui

Poi arrivò il primo Macintosh, di tutta un'altra classe rispetto ai PC basati su 8086, che caricavano i primi DOS da dischi da 5 pollici e 1/4: dal prompt dei comandi all'interfaccia grafica. WYSIWYG: what you see is what you get fu una rivoluzione non da poco.

E la prima versione di ChemDraw (1.0, 1986) di Cambridgesoft nacque su Mac e uscì per il solo Mac.

Mai prima di allora si era visto qualcosa del genere: era nato quello che in pochi anni sarebbe diventato lo standard per il disegno di formule di struttura.

Ma all'epoca i computer continuavano a servirmi principalmente per due cose, giocare e scrivere (in formato testo, ahimé). All'università i miei amici fisici invece lavoravano con terminali VAX e gli studenti usavano prima TeX e successivamente LaTeX per scrivere la tesi. Per fare un esempio di LaTeX, questo


viene fuori da questo codice: 

 
\Psi_1 = \frac{1}{2}\Phi_s + \frac{\sqrt{3}}{2}\Phi_{p_z} 
 

(inciso rilevante: se credete che si tratti di qualcosa di obsoleto la quasi totalità degli LLM in circolazione usa LaTeX per gli output matematici, poi esegue il rendering con librerie come MathJax - e l'editor di Substack ha una bella funzione per LaTeX in linea).

Poi arrivarono gli anni 90 (qui) e così via. Chi lavorava su quello che al tempo era definito "intelligenza artificiale" programmava in LISP e circolava un detto: un sistema intelligente non è mai più intelligente di chi lo ha programmato. 

A questo punto una differenza dovrebbe essere facilmente percepibile: con gli LLM e i prompt in linguaggio naturale la barriera di ingresso costituita dall'inserimento dell'istruzione sotto forma di uno specifico codice è stata rimossa.

Ma i processori continuano a non ricevere istruzioni in linguaggio naturale, così come non lo fanno un interprete Python o un compilatore C. Gli stessi LLM sono fatti con codice, usano codice, producono codice, eseguono il rendering di codice. E c'è una cosa che il linguaggio naturale non possiede: la precisione della matematica che sta dietro a tutti i linguaggi dall'assembler del C64 a Python, quel tipo di  precisione che fa fermare l'esecuzione o la compilazione del programma se una singola istruzione è scorretta. 

Programming demands significantly higher standard of accuracy. Things don’t simply have
to make sense to another human being, they must make sense to a computer. 

Donald Knuth

Nel caso degli LLM niente di tutto questo, quasi ogni prompt produrrà un output apprentemente appropriato. E in questo caso il debugging, se necessario, prevede quello per cui la maggioranza degli utenti cerca in un LLM, cioè la competenza. E' un grosso guaio: ChatGPT per esempio, se usato senza il plugin Wolfram (che oggi va installato), è capace di allucinazioni matematiche servite con la massima nonchalance: nel calcolo di tre valori, senza plugin Wolfram, può fare disastri (i valori corretti sono quelli ottenuti con Python).

 
(ma la tabella di ChatGPT aveva una grafica più accattivante, molto professionale)

E questa è la realtà effettiva per i molti, che magari si entusiasmano per la notizia della soluzione di problemi matematici a lungo irrisolti da parte del modello di punta di OpenAI.  Una realtà che si intreccia con la grande illusione dei nostri tempi: parlare alle macchine in una lingua che non è la loro, cioè la nostra.

Nessun commento:

Posta un commento