Files
QuantTensor/README.md
T
2026-09-09 15:02:15 +02:00

2.0 KiB

Bibliothèque pour l'utilisation de systèmes quantifiés (avec déquant à la volée) pour PyTorch.

Fonctions principales (attendues) :

  • Kernels de Quant/DeQuant pour GPU
  • GEMM (avec backward) en Q4_1 (plus tard d'autres quant)
  • Optimiseurs avec APIs adaptées, agnostiques à la quant
  • SGD custom avec compression géométrique 2 bits/poids

Avancement/roadmap :

  • Apprentissage de Triton en profondeur
  • Système de détection du matériel au premier démarrage dans l'env
  • Kernels de Quant/DeQaunt en Q4_1
  • GEMM fussionnée avec une DeQuant depuis Q4_1
  • Réécriture de AdamW avec les API des quant pour update des poids et autres
  • optionnel : Réécriture de Muon avec les APIs de quant (plus adapté pour les LLM)
  • Implémentation d'embedding et autres composants utiles aux LLM
  • Ajout FP8 pour les calculs des kernels
  • Implémentation du SGD avec compression géometrique (2 bits/poids)
  • optionnel : Post-entraînement d'un Qwen3 0.6b/1.7b en Q4_1 + calculs en FP8 (ou FP16) + SGD 2bits (sur une RTX 4080)

Ce dernier point validera tout, avant de passer à la suite, l'ajout des quantifications se fera après (Q2_K en premier).

Détails importants :

  • La quantficiation Q4_1 est exactement la même que dans llama.cpp en implémentation 1:1 pour permettre pré/post entraînement directement en quantification.

  • Les kernels de fused-GEMM font une GEMM traditionnelle mais où le chargement des données (pointeurs I/J) se fait avec déquantification immédiate avant la dot (peut changer de logique). Les activations (ReLU, ReLU² et autres, sauf Softmax) ne seront pas codées pour le moment.

  • Une implémentation dans un moteur d'inférence compatible (ex: vLLM) n'est pas du tout prévue et l'objectif n'est pas d'entraîner des modèles mais seulement de développer les outils.

  • Un papier sur le SGD 2bits/poids est prévu en utilisant des principes de corrections géométriques dans le temps....


readme v1.1