SmallThinker : Une famille de modèles de langage à grande échelle efficaces entraînés nativement pour le déploiement local

Alors que les modèles de langage à grande échelle (LLM) de pointe continuent d'élargir les limites des capacités, leur déploiement reste limité à l'infrastructure cloud équipée de GPU. Nous remettons en question ce paradigme avec SmallThinker, une famille de LLM conçus nativement — et non adaptés — pour les contraintes spécifiques des appareils locaux : puissance de calcul faible, mémoire limitée et stockage lent. Contrairement aux approches traditionnelles qui se concentrent sur la compression de modèles existants conçus pour les cloud, nous concevons SmallThinker de manière originale, afin qu'il puisse fonctionner efficacement dans ces limites. Notre innovation réside dans une architecture consciente du déploiement, qui transforme les contraintes en principes de conception. Premièrement, nous introduisons une structure à deux niveaux combinant un Mixture-of-Experts (MoE) à granularité fine avec des réseaux de neurones à propagation avant sparse, réduisant ainsi considérablement les exigences en termes de calcul sans sacrifier la capacité du modèle. Deuxièmement, pour surmonter le goulot d'étranglement des E/S lié au stockage lent, nous concevons un routeur pré-attention qui permet à notre moteur d'inférence co-conçu de précharger les paramètres des experts depuis le stockage pendant le calcul des attention, masquant efficacement la latence du stockage qui pourrait autrement entraver l'inférence en local. Troisièmement, pour optimiser l'efficacité de la mémoire, nous utilisons un mécanisme hybride de attention sparse NoPE-RoPE afin de réduire fortement les besoins en cache KV. Nous proposons SmallThinker-4B-A0.6B et SmallThinker-21B-A3B, qui atteignent des scores de performance de pointe et surpassent même certains LLM plus volumineux. Notamment, notre système co-conçu élimine presque entièrement le besoin de matériel GPU coûteux : avec une quantification Q4_0, les deux modèles dépassent 20 tokens/s sur des processeurs de consommation ordinaires, tout en consommant respectivement 1 Go et 8 Go de mémoire. SmallThinker est accessible publiquement sur hf.co/PowerInfer/SmallThinker-4BA0.6B-Instruct et hf.co/PowerInfer/SmallThinker-21BA3B-Instruct.