Salta ai contenuti

GPT-3 2020: scaling laws e few-shot learning

175 miliardi di parametri. 300 miliardi di token. Circa 4,6 milioni di dollari di compute pubblicamente stimati. Un solo modello, un solo training. Il 28 maggio 2020 OpenAI carica su arXiv un paper di 75 pagine, “Language Models are Few-Shot Learners”, firmato da 31 autori. Il claim non è che il modello è più grande. Il claim è che, oltre una certa scala, il modello impara a imparare dagli esempi nel prompt. Il fine-tuning, per molti task, smette di servire. Il paper vincerà il best paper award a NeurIPS 2020. La narrativa “scaling is all you need” comincia qui, come anche l’ecosistema commerciale degli LLM-as-a-service: a giugno 2020 l’API di GPT-3 entra in beta privato, a settembre Microsoft annuncia l’acquisto dei diritti esclusivi sul modello.

Per due anni, dal giugno 2018 di GPT-1 al maggio 2020, la ricetta operativa del NLP era stata “pretrain + fine-tune per ogni task”. BERT lo aveva codificato in modo formale (vedi bert-gpt-2018-2019): si parte da un modello pre-trained, si aggiunge un piccolo classifier head, si addestra end-to-end sul dataset annotato del task specifico. La fase di fine-tuning richiedeva centinaia o migliaia di esempi etichettati per ogni nuovo problema, infrastruttura per addestrare, espertise per scegliere learning rate e schedule.

GPT-3 fa una cosa diversa. Pretrain una volta, prompt mille volte. Il modello non viene toccato dopo il pre-training: per fare traduzione, per sommarizzare, per rispondere a domande di trivia, per generare codice, si scrive un prompt che contiene zero, uno o pochi esempi del task seguiti dalla query, e il modello completa. La performance scala con la dimensione del modello e con il numero di esempi nel prompt. A 175 miliardi di parametri, su molti benchmark, il few-shot prompting si avvicina o supera modelli fine-tuned di taglia molto inferiore. Questo cambia il workflow di chi costruisce sistemi NLP in modo profondo: la fase di “feature engineering del prompt” sostituisce la fase di “annotazione dataset + fine-tuning”.

Il terzo motivo per cui il capitolo conta è di taglio storiografico. GPT-3 è il punto in cui scaling diventa narrative dominante della ricerca di frontiera in language modeling. Le scaling laws di Kaplan et al. del gennaio 2020 avevano predetto che la loss continuasse a scendere come legge di potenza con compute, parametri e dati. GPT-3 verifica empiricamente la predizione fino a 175 miliardi di parametri e osserva qualcosa di non previsto: oltre una certa scala emergono capacità qualitativamente nuove (in-context learning, aritmetica primitiva, generazione di codice da descrizione). Questo apre il decennio degli LLM come è stato osservato dalla comunità: PaLM, Chinchilla, GPT-4, Claude, Gemini, Llama. Tutti, in modo riconoscibile, sono “GPT-3 più grande, più allineato, più ottimizzato”.

Per leggere correttamente GPT-3 bisogna ricostruire lo stato della ricerca all’inizio del 2020. Il transformer del 2017 (vedi transformer-2017) era già la piattaforma standard. Il paradigma pretrain + fine-tune era consolidato in due varianti: encoder-only alla BERT per classificazione, retrieval, NER, e decoder-only alla GPT per generazione (vedi bert-gpt-2018-2019). GPT-2, rilasciato a tappe da OpenAI tra febbraio e novembre 2019, aveva culminato a 1,5 miliardi di parametri e mostrato, in modo qualitativo, capacità di zero-shot su task semplici (rispondere a domande, completare paragrafi, riassumere). Era un segnale, non una dimostrazione: i benchmark erano informali, le confronti con baseline supervisionate erano impari.

Il 23 gennaio 2020 esce su arXiv un paper di OpenAI che cambia il modo di pensare ai modelli grandi: “Scaling Laws for Neural Language Models” di Jared Kaplan (fisico teorico americano, allora a Johns Hopkins e consulente OpenAI), Sam McCandlish, Tom Henighan, Tom Brown, Benjamin Chess, Rewon Child, Scott Gray, Alec Radford, Jeffrey Wu, Dario Amodei. Il paper studia empiricamente come la loss di un transformer language model scali al variare di tre quantità: numero di parametri NN, dimensione del dataset DD in token, compute totale CC in FLOPs. La scoperta è che la loss segue leggi di potenza pulite, prevedibili, valide su sette ordini di grandezza:

L(N)(NcN)αN,L(D)(DcD)αD,L(C)(CcC)αCL(N) \approx \left(\frac{N_c}{N}\right)^{\alpha_N}, \quad L(D) \approx \left(\frac{D_c}{D}\right)^{\alpha_D}, \quad L(C) \approx \left(\frac{C_c}{C}\right)^{\alpha_C}

In parole povere, questo dice che raddoppiare i parametri (a dati e compute sufficienti) riduce la loss di una frazione fissa, e lo stesso vale per i dati e per il compute. Le costanti αN,αD,αC\alpha_N, \alpha_D, \alpha_C sono piccole (intorno a 0,07-0,10) ma stabili: non si vedono saturazioni nei range testati. La predizione operativa è netta: continuare a scalare deve continuare a migliorare, fino almeno a sette ordini di grandezza oltre i modelli del 2020.

Il paper Kaplan ha due conseguenze immediate. La prima è metodologica: mostra che si possono predire le performance di modelli grandi addestrando modelli piccoli e estrapolando, dunque si possono pianificare run multimilionari con minore rischio. La seconda è strategica: giustifica investire in modelli molto più grandi di quelli esistenti. GPT-2 a 1,5 miliardi è in fondo alla curva. La curva dice: vai oltre.

Il contesto industriale del 2020 è altrettanto rilevante. Nel luglio 2019 Microsoft annuncia un investimento da un miliardo di dollari in OpenAI, condizionato all’uso esclusivo di Azure come infrastruttura di compute. La partnership rende possibile, dal punto di vista di hardware e budget, un training di scala mai vista prima. OpenAI nel 2019 era passata da nonprofit a “capped-profit” con OpenAI LP, una struttura ibrida che permette investimenti privati pur limitando il ritorno massimo. Sam Altman è CEO dal 2019. Il management è chiaro che il prossimo modello deve essere un salto di scala.

In parallelo, in Cina Wu Dao 2.0 del Beijing Academy of AI verrà annunciato a giugno 2021 a 1750 miliardi di parametri (un’ordine di grandezza più grande di GPT-3, anche se con caveat su sparsity e attivazione effettiva). In Google, T5 di Raffel et al. era stato pubblicato a ottobre 2019 a 11 miliardi di parametri encoder-decoder, e Meena del gennaio 2020 era un decoder-only conversazionale a 2,6 miliardi. Gli ordini di grandezza si stavano spostando ovunque, ma è OpenAI a fare il salto di due ordini di magnitudine in una volta.

Vale la pena un ritratto rapido degli autori principali del paper GPT-3, perché la lista è inusualmente lunga (31 nomi) e attraversa tre laboratori che oggi sono distinti.

Tom B. Brown (informatico americano, allora a OpenAI da pochi anni) è primo autore. Il primo autore della linea GPT cambia: GPT-1 e GPT-2 erano firmati da Alec Radford (vedi bert-gpt-2018-2019, sezione “Contesto”); su GPT-3 il primo nome diventa Brown, anche se Radford resta nella lista. Brown lascerà OpenAI nel 2021 per cofondare Anthropic insieme ai fratelli Dario e Daniela Amodei, Jared Kaplan, Sam McCandlish, Tom Henighan, Benjamin Mann, Nick Ryder, Jack Clarke, Chris Olah e altri.

Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, e poi avanti, fino a Sam McCandlish, Alec Radford, Ilya Sutskever, Dario Amodei come senior authors finali: la lista di 31 nomi documenta una caratteristica nuova della ricerca AI di frontiera. Non è più un paper di un piccolo gruppo accademico: è un progetto industriale che richiede team distinti per training infrastructure, dataset curation, evaluation, safety, deployment. La firma collettiva è la firma di un’industria, non di una bottega.

Dario Amodei (informatico italiano-americano, allora VP of Research a OpenAI, cofondatore di Anthropic nel 2021) e Ilya Sutskever (cofondatore di OpenAI, chief scientist fino al maggio 2024, già ricorrente in seq2seq-2014 e bert-gpt-2018-2019) sono i due senior più visibili. Amodei in particolare era stato firmatario di “Concrete Problems in AI Safety” del 2016 e della linea GPT-2: la sua decisione di lasciare OpenAI nel 2021 dopo GPT-3 documenta una divergenza interna su come bilanciare scaling capability e safety. Il fatto che molti coautori di GPT-3 cofondino Anthropic insieme è uno dei dati storiografici più rilevanti del periodo: la stessa squadra che produce GPT-3 si divide e crea il principale concorrente diretto di OpenAI in meno di un anno.

Angolo quantitativo: scaling come legge predittiva

Sezione intitolata “Angolo quantitativo: scaling come legge predittiva”

Il primo angolo è quello quantitativo, ed è il più diretto da articolare. Le scaling laws di Kaplan et al. del gennaio 2020 dicono che la loss di un language model transformer scende come legge di potenza in tre direzioni: parametri, dati, compute. La predizione è che modelli molto più grandi continueranno a migliorare in modo prevedibile. GPT-3 testa la predizione fino a 175 miliardi di parametri, due ordini di grandezza oltre GPT-2, e la conferma: la loss continua a scendere lungo la curva attesa. Non c’è saturazione visibile.

Quello che Kaplan non aveva predetto in modo esplicito, e che GPT-3 osserva, è che oltre una certa scala il miglioramento di loss si traduce in capacità qualitativamente nuove. Non solo “perplessità più bassa”. Il modello, a 175 miliardi di parametri e zero esempi nel prompt, risolve task che a 13 miliardi falliva. A 175 miliardi e pochi esempi nel prompt, fa traduzione, aritmetica a due cifre, generazione di codice primitiva. La loss è continua, ma le metriche task-specific su molti benchmark mostrano un comportamento che il paper descrive come “phase transition”: appiattite per modelli piccoli, in salita ripida oltre una soglia. Il fenomeno verrà chiamato “emergent abilities” e diventerà oggetto di un dibattito acceso (vedi sezione “Dove si rompe”).

Il secondo angolo è il cambio di paradigma operativo. Prima di GPT-3 il workflow standard per usare un language model pre-trained era: scegli il task, scarica il modello, prepara un dataset annotato per il task, fai fine-tuning, deploya il modello fine-tuned. Dopo GPT-3 il workflow diventa: scrivi un prompt che contiene la descrizione del task e zero, uno o pochi esempi, manda il prompt al modello, leggi la completion. Lo stesso modello unico serve tutti i task, distinti solo dal prompt che gli arriva davanti.

Il paper formalizza il concetto introducendo la terminologia operativa che sopravvive ancora oggi:

  • Zero-shot: il prompt contiene solo l’istruzione del task, nessun esempio. “Translate English to French: cheese =>”.
  • One-shot: il prompt contiene un esempio del task seguito dalla query. “Translate English to French: sea otter => loutre de mer | cheese =>”.
  • Few-shot: il prompt contiene K esempi (tipicamente da 5 a 100) seguiti dalla query. “Translate English to French: sea otter => loutre de mer | peppermint => menthe poivrée | plush giraffe => girafe en peluche | cheese =>”.

Il paper chiama il fenomeno in-context learning (ICL): il modello impara il task dal contesto del prompt, senza aggiornare i pesi. È un “learning” in senso operativo (la performance migliora con più esempi nel prompt), non in senso classico di gradient descent. I pesi del modello restano congelati. L’apprendimento avviene durante l’inferenza, all’interno del context window.

Marcatura di classe: questo è una filiazione esplicita documentata. GPT-2 aveva già menzionato zero-shot capabilities nel paper del febbraio 2019, ma in modo aneddotico. GPT-3 le formalizza, le misura sistematicamente su 42 benchmark, e le compara con fine-tuning di taglie diverse. La filiazione GPT-2 → GPT-3 è dichiarata dagli autori nelle prime pagine del paper.

Angolo cognitivo: il modello come simulatore di task

Sezione intitolata “Angolo cognitivo: il modello come simulatore di task”

Il terzo angolo, più speculativo, è una metafora che aiuta a capire perché il prompting funziona. Si può pensare a GPT-3 come a un simulatore generale di sequenze di testo plausibili. Durante il pre-training su 300 miliardi di token, il modello ha visto tutte le forme testuali possibili: domande seguite da risposte, frasi tradotte, equazioni risolte, codice spiegato, dialoghi. Ha imparato non un task specifico, ma il pattern dei pattern: come è fatto un esercizio di traduzione, come è fatto un dialogo Q&A, come è fatta una lista di esempi seguita da un’incognita.

Marcatura di classe: questa è un’analogia operativa, non una teoria di come GPT-3 funzioni meccanicamente al livello dei circuiti. Il dibattito su cosa stia davvero accadendo internamente durante l’in-context learning resta aperto: i candidati sono diversi (Bayesian inference implicita, gradient descent simulato dentro l’attention, induction heads, ricerca per ricombinazione di pattern). I lavori successivi di mechanistic interpretability (vedi mech-interp-intro in preparazione, Parte IX) hanno articolato meccanismi parziali, nessuno completo.

Tuttavia l’analogia del simulatore aiuta a capire perché il prompting funziona. Se nel prompt mostri al modello “input X1 → output Y1 ; input X2 → output Y2 ; input X3 → ”, lui non sta imparando a fare quel task. Sta riconoscendo che la sequenza ha una forma familiare (lista di coppie input-output), ricostruendo il pattern Y dalle X osservate, e completando con un Y3 plausibile. Il modello è bravo perché ha visto sequenze di questo tipo migliaia di volte durante il pre-training. Il “prompting” è nient’altro che fornire al modello l’inizio di una sequenza che lui completa nel modo statisticamente più probabile.

Angolo economico: l’asimmetria pretrain/inference

Sezione intitolata “Angolo economico: l’asimmetria pretrain/inference”

Un quarto angolo, complementare ai precedenti, è quello economico. Il pre-training di GPT-3 costa circa 4,6 milioni di dollari di compute pubblicamente stimati, e impiega settimane di un cluster di V100 dedicato. È un investimento concentrato, fatto una volta sola, da un’organizzazione con accesso a infrastruttura di scala industriale. L’inferenza per ogni singola request costa una frazione di centesimo, ed è disponibile via API a qualsiasi sviluppatore con una carta di credito.

L’asimmetria fra costo di pre-training (alto, concentrato) e costo di inferenza (basso, distribuito) crea un’economia naturale: pochi laboratori grandi pretrainnano i foundation model, milioni di sviluppatori li consumano via API. Lo schema è il prototipo di tutto il modello commerciale degli LLM-as-a-service che si consoliderà nei cinque anni successivi. Senza questa asimmetria, GPT-3 sarebbe stato un risultato di ricerca interno; con questa asimmetria, diventa una piattaforma su cui costruire startup. Marcatura di classe: questa è una filiazione operativa, non un’analogia, perché il modello commerciale è esplicitamente articolato dai paper successivi e dai piani di prodotto OpenAI dell’epoca.

I dettagli profondi di transformer block, attention, position encoding sono trattati in Parte IX (attention-intuizione, qkv-da-zero, multi-head, transformer-block, tutti in preparazione). Qui restiamo in registro storico: descriviamo l’architettura di GPT-3, il training, e il setup sperimentale di in-context learning quel tanto che basta a vedere come funziona e in che cosa differisce dai predecessori.

L’architettura di GPT-3 è quasi identica a quella di GPT-2: transformer decoder-only, self-attention causalmente mascherata, feed-forward GeLU, layer norm pre-attivazione. Le scelte sono conservative: gli autori vogliono testare l’ipotesi di scaling, non innovare l’architettura. Dimensioni del modello più grande:

  • 96 layer transformer.
  • dmodel=12288d_{\text{model}} = 12288 (dimensione dello hidden state).
  • 96 attention head, ognuno con dhead=128d_{\text{head}} = 128.
  • dff=4dmodel=49152d_{\text{ff}} = 4 \cdot d_{\text{model}} = 49152 (dimensione del feed-forward inner).
  • Context window: 2048 token.
  • Vocabolario BPE: ~50.000 token (lo stesso di GPT-2).
  • Totale parametri: 175 miliardi.

In parole povere, questo dice che il modello ha 96 blocchi transformer impilati, ognuno con 96 teste di attention parallele e una feed-forward larga 49152 dimensioni, applicato su un input di al massimo 2048 token. La maggior parte dei parametri vive nelle matrici di proiezione QKV e nei feed-forward, non negli embedding (che pure sono una matrice 50000×122880.610950000 \times 12288 \approx 0.6 \cdot 10^9 parametri).

Una scelta architetturale non banale è l’uso di sparse attention pattern alternato sui layer: layer pari usano dense attention standard, layer dispari usano locally banded sparse attention (ogni token attende a un sottoinsieme strutturato di posizioni precedenti). La motivazione è efficienza: la sparse attention riduce la complessità di calcolo da O(n2)O(n^2) a O(nn)O(n \sqrt{n}) per quei layer, rendendo il training fattibile. La perdita di performance teorica è compensata dalla scala. La tecnica deriva dal lavoro precedente di Child, Gray, Radford, Sutskever del 2019 (“Generating Long Sequences with Sparse Transformers”, arXiv:1904.10509), già usato in modo sperimentale in modelli di OpenAI.

Il tokenizer è BPE (Byte-Pair Encoding) con vocabolario di circa 50.257 token, ereditato direttamente da GPT-2. Una scelta operativa importante: il tokenizer non viene riaddestrato sul corpus di pre-training di GPT-3, viene riusato pari pari da quello di GPT-2. La conseguenza è che codice, lingue non latine, simboli matematici risultano tokenizzati in modo subottimale (un singolo carattere cinese può richiedere 3-4 token, una formula LaTeX si frammenta), un limite che resterà in tutti i modelli OpenAI fino almeno a GPT-4 quando viene introdotto un tokenizer aggiornato. Vedi bpe (in preparazione, Parte IX) per il dettaglio del meccanismo.

Il paper ablata otto modelli di taglia crescente per studiare lo scaling: GPT-3 Small (125M), Medium (350M), Large (760M), XL (1.3B), 2.7B, 6.7B, 13B, e infine 175B (chiamato anche “GPT-3” in senso stretto, o “Davinci” nell’API). I sette modelli più piccoli servono come ablation per verificare le scaling laws. Da notare: tutti gli otto modelli vengono addestrati per il numero di token previsto dalle scaling laws di Kaplan, ovvero ~300 miliardi di token totali per ognuno. Questo dato è il bersaglio della critica di Chinchilla due anni dopo (vedi “Eredità oggi”): i modelli piccoli sarebbero stati overfit, i grandi underfit, rispetto al rapporto compute-optimal corretto.

Il dataset di pre-training è una miscela ponderata di cinque corpus:

  • Common Crawl filtrato: la fonte principale, ~410 miliardi di token raccolti da scrape del web di mesi diversi (2016-2019). Filtrato pesantemente: gli autori addestrano un classificatore logistico per distinguere documenti “high-quality” (simili a WebText e Wikipedia) da “low-quality”, poi applicano fuzzy deduplication con MinHash.
  • WebText2: ~19 miliardi di token, una versione estesa del WebText originale di GPT-2 (link condivisi su Reddit con almeno 3 karma).
  • Books1: ~12 miliardi di token, corpus di libri (composizione esatta non pubblicamente dettagliata, oggetto di controversia legale negli anni successivi).
  • Books2: ~55 miliardi di token, secondo corpus di libri (idem).
  • Wikipedia inglese: ~3 miliardi di token.

Il training non vede ogni token una volta sola: gli autori applicano un upsampling sbilanciato per privilegiare i corpus high-quality. WebText2, Books1, Books2 e Wikipedia sono visti più volte (rispettivamente 2,9, 1,9, 0,4 e 3,4 epoche), Common Crawl è visto meno di una volta intera (0,4 epoche). Il totale di token visti durante il training è ~300 miliardi, distribuiti come miscela ponderata. La motivazione del weighting è che Common Crawl, anche filtrato, resta più rumoroso dei corpus curati: pesarlo meno migliora la qualità delle rappresentazioni a parità di compute.

Il compute totale è stimato in 3.1410233.14 \cdot 10^{23} FLOPs, eseguito su un cluster di V100 GPU su Azure. Il costo monetario non è ufficialmente comunicato da OpenAI; ricostruzioni successive (Heim 2022, retrospective basata su pricing pubblico Azure dell’epoca) lo stimano in 4,6 milioni di dollari di compute puro, escludendo personale, ricerca, infrastructure overhead. Il training impiega settimane.

Un dettaglio tecnico è il trattamento di data contamination: parti del web filtrato si sovrappongono con i benchmark di valutazione (per esempio, le domande di trivia su Wikipedia possono comparire nel training set). Gli autori dedicano una sezione lunga del paper alla quantificazione del problema: per ogni benchmark calcolano il grado di overlap con il training set e riportano performance “clean” (esempi non contaminati) e “dirty”. Su molti benchmark le due cifre sono vicine, ma la discussione apre la questione metodologica del data contamination che resterà centrale nella valutazione degli LLM successivi.

Un’altra scelta operativa significativa è l’ottimizzatore: GPT-3 usa Adam con β1=0.9,β2=0.95,ϵ=108\beta_1 = 0.9, \beta_2 = 0.95, \epsilon = 10^{-8}, weight decay 0.1, gradient clipping a norma 1.0. Il learning rate ha schedule cosine con warmup di 375 milioni di token e decay finale al 10% del valore di picco. Il batch size è notevole: 3.2 milioni di token per step, con strategia di gradual warmup del batch size all’inizio del training (parte da 32 mila token e cresce linearmente). Queste cifre sono il frutto delle prescrizioni delle scaling laws di Kaplan, e sono il prototipo delle ricette di hyperparameter scaling che la comunità adotterà negli anni successivi. La modalità di parallelismo è una combinazione di data parallel + model parallel distribuito su un cluster di V100 GPU su Azure (vedi training-infra in preparazione, Parte XI per il dettaglio): il modello da 175B non sta in una singola GPU, e nemmeno in un singolo nodo, ma viene splittato lungo gli layer e lungo le dimensioni di hidden state.

Il setup di valutazione è il contributo metodologico forse più importante del paper. Per ogni task di valutazione (42 benchmark in totale), gli autori misurano performance in tre regimi:

  • Zero-shot: prompt con solo descrizione del task in linguaggio naturale, e la query.
  • One-shot: prompt con un esempio del task e la query.
  • Few-shot: prompt con K esempi (K varia da task a task, tipicamente da 10 a 100, scelto per riempire il context window di 2048 token), seguito dalla query.

In tutti i casi il modello non viene aggiornato: i pesi restano congelati durante la valutazione. Si misura solo la qualità delle completion generate dal forward pass.

Il paper compara queste tre modalità con la baseline storica del fine-tuning supervisionato dello stato dell’arte di ogni benchmark, generalmente un modello molto più piccolo (da BERT-large 340M a T5-11B) ma addestrato con migliaia o decine di migliaia di esempi annotati specifici del task. Il claim risultante è la dichiarazione operativa più nota del paper: il few-shot prompting di GPT-3 175B si avvicina o supera il fine-tuning su molti benchmark di NLP, senza mai aggiornare i pesi.

Esempi concreti dalla tabella principale del paper:

  • TriviaQA (question answering): GPT-3 175B few-shot raggiunge 71,2% di accuracy, superando il fine-tuned T5-11B che era a 60,5%. Il modello sta rispondendo a domande di trivia che ha visto solo come pattern durante il pre-training.
  • LAMBADA (predizione dell’ultima parola di un paragrafo): GPT-3 175B zero-shot raggiunge 76,2%, few-shot 86,4%. Il fine-tuned state-of-the-art precedente (modello specifico) era a 68%.
  • WMT ‘14 En-Fr translation: GPT-3 175B few-shot raggiunge ~32 BLEU. Il supervised state-of-the-art (Transformer-big addestrato su 36M coppie di frasi parallele) era a ~41 BLEU. GPT-3 non vince, ma si avvicina a un sistema supervisionato senza aver mai visto coppie parallele esplicitamente etichettate come tali: tutto il training era sul testo monolingue del web.
  • SuperGLUE (suite di task di NLU): GPT-3 175B few-shot raggiunge 71,8%, sotto il fine-tuned T5-11B che era a 89,3%. Su task complessi che richiedono ragionamento multi-step il fine-tuning resta vantaggioso.

Il messaggio è sfumato: few-shot non vince ovunque, ma diventa competitivo su una gamma sorprendentemente ampia di task. Su altri (aritmetica multi-cifra, ragionamento simbolico complesso, task che richiedono memoria di mondo aggiornata) il modello fallisce in modo netto.

La sezione di ablation più ricca del paper cross-fa due assi: dimensione del modello (otto taglie da 125M a 175B) e numero di esempi nel prompt (da 0 a ~100). Il risultato è un grafico bidimensionale: la performance su task di few-shot scala monotonicamente con la dimensione del modello, e separatamente con il numero di esempi nel prompt. Più importante: il guadagno marginale del few-shot rispetto allo zero-shot cresce con la dimensione del modello. Modelli piccoli traggono poco beneficio da esempi in-context; modelli grandi traggono molto beneficio.

Questo è il dato che la comunità chiamerà “emergent abilities”: alcune capacità (ragionare a partire da esempi nel prompt) appaiono solo oltre una certa scala. Modelli a 1,3B e 6,7B sembrano “non capire” il prompting; modelli a 175B sì. Il fenomeno verrà discusso e riinterpretato nei due anni successivi (vedi sezione “Dove si rompe”), ma nel paper di GPT-3 viene presentato come fatto empirico osservato.

Un dettaglio che spesso si perde nella semplificazione narrativa: il paper di GPT-3 non solo testa otto modelli a varie taglie, ma testa anche per ognuno di essi tre regimi (zero, one, few-shot) su 42 benchmark distinti. La matrice risultante è densa: 8×3×42=10088 \times 3 \times 42 = 1008 valutazioni, riportate in tabelle estese che occupano la metà del paper. Il lettore di oggi che cerca risultati specifici trova quasi tutto già misurato. L’investimento metodologico è uno dei motivi per cui il paper è lungo 75 pagine, e per cui il NeurIPS 2020 review committee gli ha attribuito il best paper award.

Il 11 giugno 2020, due settimane dopo la pubblicazione del paper su arXiv, OpenAI annuncia l’API di GPT-3 in beta privato. Non rilascia i pesi. Non rilascia il codice di training. Rilascia un endpoint HTTP a cui si manda un prompt e si riceve una completion. Il costo iniziale, per il modello più grande (“Davinci”), è dell’ordine di $0.06 per 1000 token di output: cifra alta per gli standard del 2024-2026, ma tollerabile per applicazioni a basso volume. Il programma waitlist accumula migliaia di richieste; al lancio iniziale l’accesso è limitato a poche centinaia di sviluppatori. A settembre 2020 la beta si allarga.

Il 22 settembre 2020 Microsoft annuncia di aver acquistato i diritti esclusivi di licenza al codice sottostante GPT-3, parte dell’investimento da un miliardo di dollari del 2019. La frase “diritti esclusivi” è inizialmente confusa nella stampa: Microsoft può integrare GPT-3 nei propri prodotti, ma OpenAI può continuare a esporre il modello tramite la propria API. Il modello dei rapporti commerciali OpenAI-Microsoft di questa epoca rimane stratificato e parzialmente opaco, e diventerà oggetto di analisi giornalistiche e legali nei tre anni successivi.

L’API di GPT-3 catalizza la nascita di un ecosistema di startup costruite sopra. Copy.ai (copywriting automatico), Jasper (marketing copy), prime versioni di chatbot specializzati: tutte applicazioni sottili sopra il modello, distribuite in pochi mesi dal lancio. Il pattern “thin wrapper su LLM-as-a-service” nasce qui.

Vale la pena un dato sulla coincidenza temporale: il rilascio di GPT-3 cade nel maggio-giugno 2020, in piena prima ondata di pandemia COVID-19. La comunità AI è già “online-first” da anni (workshop virtuali, pre-print culture, comunicazione su Twitter), ma la pandemia accelera l’adozione di modalità di lavoro distribuito. La consultazione del paper, le discussioni sui social, le prime sperimentazioni con l’API avvengono in un contesto di lockdown globale, e questo amplifica visibilità e velocità di iterazione. Marcatura di classe: questa è una correlazione contestuale, non una causa. GPT-3 sarebbe stato impattante anche senza pandemia, ma la coincidenza temporale ha contribuito alla rapidità con cui la comunità si è organizzata attorno al modello. Anche la prima versione pubblica di GitHub Copilot (technical preview, giugno 2021) sarà un’applicazione di Codex, che è GPT-3 fine-tuned. La trasformazione del NLP da disciplina di ricerca a infrastruttura industriale comincia, in modo riconoscibile, con l’apertura della waitlist di giugno 2020.

Una conseguenza meno discussa del lancio dell’API è la nascita di pratiche di prompt versioning e prompt sharing informali. Sviluppatori che ottengono accesso pubblicano sui blog e su Twitter “prompt che funzionano” per task specifici. Il pattern di documentare e iterare sui prompt come si itererebbe su codice (ma senza tooling dedicato, almeno per i primi mesi) si consolida nei sei-dodici mesi successivi, e produrrà la prima ondata di tool dedicati al prompt management nel 2022-2023.

Il prompt sotto è la struttura tipica di una valutazione few-shot di traduzione nel paper GPT-3, con K=5 esempi. Il modello riceve il prompt esatto e completa generando il token successivo finché non incontra un newline o un terminatore.

Translate English to French.
sea otter => loutre de mer
peppermint => menthe poivrée
plush giraffe => girafe en peluche
cheese => fromage
hello => bonjour
goodbye =>

GPT-3 175B, in inferenza zero-temperature (greedy decoding), completa con au revoir. Il modello non ha mai visto un esempio annotato come “translation pair” durante il training, e non c’è stato fine-tuning. Ha imparato la corrispondenza English-French dalla statistica di co-occorrenza nel testo bilingue del web (pagine multilingua, forum di apprendimento lingue, dictionary entries). Il prompt few-shot gli comunica la forma del task, lui completa nel pattern.

L’esempio sotto è citato direttamente nel paper come dimostrazione di emergent capability. Il prompt è un few-shot con tre esempi di addizione a due cifre, seguito dalla query.

Q: What is 23 + 47?
A: 70.
Q: What is 56 + 38?
A: 94.
Q: What is 19 + 27?
A:

GPT-3 175B completa con 46. Il fatto è notevole non perché 19+27=46 sia difficile, ma perché il modello non ha un calcolatore interno e nessuno gli ha insegnato esplicitamente l’algoritmo di addizione. Ha imparato a fare aritmetica a due-tre cifre come effetto collaterale del pre-training su testo che contiene tabelline, esercizi scolastici, esempi numerici. La performance scala con la dimensione: GPT-3 1,3B fa addizioni a due cifre con ~5% di accuracy, GPT-3 175B con ~90%. A tre cifre la performance crolla rapidamente; a quattro cifre il modello fallisce sistematicamente. Il limite operativo è netto e ben documentato nel paper.

Lo pseudocodice sotto è la struttura tipica di una chiamata all’API di GPT-3 nel 2020-2021. L’interfaccia è completion-based: prompt in entrata, completion in uscita, parametri di sampling per controllare la generazione.

import openai
openai.api_key = "sk-..."
response = openai.Completion.create(
engine="davinci", # the 175B model
prompt=(
"Translate English to French.\n"
"\n"
"sea otter => loutre de mer\n"
"peppermint => menthe poivrée\n"
"plush giraffe => girafe en peluche\n"
"cheese => fromage\n"
"hello => bonjour\n"
"goodbye =>"
),
temperature=0.0, # greedy, deterministic
max_tokens=10, # cap output length
stop=["\n"], # stop on newline
)
completion = response.choices[0].text
print(completion.strip())
# Output: au revoir

Da notare: niente “system message”, niente “messages” come liste di turni (questa interfaccia arriverà con ChatGPT a fine 2022 e poi sarà standardizzata). L’API è puramente prompt-completion, modellata sull’idea di language model autoregressive: tu fornisci l’inizio della sequenza, il modello la continua. La gestione di “conversazioni” multi-turn richiedeva costruire manualmente il prompt come trascrizione di turni precedenti, e includerla a ogni chiamata. Tutta la logica di sessione viveva lato client.

Il paper dimostra anche capacità di analogia semantica nello stile di word2vec ma più ricca. Prompt zero-shot di word analogy:

Q: A "whatpu" is a small, furry animal native to Tanzania.
An example of a sentence that uses the word whatpu is:
We were traveling in Africa and we saw these very cute whatpus.
Q: To "farduddle" means to jump up and down really fast.
An example of a sentence that uses the word farduddle is:

GPT-3 175B completa con qualcosa di simile a “One day when I was playing tag with my little sister, she got really excited and she started doing these crazy little farduddles.” L’esempio è citato direttamente nel paper come “use of novel words”, e dimostra che il modello sa generalizzare l’uso di parole inventate dato un esempio nel contesto, applicando regole grammaticali e semantiche apprese durante il pre-training a token mai visti prima.

Esempio 5: code generation primitiva da descrizione

Sezione intitolata “Esempio 5: code generation primitiva da descrizione”

L’esempio sotto è una capability sorprendente che il paper menziona ma non enfatizza, e che diventerà la base di Codex e GitHub Copilot l’anno seguente. Prompt zero-shot:

# Python function that returns the Fibonacci sequence up to n.
def fib(n):

GPT-3 175B completa con qualcosa di simile a:

a, b = 0, 1
seq = []
while a < n:
seq.append(a)
a, b = b, a + b
return seq

Il codice non è perfetto in ogni completion (il modello ha varianza, a temperatura non zero genera output diversi), ma è sintatticamente valido e semanticamente corretto in una buona frazione dei sample. Il pre-training ha visto molto codice Python sul web (GitHub indicizzato, Stack Overflow, tutorial), e il modello ha imparato la struttura sintattica e idiomatica del linguaggio. Questo segnale spinge OpenAI a costruire Codex: GPT-3 fine-tuned specificamente su un corpus di codice di GitHub, rilasciato in agosto 2021.

[DATATO 2026-04]

GPT-3 è il punto di partenza di una linea di filiazione documentata che attraversa cinque anni di OpenAI e dell’industria LLM in generale. La filiazione è esplicita nei paper successivi e nei communicati stampa: ogni passo cita il precedente come baseline diretta.

Codex (Chen et al., agosto 2021): GPT-3 fine-tuned su un corpus di codice Python prelevato da GitHub. Pubblicato in “Evaluating Large Language Models Trained on Code” (arXiv:2107.03374), introduce il benchmark HumanEval. Powers GitHub Copilot, lanciato in technical preview a giugno 2021 e general availability a giugno 2022. È il primo deployment commerciale visibile di un GPT-3 derivato.

InstructGPT (Ouyang et al., gennaio 2022): GPT-3 ulteriormente addestrato con supervised fine-tuning su istruzioni umane, poi con RLHF (Reinforcement Learning from Human Feedback). Il modello risultante segue istruzioni in modo più affidabile, è meno tossico, allucina meno. Il paper “Training language models to follow instructions with human feedback” (arXiv:2203.02155) documenta che un InstructGPT da 1,3B parametri viene preferito da valutatori umani rispetto al GPT-3 originale da 175B nella maggior parte dei task. Il messaggio operativo è importante: l’allineamento via RLHF vale più dello scaling puro per molti use case.

ChatGPT (novembre 2022): InstructGPT ottimizzato per dialoghi multi-turn, con un’interfaccia chat consumer. L’esplosione di adozione di ChatGPT nel novembre-dicembre 2022 (un milione di utenti in cinque giorni, cento milioni in due mesi) catalizza l’interesse pubblico mainstream verso gli LLM. Il backbone del modello è ancora GPT-3.5, una variante di GPT-3 raffinata, e poi GPT-4 (marzo 2023). Vedi chatgpt-2022 (in preparazione, Parte I).

GPT-4 (marzo 2023), GPT-4o (maggio 2024), GPT-5 (2025-2026): la linea continua. I dettagli architetturali esatti dei modelli successivi non sono pubblicati in modo dettagliato (OpenAI è opaca dopo GPT-3), ma sono modelli decoder-only di scala maggiore, multimodal, con context window molto più grande e RLHF molto più sofisticato.

Chinchilla (Hoffmann et al., DeepMind, marzo 2022): non discende da GPT-3, ma riinterpreta criticamente le scaling laws di Kaplan. Il paper “Training Compute-Optimal Large Language Models” (arXiv:2203.15556) mostra che, per un budget fisso di compute, il rapporto ottimale fra parametri e dati non è quello assunto da Kaplan. GPT-3 è “sotto-allenato”: a 175 miliardi di parametri avrebbe avuto bisogno di vedere ~3500 miliardi di token, non 300. Il paper argomenta che Chinchilla (70B parametri, 1400B token, stesso compute totale di Gopher 280B) supera Gopher su quasi tutti i benchmark. La nuova ricetta “compute-optimal” diventerà standard, e tutti i modelli post-2022 (Llama, Mistral, Claude, GPT-4) seguono un rapporto parametri/dati più vicino a quello di Chinchilla. Vedi compute-optimal (in preparazione, Parte XI).

PaLM (Chowdhery et al., Google, aprile 2022): 540 miliardi di parametri, decoder-only, addestrato su corpus multilingua. Supera GPT-3 sui benchmark di reasoning. Introduce e popolarizza la famiglia Pathways di TPU. Successivo PaLM 2 (maggio 2023) raffina con tecniche di Chinchilla.

Llama (Touvron et al., Meta, febbraio 2023): famiglia di modelli decoder-only open weights, da 7B a 65B parametri. Llama 2 (luglio 2023) e Llama 3 (aprile 2024) consolidano l’open ecosystem. La filiazione architetturale da GPT-3 è esplicita nel paper. Vedi open-weights-2023-2024 (in preparazione, Parte I).

Claude (Anthropic, marzo 2023 e successivi): linea diretta di filiazione personale. Tom Brown (primo autore di GPT-3), Dario Amodei, Sam McCandlish, Jared Kaplan, Benjamin Mann, Nick Ryder e diversi altri coautori del paper GPT-3 fondano Anthropic nel 2021 e costruiscono Claude come continuazione metodologica del lavoro iniziato con GPT-3, con focus su safety e Constitutional AI. La linea Claude 1 → 2 → 3 → 3.5 → 4 → 4.5 → 4.6 → 4.7 (versioni 2024-2026) eredita scaling, decoder-only, RLHF.

Gemini (Google, dicembre 2023 e successivi): la risposta di Google alla famiglia GPT-4. Multimodal nativo, lunga linea da PaLM e dalla cultura Google AI / DeepMind unificata.

Sul piano della disciplina di pratica, GPT-3 è il punto in cui nasce il prompt engineering come attività riconosciuta. Prima di GPT-3 il termine “prompt” non era nel vocabolario standard del NLP: si parlava di input, di feature, di dataset annotato. Dopo GPT-3, “prompting” diventa una disciplina con blog post, paper di ricerca (zero-few-shot in preparazione, Parte XV), corsi, ruoli professionali. La disciplina si articola in sottocampi: chain-of-thought prompting (Wei et al. 2022), self-consistency (Wang et al. 2022), structured output, constraint prompting. Vedi prompt-anatomia e in-context-learning (in preparazione, Parte XV).

Sul piano dei limiti, molti dei problemi documentati nel paper GPT-3 originale sono ancora aperti nel 2026. La hallucination resta un problema centrale (vedi hallucination in preparazione, Parte XX): i modelli moderni allucinano meno di GPT-3 grazie a RLHF e a post-training mirato, ma il problema strutturale (un language model autoregressive predice la parola statisticamente più plausibile, non quella vera) non è risolto. La fragility del multi-step reasoning ha generato una linea di ricerca dedicata (chain-of-thought, tree-of-thought, test-time compute, modelli “thinking” come o1, o3, DeepSeek-R1; vedi ragionamento-2024-2026 in preparazione, Parte I). I bias di gender, race, religion documentati nel paper GPT-3 (sezioni 6.1-6.3) sono mitigati da RLHF e safety training nei modelli successivi, ma non eliminati.

Sul piano dell’infrastruttura di valutazione, GPT-3 lascia in eredità un set di benchmark che diventeranno standard per misurare i modelli successivi: TriviaQA, LAMBADA, SuperGLUE, HellaSwag, ARC, RACE, e poi MMLU (introdotto da Hendrycks et al. nel 2020 come risposta esplicita alla necessità di un benchmark più ambizioso che GPT-3 non saturasse). La saturazione progressiva dei benchmark vecchi e l’introduzione di benchmark più difficili è una dinamica che parte nel 2020 e prosegue ancora oggi. Vedi benchmark-llm (in preparazione, Parte XIX) per il dettaglio.

Sul piano della cultura di laboratorio, GPT-3 segna anche il momento in cui il numero di firme su un paper di language modeling industriale diventa una caratteristica accettata. Prima del 2020, paper di NLP a 5-10 autori erano la norma; GPT-3 a 31 autori normalizza la firma estesa. PaLM ne avrà 67, Gemini 1.0 oltre 100. La firma a 30+ persone diventa segnale che il lavoro non è di una piccola squadra di ricerca ma di un programma industriale che richiede infrastruttura, dataset, evaluation, safety, deployment come funzioni distinte. Da un punto di vista storiografico, il paper di GPT-3 è il primo caso visibile di questa transizione.

Il modello che il paper GPT-3 mette sul tavolo, e che la narrativa popolare semplifica come “scaling is all you need”, ha limiti operativi netti, ben documentati nello stesso paper, e miti di accompagnamento che la storiografia successiva ha smontato in modo argomentato.

GPT-3 produce affermazioni che hanno la forma di fatti ma sono inventate. Il paper dedica una sezione (5.4 “Misuse Potential”, insieme a 6 “Broader Impacts”) al problema, e include un mini-esperimento di Turing test su articoli di news generati: valutatori umani distinguono articoli di GPT-3 175B da articoli scritti da umani solo con accuracy del 52% (vicino al random 50%). Il fatto è notevole come capacità di generazione fluida, ma è una pessima notizia per chi vuole usare il modello per recuperare informazione affidabile.

Il problema strutturale è che un language model autoregressive è addestrato a massimizzare la verosimiglianza del prossimo token dato il prefisso. Verosimiglianza statistica non è verità. Il modello, di fronte a una query su un fatto che non sa, produce l’output statisticamente più plausibile, che spesso è una fabricazione coerente. Non c’è meccanismo interno di “non lo so”: il modello non sa cosa non sa.

Le mitigation moderne (RLHF per insegnare a dire “non lo so”, retrieval-augmented generation per ancorare l’output a documenti reali, calibration training per produrre confidence score affidabili) sono tutte sviluppate dopo GPT-3, e sono parziali. Il problema persiste nei modelli del 2026.

Il paper documenta in modo netto un crollo di performance dell’aritmetica oltre tre cifre. Addizione a due cifre: ~95% accuracy con GPT-3 175B few-shot. Tre cifre: ~80%. Quattro cifre: ~25%. Cinque cifre: vicino allo zero. Moltiplicazione anche peggio: a due cifre già sotto il 50%, oltre crolla.

Il pattern è coerente con l’idea che il modello sta ricostruendo dalla statistica del web, non eseguendo l’algoritmo. Il web contiene molti esempi di addizioni a due cifre (libri di scuola, esercizi); pochi a quattro cifre, quasi nessuno a otto. Il modello impara la statistica osservata, non la regola algoritmica.

Le mitigation moderne (chain-of-thought prompting che induce il modello a esplicitare i passaggi, tool use per delegare il calcolo a un calcolatore esterno, fine-tuning su dataset matematici sintetici) hanno alzato la soglia ma non hanno risolto. Il muro si è spostato, non è stato rotto.

Su task che richiedono diversi passaggi di inferenza concatenati (es. “Alice ha 3 mele, le da a Bob, Bob ne mangia 2, le restituisce a Alice, quante ne ha Alice?”), GPT-3 fallisce in modo sistematico. Il modello produce risposte plausibili ma sbagliate, con errori di accumulo lungo i passaggi. Il problema verrà parzialmente risolto da Wei et al. 2022 con chain-of-thought prompting (esplicitare i passaggi nel prompt), ma resterà uno dei limiti centrali fino all’introduzione di test-time compute scaling con o1 nel 2024 (vedi test-time-scaling in preparazione, Parte XII).

Il paper dedica le sezioni 6.1-6.3 a un’analisi estesa dei bias di gender, race, religion del modello. Esempi: associazioni di genere stereotipate (occupazioni come “engineer” associate a he/him con probabilità molto maggiore), associazioni di sentiment con gruppi religiosi e razziali. Gli autori riportano i numeri ma non risolvono: l’ammissione esplicita è che il modello eredita i bias del corpus di pre-training, e che il debiasing post-hoc è difficile.

Il paper “On the Dangers of Stochastic Parrots: Can Language Models Be Too Big?” di Emily Bender (linguista computazionale, University of Washington), Timnit Gebru (allora co-lead del team Ethical AI di Google, controversamente licenziata da Google a dicembre 2020 in disputa esplicita su questo paper), Angelina McMillan-Major e Margaret Mitchell, presentato a FAccT 2021, articola una critica strutturale a GPT-3 e a tutti i large language model dell’epoca. La tesi: questi modelli sono “stochastic parrots” che compongono pattern senza comprensione, eredità di bias non mitigabile, costo ambientale alto, opacità ai non-addetti, e che la corsa alla scala non risolve i problemi fondamentali. Il licenziamento di Gebru in disputa diretta su questo paper è uno degli eventi storiografici più discussi del periodo, e segna l’inizio di una tensione esplicita fra l’AI ethics academic community e i grandi laboratori industriali.

Il training di GPT-3 costa circa 4,6 milioni di dollari di compute, pubblicamente stimato. La cifra non include personale di ricerca (decine di researcher per mesi), infrastructure overhead, sviluppo iniziale di GPT-2 e GPT-1, ricerca in scaling laws. Il costo “tutto compreso” è probabilmente un ordine di grandezza superiore. Per contesto, è una cifra alla portata di poche organizzazioni al mondo nel 2020: i grandi laboratori (Google, Meta, Microsoft via OpenAI), pochi laboratori cinesi (BAAI, Baidu, Alibaba), nessun laboratorio accademico standalone.

L’inferenza non è gratuita. Servire un modello da 175B in produzione richiede GPU multiple per ogni replica (il modello non sta in una singola V100), latency budget significativo per ogni request, costi che si accumulano. Il pricing API di $0.06/1K token output per Davinci nel 2020-2021 riflette i costi reali. La cifra scenderà in modo netto negli anni successivi grazie a quantization, MoE, ottimizzazione di inferenza (vLLM, FlashAttention), e deflazione hardware, ma all’epoca era una barriera all’adozione.

Un limite operativo spesso sottovalutato è che GPT-3 non ha memoria fra una chiamata e l’altra. Ogni request all’API è uno stateless completion: il modello vede solo quello che gli arriva nel prompt corrente, niente di prima. Per costruire applicazioni con stato (un assistente che ricorda turni precedenti, un sistema che apprende dalle correzioni dell’utente) lo sviluppatore deve gestire la memoria lato client, includendo il contesto rilevante in ogni prompt successivo. Il context window di 2048 token è basso per questo scopo: una conversazione di poche decine di turni satura il budget.

Oltre alla mancanza di memoria di sessione, il modello non apprende online. I pesi sono fissati al momento del rilascio. Se il modello commette un errore, non si può correggerlo aggiornandolo: si può solo aggiungere istruzioni nel prompt che spostano il comportamento futuro all’interno del contesto. Il fine-tuning resta una opzione (l’API esporrà fine-tuning custom dal 2021), ma è una procedura batch, non online. Il pattern di “modello che migliora dall’uso” che il marketing AI promette è, per GPT-3 puro, non implementato. Le architetture di memoria a lungo termine che mitigheranno parzialmente il problema (MemGPT, Letta, vedi memory-architetture in preparazione, Parte XIV) arriveranno solo dal 2023.

OpenAI non rilascia i pesi di GPT-3. Non rilascia il codice di training. Non rilascia il dataset di pre-training (a parte descrizioni high-level). Rilascia solo l’API. La motivazione ufficiale è duplice: rischio di misuse (analogo all’argomento già usato per GPT-2 nel febbraio 2019, vedi bert-gpt-2018-2019) e modello commerciale (GPT-3 è il primo prodotto rivenduto da OpenAI tramite API, e il revenue è centrale per finanziare la ricerca successiva).

La community open source reagisce con un programma esplicito di replicazione. EleutherAI, collettivo di ricerca volontario coordinato su Discord, addestra e rilascia GPT-Neo (1.3B e 2.7B, marzo 2021), GPT-J 6B (giugno 2021), GPT-NeoX 20B (febbraio 2022). Nessuno raggiunge le dimensioni di GPT-3, ma tutti sono open weights. La famiglia BLOOM (BigScience, luglio 2022, 176B parametri multilingua, prima alternativa open ai 175B di GPT-3) chiude il gap di scala. Quando Meta rilascia Llama nel febbraio 2023, l’open ecosystem supera in pratica GPT-3 sia in qualità sia in disponibilità.

Mito 1: “GPT-3 capisce”. Il modello produce output che sembrano comprensione, ma il dibattito su cosa stia succedendo internamente resta aperto. Gary Marcus (psicologo cognitivo, autore di critiche ricorrenti al deep learning) e Ernest Davis (informatico, NYU) pubblicano nell’agosto 2020 “GPT-3, Bloviator”, un’analisi critica delle capacità reali di GPT-3 con esempi di errori sistematici di common sense. La tesi: il modello fluido produce output plausibili senza modello del mondo coerente. La controversia non si risolve, e molti sostengono ancora oggi posizioni opposte. Quello che è sicuro è che l’output di un LLM non implica comprensione nel senso filosofico (vedi cosa-significa-pensare, stanza-cinese-searle, symbol-grounding in preparazione, Parte II): è pattern matching scalato.

Mito 2: “le scaling laws di Kaplan sono leggi della fisica”. Sono leggi empiriche osservate in un setup specifico. Il paper Chinchilla del 2022 mostra che le costanti del fit di Kaplan erano sbilanciate dal modo in cui il setup di training era stato configurato (learning rate schedule, batch size scaling). Una rifit con setup diverso dà costanti diverse, e il rapporto compute-optimal fra parametri e dati cambia in modo sostanziale. Le scaling laws restano vere come pattern qualitativo (loss continua a scendere), ma le costanti specifiche sono empiriche e contesto-dipendenti.

Mito 3: “few-shot ha eliminato il fine-tuning”. Falso. Few-shot vince sui benchmark generali ma il fine-tuning resta utile per task specifici dove serve domain knowledge denso, vocabolario specialistico, format di output rigido, o budget di context window limitato. La pratica industriale del 2026 combina entrambi: prompting per casi generali, fine-tuning leggero (LoRA, QLoRA, vedi lora-peft in preparazione, Parte XI) per casi specializzati. Inoltre InstructGPT e RLHF sono fine-tuning, e sono il post-training centrale dei modelli moderni.

Mito 4: “le emergent abilities sono fasi transitions reali”. Schaeffer, Miranda, Koyejo nel paper “Are Emergent Abilities of Large Language Models a Mirage?” (NeurIPS 2023, arXiv:2304.15004) argomentano che molte delle “phase transition” osservate da GPT-3 e da modelli successivi sono artifatti della scelta della metrica. Metriche discontinue (accuracy, exact match) producono salti netti; metriche continue (token-level log-loss, BLEU graduale) mostrano miglioramento liscio. Il dibattito non è chiuso: alcune capacità sembrano davvero appiattite a piccola scala e ripide a grande scala anche con metriche continue. Ma la versione semplificata “GPT-3 ha sbloccato magicamente nuove capacità a 175B” è tecnicamente fragile.

Mito 5: “175 miliardi di parametri sono il numero magico”. Numero specifico al setup OpenAI del 2020. Modelli successivi a Chinchilla-style hanno parametri inferiori (Llama 65B, Claude 3 Sonnet di taglia simile, Mistral 7B per molti use case sufficiente) e performance comparabili o migliori su molti benchmark. Il numero dei parametri è una misura grezza e parziale.

Mito 6: “GPT-3 è un AGI”. Affermazione fatta in modo entusiastico da alcuni commentatori al lancio (giugno-settembre 2020), e respinta esplicitamente sia da OpenAI sia dal paper. Il paper non usa la parola AGI nel testo principale. GPT-3 è un language model di scala notevole con capacità di in-context learning sorprendenti per il suo tempo, ma manca di tutte le caratteristiche associate ad AGI nelle definizioni più articolate (vedi agi-definizioni in preparazione, Parte II): autonomia, persistenza di obiettivi, capacità di ragionare su piani lunghi, modello del mondo coerente, capacità di acquisire competenze in nuovi domini in modo robusto. Gary Marcus articola questa critica in modo esplicito già nell’agosto 2020 e la posizione resta sostanzialmente valida nei modelli che ne discendono direttamente.

  • transformer-2017 — l’architettura di base. GPT-3 è transformer decoder-only scaled up, niente cambia di sostanza dal blocco originale di Vaswani et al. del 2017.
  • bert-gpt-2018-2019 — i predecessori diretti GPT-1 e GPT-2, e la separazione del bivio decoder-only vs encoder-only. GPT-3 è la continuazione naturale della linea decoder-only.
  • word2vec-2013 — l’origine concettuale degli embedding distribuzionali. La semantica distribuzionale che GPT-3 sfrutta in modo enormemente più ricco discende dall’idea articolata da Firth e operazionalizzata da Mikolov.
  • seq2seq-2014 — il paradigma encoder-decoder per la generazione di sequenze, di cui il decoder-only autoregressive è una semplificazione.
  • chatgpt-2022 (in preparazione, Parte I) — la consumerizzazione della linea GPT-3, e l’evento mediatico che porta gli LLM nel mainstream.
  • scaling-era-2023 (in preparazione, Parte I) — la corsa post-GPT-3: GPT-4, Claude, Gemini, e il consolidamento del paradigma scaling + RLHF.
  • instruction-rlhf-era (in preparazione, Parte I) — InstructGPT e RLHF come post-training standard. La svolta che separa GPT-3 puro dai modelli usabili in produzione.
  • scaling-laws (in preparazione, Parte XI) — la formulazione formale di Kaplan, le rifit di Chinchilla, le successive raffinazioni.
  • compute-optimal (in preparazione, Parte XI) — la lezione di Chinchilla: parametri e dati vanno scalati insieme. Correzione critica all’impostazione di GPT-3.
  • pretraining-dati (in preparazione, Parte XI) — fonti, filtraggio, deduplicazione del corpus di pre-training. La sezione data di GPT-3 è uno dei riferimenti operativi standard.
  • emergent-abilities (in preparazione, Parte XI) — il dibattito Schaeffer-Miranda-Koyejo e le interpretazioni alternative del fenomeno osservato in GPT-3.
  • prompt-anatomia (in preparazione, Parte XV) — la disciplina del prompt engineering, di cui GPT-3 è l’origine operativa.
  • in-context-learning (in preparazione, Parte XV) — cosa sappiamo dell’ICL meccanicamente, oltre la formulazione operativa di GPT-3.
  • zero-few-shot (in preparazione, Parte XV) — la trinità zero/one/few-shot codificata da GPT-3 e i pattern di prompting che ne discendono.
  • hallucination (in preparazione, Parte XX) — il problema strutturale documentato già in GPT-3 e ancora aperto nel 2026.
  • mech-interp-intro (in preparazione, Parte IX) — i tentativi di capire meccanicamente cosa succede dentro GPT-3 e nei modelli successivi durante l’in-context learning.
  • Brown T.B. et al., “Language Models are Few-Shot Learners”, NeurIPS 2020, arXiv:2005.14165, maggio 2020. Il paper originale di GPT-3. 75 pagine, denso ma ben scritto. Da leggere almeno: introduzione, sezione 2 (Approach), sezione 3 (Results) per i benchmark principali, sezione 6 (Broader Impacts) per la discussione di bias e misuse. La sezione 4 sull’evaluation contamination è anch’essa metodologicamente importante.
  • Kaplan J. et al., “Scaling Laws for Neural Language Models”, arXiv:2001.08361, gennaio 2020. Il paper che giustifica empiricamente il salto di scala di GPT-3. Le formule precise delle leggi di potenza, i fit, l’analisi di sample efficiency. Da leggere prima del paper GPT-3 per capire la motivazione.
  • Hoffmann J. et al., “Training Compute-Optimal Large Language Models” (Chinchilla), NeurIPS 2022, arXiv:2203.15556. La correzione critica alle scaling laws di Kaplan. Da leggere per capire perché molti modelli post-2022 hanno parametri inferiori a GPT-3 ma performance superiori.
  • Bender E.M., Gebru T., McMillan-Major A., Mitchell M., “On the Dangers of Stochastic Parrots: Can Language Models Be Too Big?”, FAccT 2021. La critica strutturale a GPT-3 e ai LLM grandi. Da leggere per capire il dibattito etico e ambientale che il modello apre.
  • Ouyang L. et al., “Training language models to follow instructions with human feedback” (InstructGPT), NeurIPS 2022, arXiv:2203.02155. Come GPT-3 viene trasformato in modello allineato che diventa la base di ChatGPT. Da leggere per capire perché RLHF è centrale.
  • Chen M. et al., “Evaluating Large Language Models Trained on Code” (Codex), arXiv:2107.03374, luglio 2021. La specializzazione di GPT-3 sul codice. Introduce HumanEval e powers GitHub Copilot.
  • Schaeffer R., Miranda B., Koyejo S., “Are Emergent Abilities of Large Language Models a Mirage?”, NeurIPS 2023, arXiv:2304.15004. La critica metodologica al concetto di emergent abilities articolato in GPT-3 e successivi.
  • Marcus G., Davis E., “GPT-3, Bloviator: OpenAI’s language generator has no idea what it’s talking about”, MIT Technology Review, agosto 2020. La critica ai limiti di common sense e reasoning di GPT-3, articolata in modo accessibile e con esempi concreti.
  • Heim L., “Estimating PaLM’s training cost”, blog post 2022. Ricostruzioni dettagliate del costo di training di GPT-3 e modelli simili, con metodologia trasparente. Riferimento standard per le cifre di compute pubbliche.
  • EleutherAI, sito e Discord. La documentazione del processo di replicazione open source di GPT-3 da parte della community: GPT-Neo, GPT-J, GPT-NeoX, e il context per capire cosa significhi “replicare un LLM grande” senza il budget di OpenAI.
  • Wei J. et al., “Emergent Abilities of Large Language Models”, TMLR 2022, arXiv:2206.07682. Il paper che codifica formalmente il concetto di “emergent abilities” osservato in GPT-3 e nei suoi successori. Da leggere insieme al paper di Schaeffer 2023 sopra per il dibattito completo.
  • Wei J. et al., “Chain-of-Thought Prompting Elicits Reasoning in Large Language Models”, NeurIPS 2022, arXiv:2201.11903. La tecnica di prompting che mitiga la fragility del multi-step reasoning di GPT-3 e successori. Estende e perfeziona il paradigma di few-shot prompting introdotto da GPT-3.
  • OpenAI blog, “OpenAI API”, comunicato 11 giugno 2020. Annuncio originale dell’API di GPT-3. Per il contesto storiografico del lancio commerciale, leggere insieme al post Microsoft del 22 settembre 2020 sull’acquisto dei diritti esclusivi.
  • Child R., Gray S., Radford A., Sutskever I., “Generating Long Sequences with Sparse Transformers”, arXiv:1904.10509, 2019. Il paper che descrive la sparse attention pattern usata nei layer dispari di GPT-3. Utile per capire l’ottimizzazione di compute che rende fattibile il training a 175B parametri.
  • Hendrycks D. et al., “Measuring Massive Multitask Language Understanding” (MMLU), ICLR 2021, arXiv:2009.03300. Il benchmark introdotto come risposta esplicita alla saturazione progressiva dei benchmark precedenti da parte di GPT-3 e successori. Diventerà uno dei riferimenti standard per misurare i modelli post-2020.