I Token: Il Motivo per cui l’AI Generativa Oggi non è Perfetta

L’intelligenza artificiale generativa moderna non processa il testo nello stesso modo in cui lo fanno gli esseri umani. La comprensione dei loro ambienti interni basati sui “token” può aiutare a spiegare alcuni dei loro comportamenti strani e delle limitazioni ostinate. La maggior parte dei modelli, dai piccoli modelli on-device come Gemma ai leader del settore come GPT-4 di OpenAI, sono costruiti su un’architettura nota come transformer. A causa del modo in cui i transformer creano associazioni tra testo e altri tipi di dati, non possono prendere in input o output testo grezzo, almeno non senza una quantità massiccia di calcolo. Per motivi sia pragmatici che tecnici, i modelli transformer odierni lavorano con testo suddiviso in pezzi più piccoli chiamati token, un processo noto come tokenizzazione.

I token possono essere parole, come “fantastico”, o sillabe, come “fan”, “tas” e “tico”. A seconda del tokenizer, possono anche essere singoli caratteri nelle parole (ad esempio, “f”, “a”, “n”, “t”, “a”, “s”, “t”, “i”, “c”). Utilizzando questo metodo, i transformer possono prendere più informazioni (nel senso semantico) prima di raggiungere un limite superiore noto come finestra di contesto. Tuttavia, la tokenizzazione può anche introdurre bias. Alcuni token hanno spaziatura strana, che può far deragliare un transformer. Un tokenizer potrebbe codificare “c’era una volta” come “c’era”, “una”, “volta”, per esempio, mentre codifica “c’era una ” (che ha uno spazio finale) come “c’era”, “una”, ” “. A seconda di come viene dato il prompt a un modello, con “c’era una” o “c’era una “, i risultati potrebbero essere completamente diversi, perché il modello non capisce (come farebbe una persona) che il significato è lo stesso.

I tokenizer trattano anche il caso in modo diverso. “Ciao” non è necessariamente lo stesso di “CIAO” per un modello; “ciao” è di solito un token (a seconda del tokenizer), mentre “CIAO” può essere fino a tre (“CI”, “A” e “O”). Questo è il motivo per cui molti transformer falliscono il test delle lettere maiuscole. “È piuttosto difficile aggirare la questione di cosa esattamente dovrebbe essere una ‘parola’ per un modello linguistico, e anche se riuscissimo a far concordare gli esperti umani su un vocabolario perfetto di token, i modelli probabilmente troverebbero ancora utile ‘segmentare’ ulteriormente le cose,” ha detto Sheridan Feucht, uno studente di dottorato che studia l’interpretabili dei modelli linguistici su larga scala presso la Northeastern University. “La mia ipotesi è che non esista un tokenizer perfetto a causa di questo tipo di vaghezza.”

Questa “vaghezza” crea ancora più problemi nelle lingue diverse dall’inglese. Molti metodi di tokenizzazione assumono che uno spazio in una frase denoti una nuova parola. Questo perché sono stati progettati con l’inglese in mente. Ma non tutte le lingue usano spazi per separare le parole. Il cinese e il giapponese non lo fanno, né il coreano, il tailandese o il khmer. Uno studio dell’Oxford del 2023 ha scoperto che, a causa delle differenze nel modo in cui le lingue non inglesi vengono tokenizzate, può richiedere il doppio del tempo per completare un compito formulato in una lingua non inglese rispetto allo stesso compito formulato in inglese. Lo stesso studio — e un altro — ha scoperto che gli utenti di lingue meno “efficienti dal punto di vista dei token” vedono probabilmente peggiori prestazioni del modello e pagano di più per l’uso, dato che molti fornitori di AI addebitano per token.

I tokenizer spesso trattano ogni carattere nei sistemi di scrittura logografici — sistemi in cui i simboli stampati rappresentano parole senza relazionarsi alla pronuncia, come il cinese — come un token distinto, portando a un alto conteggio di token. Allo stesso modo, i tokenizer che processano le lingue agglutinative — lingue in cui le parole sono composte da piccoli elementi significativi chiamati morfemi, come il turco — tendono a trasformare ogni morfema in un token, aumentando il conteggio complessivo dei token. (La parola equivalente a “ciao” in tailandese, สวัสดี, è sei token).

Nel 2023, la ricercatrice di Google DeepMind AI Yennie Jun ha condotto un’analisi comparativa della tokenizzazione di diverse lingue e dei suoi effetti a valle. Utilizzando un dataset di testi paralleli tradotti in 52 lingue, Jun ha mostrato che alcune lingue necessitavano fino a 10 volte più token per catturare lo stesso significato in inglese. Oltre alle inequità linguistiche, la tokenizzazione potrebbe spiegare perché i modelli odierni sono pessimi in matematica. Raramente le cifre vengono tokenizzate in modo coerente. Poiché non sanno realmente cosa siano i numeri, i tokenizer potrebbero trattare “380” come un token, ma rappresentare “381” come una coppia (“38” e “1”), distruggendo di fatto le relazioni tra cifre e risultati in equazioni e formule. Il risultato è la confusione del transformer; un recente documento ha mostrato che i modelli faticano a capire schemi numerici ripetitivi e contesti, in particolare i dati temporali. (Vedi: GPT-4 pensa che 7.735 sia maggiore di 7.926).

Questo è anche il motivo per cui i modelli non sono bravi a risolvere problemi di anagrammi o a invertire le parole. Quindi, la tokenizzazione presenta chiaramente sfide per l’AI generativa. Possono essere risolte? Forse. Feucht punta a modelli di stato di byte come MambaByte, che possono ingerire molti più dati rispetto ai transformer senza una penalità di prestazioni eliminando del tutto la tokenizzazione. MambaByte, che lavora direttamente con byte grezzi che rappresentano testo e altri dati, è competitivo con alcuni modelli transformer in compiti di analisi linguistica gestendo meglio “rumori” come parole con caratteri scambiati, spaziatura e caratteri maiuscoli.

Tuttavia, i modelli come MambaByte sono nelle prime fasi di ricerca. “Probabilmente è meglio lasciare che i modelli guardino direttamente ai caratteri senza imporre la tokenizzazione, ma al momento questo è semplicemente infattibile dal punto di vista computazionale per i transformer,” ha detto Feucht. “Per i modelli transformer in particolare, il calcolo scala quadraticamente con la lunghezza della sequenza, quindi vogliamo davvero utilizzare rappresentazioni di testo brevi.” In mancanza di una svolta nella tokenizzazione, sembra che le nuove architetture di modelli saranno la chiave.