Un contributeur a ajouté le support natif de `nemotron_h_puzzle` à mlx-lm via la PR #1535, permettant au modèle Nemotron Puzzle 75B de s'exécuter sur un M2 Max 64 Go. Le travail a consisté à corriger le support de la configuration par blocs, le remappage des tenseurs et l'alignement du comportement de la norme/du routeur FP32 de NVIDIA.

  • La quantification des experts en 4 bits (avec des couches denses en 6 bits et une tête de sortie BF16) utilise une taille de point de contrôle de 42,03 GiB et atteint un pic de mémoire de 49,68 Go.
  • La configuration 4 bits atteint une vitesse moyenne de génération de 14,27 tok/s, comparée à 10,53 tok/s pour la variante 5 bits.
  • Les vérifications locales des tâches ont obtenu 24/30 pour le 4 bits contre 21/30 pour le 5 bits, tandis que la récupération de contexte long était de 4/5 contre 0/5.
  • Un bug causant des écarts dans la sortie SSM de la première couche a été résolu en alignant la limite de promotion BF16 vers FP32 de NVIDIA, améliorant la similarité cosinus à 0,999998.
  • La tête de sortie BF16 est obligatoire ; quantifier lm_head à vocabulaire de 131k en 4 bits a produit des répétitions de déchets.

L'auteur note que le point de contrôle 5 bits s'exécute près du plafond mémoire de 64 Go, suggérant que des configurations avec plus de mémoire pourraient donner des résultats différents.