Mixtral of Experts (2024): il mixture-of-experts open

A gennaio 2024 Mistral pubblica un modello da 47 miliardi di parametri che al momento di rispondere ne accende solo 13. Il trucco è vecchio — mixture of experts — ma qui arriva con i pesi aperti e licenza Apache 2.0.

Quando un modello linguistico genera una parola, di solito paga per intero: ogni singolo parametro della rete partecipa al calcolo, che la domanda sia banale o difficile. È il motivo per cui i modelli grandi sono lenti e costosi da far girare — non perché «pensino di più», ma perché muovono tutti i loro pesi a ogni token. Il paper Mixtral of Experts, firmato da Albert Q. Jiang e altri venticinque autori del laboratorio francese Mistral e messo su arXiv l’8 gennaio 2024, prende questa assunzione e la incrina: costruisce una rete da 47 miliardi di parametri che, per produrre ogni parola, ne attiva soltanto 13. Il resto resta spento, in attesa del suo turno.

Cosa vuol dire «mixture of experts»

L’idea non è nuova — circolava nella letteratura da anni — ma vale la pena spiegarla senza gergo. In un transformer classico, ogni strato contiene un blocco chiamato feedforward: una piccola rete che elabora la rappresentazione di ogni token. In Mixtral quel singolo blocco viene sostituito da otto blocchi paralleli, chiamati esperti. A ogni strato, per ogni token, non si usano tutti e otto: se ne scelgono due.

L’analogia più onesta è il triage di un pronto soccorso. Quando arrivate, non vi fanno visitare da tutti i medici dell’ospedale: un infermiere all’accettazione guarda il caso e vi indirizza ai due specialisti giusti. Gli altri reparti restano dove sono, disponibili per il prossimo paziente. Il costo di una visita non dipende da quanto è grande l’ospedale, ma da quanti medici vi vedono davvero. Mixtral funziona così: l’ospedale è enorme (47 miliardi di parametri), ma ogni token ne «visita» solo una frazione.

Il router: due esperti su otto

Il pezzo che fa il triage si chiama router (o gating network). È una piccola funzione, addestrata insieme al resto, che per ogni token guarda la sua rappresentazione corrente e assegna un punteggio agli otto esperti. Vengono scelti i due col punteggio più alto; le loro uscite vengono combinate, pesate secondo quei punteggi. Gli altri sei esperti, per quel token, non fanno nulla.

Un dettaglio che il paper sottolinea, e che è bene non romanticizzare: la parola «esperti» è fuorviante. Non sono specialisti tematici — non c’è l’esperto di matematica e quello di poesia. Analizzando quali token finiscono a quali esperti, gli autori non trovano una specializzazione per argomento; la scelta del router sembra guidata più da aspetti sintattici e posizionali che dal contenuto, con token vicini spesso mandati allo stesso esperto. È una precisazione che smonta l’immagine intuitiva ma rende il meccanismo più interessante: l’instradamento è una struttura che il modello si è costruito da solo, non una tassonomia che gli abbiamo imposto.

Quarantasette miliardi che ne costano tredici

Qui sta il punto economico, ed è il motivo per cui questo paper conta. Un modello ha due misure che di solito coincidono e che il mixture of experts separa. La prima è quanti parametri deve tenere in memoria: Mixtral ne ha 47 miliardi, e tutti vanno caricati, perché non sai in anticipo quali esperti servirà token per token. La seconda è quanti parametri effettivamente calcola per ogni parola: qui sono solo 13 miliardi, i due esperti scelti più la parte condivisa della rete.

La conseguenza pratica è netta. La velocità di inferenza e il costo per token seguono la seconda misura, non la prima: Mixtral risponde con la rapidità e la spesa di calcolo di un modello da 13 miliardi, pur avendo la «conoscenza» distribuita di uno molto più grande. Paghi la memoria di un modello grande, ma il conto della bolletta di uno piccolo. È un compromesso preciso, non un pasto gratis: se sei limitato dalla RAM della tua GPU, i 47 miliardi restano un problema; se sei limitato dalla velocità e dal costo di generazione, il vantaggio è reale.

Il mixture of experts scinde due numeri che credevamo inseparabili: quanto un modello sa e quanto costa ogni volta che risponde.

Un token, otto esperti, due accesi token router sceglie 2 esperto 2 ● esperto 3 esperto 4 esperto 5 ● esperto 6 esperti 7 · 8 · 1 + 47 mld in memoria — 13 mld calcolati per token pesi aperti · Apache 2.0

Il token attraversa il router, che tra gli otto esperti dello strato ne accende due (in terracotta) e lascia spenti gli altri sei (grigio). Le uscite dei due scelti vengono combinate (nodo ocra). Il modello tiene in memoria tutti i 47 miliardi di parametri, ma ne calcola solo 13 per ogni parola. I pesi sono pubblici, rilasciati con licenza Apache 2.0.

Cosa dicono i numeri

Il paper misura Mixtral 8x7B contro i modelli aperti del momento e alcuni chiusi. Il risultato dichiarato è che eguaglia o supera Llama 2 70B — cinque volte più grande nei parametri attivi — e regge il confronto con GPT-3.5 su gran parte dei benchmark, con un vantaggio marcato su matematica, generazione di codice e compiti multilingue. La finestra di contesto è di 32.000 token. Nella versione istruita, Mixtral 8x7B Instruct, gli autori riportano che nei confronti su preferenze umane il modello si colloca davanti a GPT-3.5 Turbo, Claude-2.1, Gemini Pro e Llama 2 70B-chat.

Vanno letti con la cautela di sempre: sono benchmark scelti e riportati dal laboratorio che ha costruito il modello, e le classifiche su preferenze umane dipendono da come si conduce il test. Il dato robusto, indipendente dal marketing, è quello architetturale: una qualità paragonabile a modelli molto più costosi da servire, ottenuta accendendo meno di un terzo dei parametri.

Pesi aperti, e perché è la notizia vera

La parte che ha avuto più conseguenze non è un numero ma una scelta di licenza. Mistral ha rilasciato i pesi di Mixtral sotto Apache 2.0: chiunque può scaricarli, ispezionarli, modificarli, farne fine-tuning e usarli commercialmente, senza le clausole restrittive di altri rilasci «aperti» del periodo. Fino a quel momento, l’architettura mixture of experts era soprattutto un’arma dei laboratori chiusi — si sospettava, senza conferme, che alcuni modelli commerciali la usassero. Con Mixtral la ricetta diventa pubblica e riproducibile.

Per chi costruisce sistemi, questo cambia il calcolo: un modello di qualità alta che gira sul proprio hardware, senza mandare dati a un fornitore esterno, con la libertà di adattarlo. Per l’ecosistema italiano ed europeo, un laboratorio francese che pubblica pesi competitivi con licenza permissiva è anche un fatto industriale, non solo tecnico.

Perché riguarda anche te

Se usi le API di un modello e paghi al token, il mixture of experts è la ragione tecnica per cui alcuni modelli «grandi» costano sorprendentemente poco: dietro le quinte ne stanno accendendo solo una parte. E quando leggi che un modello ha «un certo numero di parametri», ora sai che quel numero da solo dice poco sulla velocità e sul costo: quello che conta all’inferenza sono i parametri attivi. È la stessa distinzione che separa quanto sa un’organizzazione da quante persone servono davvero per rispondere a una singola email. Capirla ti mette in condizione di leggere le schede tecniche dei modelli senza confondere la stazza con il conto da pagare.

Il paper

Albert Q. Jiang et al. (Mistral AI), Mixtral of Experts, arXiv, gennaio 2024. Disponibile su arXiv: arxiv.org/abs/2401.04088. I pesi del modello sono rilasciati con licenza Apache 2.0. Il lavoro estende l’architettura del precedente Mistral 7B (arXiv:2310.06825) sostituendo i blocchi feedforward con otto esperti e un router che ne seleziona due per token.

I commenti sono riservati agli iscritti.

Accedi per commentare