Il rapporto tecnico di @Meituan_LongCat LongCat-Flash è incredibilmente buono e pieno di novità. Il modello è un MoE passivo da 560B e attivo da ~27B con un numero adattivo di parametri attivi a seconda del contesto grazie all'esperto Zero-Computational. 1) Nuova architettura > I layer hanno 2 blocchi di attenzione e sia FFN che MoE, in questo modo puoi sovrapporre i 2 coms all-to-all. (è solo 28 layer ma devi tenere conto dei 2 blocchi di attenzione). > Aggiungono l'esperto zero-computational che i token possono scegliere e non fare nulla, un po' come un "sink" per token facili. > Per il bilanciamento del carico, hanno una perdita ausiliaria simile a dsv3 libera per impostare la media reale/falsa dell'esperto per token. Applicano un programma di decadimento a questo aggiornamento del bias. Fanno anche controllo del bilanciamento delle perdite. 2) Scalabilità > Hanno apportato modifiche a MLA/MoE per avere allineamento della varianza all'inizio. I guadagni sono piuttosto impressionanti nella Figura 5, ma non so fino a che punto questo abbia impatto in seguito. > L'iniziale crescita del modello è piuttosto interessante, prima addestrano un modello 2x più piccolo e poi "quando è addestrato a sufficienza" (un po' poco chiaro qui quanti B token) iniziano il modello finale semplicemente impilando i layer del modello più piccolo. > Hanno utilizzato il paper di @_katieeverett @Locchiu e al. per avere il trasferimento degli iperparametri con SP invece di muP per il modello 2x più piccolo ig. 3) Stabilità > Monitorano il rapporto del norm del gradiente e la similarità coseno tra esperti per regolare il peso della perdita di bilanciamento del carico (raccomandano un rapporto del norm del gradiente <0.1). > Per evitare attivazioni elevate, applicano una z-loss allo stato nascosto, con un coefficiente piuttosto piccolo (un'altra alternativa a qk-clip/norm). > Impostano epsilon di Adam a 1e-16 e mostrano che deve essere inferiore all'intervallo RMS del gradiente. 4) Altro > Addestrano su 20T token per la fase 1, "molti T di token" per l'addestramento intermedio su dati STEM/code (70% della miscela), 100B per l'estensione del contesto lungo senza yarn (80B per 32k, 20B per 128k). I documenti a lungo contesto rappresentano il 25% della miscela (non sono sicuro se sia % di documenti o token, il che cambia molto qui). > La pipeline di dati di pre-addestramento è estrazione del contesto, filtraggio della qualità, dedup. > Bella appendice dove mostrano di confrontare top_k necessari per diversi benchmark (MMLU più alto con 8.32, GSM8K più basso con 7.46). Confrontano anche l'allocazione dei token nei layer profondi/shallow. > Rilasciano due nuovi benchmark Meeseeks (multi-turn IF) e VitaBench (scenario aziendale reale). > Molti dettagli nell'infrastruttura/inferenza con informazioni sull'accettazione del decoding speculativo, quantizzazione, distribuzione, ottimizzazione del kernel, sovrapposizione dei coms, ecc. > Elenco dei diversi documenti rilevanti nel thread 🧵
82,24K