Due perle saltate fuori durante la rilettura di Concetti fluidi e analogie creative. Uno dei progetti software intrapresi da Douglas Hofstadter negli anni ottanta, nell’intento di esplorare le capacità creative di un computer chiamato a ragionare il più possibile come un umano, fu Letter Spirit.
Hofstadter aveva una passione smodata per la tipografia e voleva un programma capace di elaborare in modo stilisticamente coerente tutti i caratteri dell’alfabeto a partire da poche lettere campione. Per ridurre la complessità decise di fare lavorare Letter Spirit su una griglia formata da soli segmenti orizzontali, verticali e inclinati di quarantacinque gradi. Poi successe questo:
Un evento abbastanza sorprendente e di grande importanza fu la comparsa del computer Macintosh. Acquistai il mio primo Mac in aprile nel 1984 praticamente la prima cosa che provai fu disegnare un “gridfont”, un alfabeto completo che rispettasse i vincoli della griglia di Letter Spirit. Abbastanza stranamente, negli anni precedenti avevo adattato a una griglia molte decine di lettere e piccoli segmenti dell’alfabeto, ma ma non avevo mai pensato a un alfabeto intero. Per non dire di quando scoprii che MacPaint aveva comandi speciali per tracciare linee ortogonali e a quarantacinque gradi, e per vincolarle a una griglia; sono rimasto deliziato. Come se i designer di MacPaint avessero avuto in mente il mio progetto al momento di creare il programma. Una volta familiarizzato con MacPaint, cominciai a produrre idee a milioni, o almeno così mi sembrava.
La tipografia di Macintoshh non introduceva una nuova classe di problemi, ma rispondeva a una esigenza del mondo reale che nessun altro aveva preso in considerazione.
Poche pagine più avanti, nel paragrafo La vera creatività implica l’autonomia, Hofstadter fornisce criteri per poter definire un programma creativo. Mi sono soffermato a pensare se e come questi criteri potrebbero applicarsi oggi al nostro chatbot preferito.
- il programma deve prendere le proprie decisioni invece di eseguire decisioni di design prese, direttamente o indirettamente, da un umano.
Se facciamo disegnare una immagine a un LLM, gli scriviamo noi che vogliamo un’atmosfera anni cinquanta o uno stile colore a olio. Se non scriviamo niente fa tutto da solo, ma è prendere una decisione o improvvisare? Come minimo, il rispetto di questo requisito è molto discutibile.
- la conoscenza del programma deve essere ricca; ogni concetto deve comporsi di una rappresentazione non banale di qualche categoria, con criteri flessibili per giudicare i gradi di appartenenza, e devono esserci multiple connessioni esplicite tra concetti.
Letter Spirit è basato sulla manipolazione di concetti ed è evidentemente diverso da un chatbot. Il modello sottostante di quest’ultimo, tuttavia, non possiede alcuna rappresentazione concettuale. L’appartenenza di un elemento a una categoria arriva dall’addestramento e non può essere messa in discussione. Direi che non ci siamo.
- i concetti e le correlazioni tra essi all’interno del programma non devono essere statici ma flessibili e dipendenti dal contesto.
Un grande modello linguistico non possiede rappresentazioni di concetti e la sua conoscenza è statica. Le correlazioni tra una parola e quella dopo sono probabilistiche, per quanto pesate.
- Il programma deve sperimentare ed esplorare a un livello concettuale profondo e non superficiale.
Un chatbot è confinato, nel bene e nel male, al modello che gli sta dietro, che è statico e immutabile. Lavorando sul prompt si possono influenzare le scelte probabilistiche compiute, ma chiamarlo esplorazione sembra eccessivo.
- Il programma deve essere capace di percepire e giudicare il proprio output, per accettarlo, rifiutarlo o tirare fuori idee plausibili per migliorarlo.
Possiamo chiedere a un chatbot di rivedere infinite volte il suo output o parti di esso, ma il chatbot non lo farà mai di propria iniziativa. Ci siamo a metà, forse meno. Manca completamente la parte dell’autonomia.
- Il programma deve gradualmente convergere verso una soluzione soddisfacente per via di un processo continuo nel quale si intersecano suggerimenti in arrivo da una parte del sistema e valutazioni in arrivo da un’altra parte.
Diamo al chatbot il beneficio del dubbio, cioè che tutto questo avvenga effettivamente dietro le quinte prima di arrivare all’output. Questo requisito potrebbe forse essere soddisfatto.
Insomma, le ricerche condotte quarant’anni fa ci dicono che difficilmente si può parlare in modo sensato di creatività applicata al lavoro con i chatbot odierni.