Vai al contenuto

Lezione 4 di 6 · 6 min · +100 XP

Cosa sono i token nell’IA, e perché un modello legge le parole a pezzi?

I token sono i piccoli pezzi di testo che un modello linguistico legge e scrive. Un tokenizer taglia il testo in pezzi comuni: le parole frequenti restano intere, mentre parole rare, nomi nuovi e numeri lunghi vengono divisi. Ogni token diventa un numero, il suo ID, con cui il modello può calcolare. Lunghezza e costi si contano in token.

▶ Prova tu

Perché è importante

Un modello non vede mai lettere o parole intere, solo ID di token. Questo spiega perché fatica a contare le lettere, perché i numeri lunghi lo mettono in difficoltà e perché alcune lingue costano di più.

In 6 minuti saprai

  • Quando un modello sbaglia a contare le lettere o si confonde con un numero lungo, ricorda che vede pezzi, non caratteri.
  • Scrivere in una lingua con meno token per parola può rendere la stessa richiesta più economica e veloce.
  • Quando uno strumento indica limiti o prezzi «per token», pensa a pezzi grandi più o meno come una parola, non a parole intere.

Cosa eserciterai

  1. Fai il tokenizer

    Tocca gli spazi tra le lettere per tagliare ogni parola in token. Poi premi Tokenizza e confronta. Divisioni e ID sono un esempio, come in un tokenizer tipico.

    1. il → [il] #342
      Le parole molto comuni hanno un token tutto loro. «il» compare così spesso che dividerlo sarebbe uno spreco di spazio.
    2. incredibile → [in] #403 [credi] #33246 [bile] #481
      Le parole lunghe si costruiscono con pezzi familiari: «in», «credi» e «bile» compaiono in migliaia di altre parole.
    3. Vireo → [Vir] #53413 [eo] #78
      Un nome nuovo non è nel vocabolario, quindi il tokenizer lo costruisce con pezzi che conosce. Così si può scrivere qualsiasi parola.
    4. 1234567 → [123] #4513 [456] #10961 [7] #22
      Molti tokenizer tagliano i numeri lunghi in gruppi di massimo tre cifre. Il modello non vede mai il numero intero in una volta: è uno dei motivi per cui i calcoli lunghi lo mettono in difficoltà.
    5. farfalla → [far] #13360 [f] #69 [alla] #21202
      I tokenizer imparano soprattutto da testi in inglese, dove «butterfly» è spesso un solo token. Molte parole italiane, come «farfalla», vengono divise in più pezzi.
    1. Stesso significato, due lingue. Quale costa a Vireo più token?
      • A: I love cats. → [I] [·love] [·cats] [.] (4 token)
      • B: Adoro i gatti. → [Ad] [oro] [·i] [·g] [atti] [.] (6 token)
      La frase italiana richiede più pezzi perché il tokenizer ha visto meno italiano che inglese. Più token vuol dire più calcolo, e spesso un prezzo più alto, per lo stesso significato.
    2. Quale messaggio costa più token?
      • A: Ci vediamo alle 7. → [Ci] [·ved] [iamo] [·alle] [·7] [.] (6 token)
      • B: Ci vediamo alle 19:45:30. → [Ci] [·ved] [iamo] [·alle] [·19] [:] [45] [:] [30] [.] (10 token)
      Cifre e punteggiatura spesso costano un token ciascuna. Orari, codici e numeri lunghi riempiono il budget di un modello sorprendentemente in fretta.
  2. Perché pezzi e non parole?

    Tocca ogni carta per vedere cosa c’è dietro.

    🔢 Perché trasformare il testo in numeri?
    Un modello sa solo fare calcoli. Ogni token viene sostituito dal suo ID, così una frase diventa una lista di numeri con cui calcolare.
    📕 Perché non un token per parola?
    Le parole sono troppe: nomi, errori di battitura, nuovo gergo. Un elenco di parole non è mai completo, ma con i pezzi si costruisce qualsiasi parola, anche una nuovissima.
    🔤 Perché non le singole lettere?
    Ogni frase diventerebbe lunghissima e il modello dovrebbe faticare molto di più per coglierne il significato. I pezzi di parola sono la via di mezzo.
    🧮 Da dove viene l’elenco dei token?
    Prima dell’addestramento un programma analizza moltissimo testo e continua a unire le coppie di pezzi più frequenti, finché ottiene un elenco fisso, spesso di decine di migliaia di token.
  3. Cosa spiegano i token

    Seleziona tutte le affermazioni vere.

    • Un modello legge ID di token, non lettere
    • Le parole comuni spesso sono un solo token
    • Le parole rare e nuove vengono divise in pezzi
    • Lo stesso testo può costare più token in un’altra lingua
    • Ogni parola è esattamente un token
    • I token sono semplicemente sillabe
    • Contare le lettere di una parola è facile per un modello

Ricorda

Un modello legge il testo in pezzi numerati chiamati token. Le parole comuni restano intere, quelle rare si costruiscono a pezzi.

Il testo diventa una lista di ID di token. Le parole comuni restano intere, quelle rare si costruiscono a pezzi.

Dati chiave

  • Dividere le parole rare in pezzi frequenti con il byte pair encoding è stato introdotto per la traduzione neurale nel 2016 ed è la base della maggior parte dei tokenizer degli LLM di oggi. · Fonte: Sennrich, Haddow & Birch, Neural Machine Translation of Rare Words with Subword Units, ACL 2016
  • Il tokenizer di GPT-2 aveva un vocabolario di 50.257 token. · Fonte: Radford et al., OpenAI, Language Models are Unsupervised Multitask Learners, 2019
  • Llama 3 usa un tokenizer con un vocabolario di 128.000 token, che codifica il testo in modo più efficiente del suo predecessore. · Fonte: Meta, Introducing Meta Llama 3, 2024
  • Lo stesso testo tradotto in lingue diverse può richiedere numeri di token molto diversi, quindi elaborare alcune lingue costa di più. · Fonte: Petrov et al., Language Model Tokenizers Introduce Unfairness Between Languages, NeurIPS 2023

Aggiornato:

Domande frequenti

Quante parole sono un token?

Dipende dal testo e dal tokenizer. In inglese un token è spesso una parola breve o un pezzo di una più lunga; in italiano servono di solito un po’ più token per parola. Anche codice e numeri ne richiedono spesso di più.

Perché l’IA non sa contare le lettere di una parola?

Il modello non vede mai le singole lettere, solo gli ID di pezzi come «straw» e «berry». Per contare le lettere deve ricordare come si scrive ogni pezzo, e lì è facile sbagliare.

Cos’è un tokenizer?

Un tokenizer è il programma che taglia il testo in token e sostituisce ognuno con il suo ID prima che il modello lo veda. Viene costruito una volta, prima dell’addestramento, con i pezzi più frequenti di un grande campione di testo.

Perché i modelli di IA si pagano a token?

Il lavoro di un modello cresce con il numero di token che legge e scrive. Contare i token misura quel lavoro in modo più giusto che contare parole o caratteri.

Termini correlati