Description
Intel® Neural Compressor est une puissante bibliothèque Python open-source conçue pour améliorer les performances des modèles d'apprentissage profond grâce à diverses techniques de compression. Elle s'intègre de manière transparente avec les frameworks courants tels que PyTorch, TensorFlow et JAX, ce qui en fait un outil polyvalent pour les développeurs et les chercheurs.
La bibliothèque fournit une suite complète de méthodes de compression de modèles, notamment la quantification statique, la quantification dynamique, SmoothQuant, la quantification par poids uniquement, l'entraînement conscient de la quantification et la précision mixte. Une capacité clé est son support pour la quantification avancée des grands modèles de langage (LLM) et des modèles vision-langage (VLM) tels que LLaMA, Qwen et DeepSeek, en tirant parti de l'intégration avec AutoRound pour des types de données à faible précision optimisés.
Intel® Neural Compressor est conçu pour une large compatibilité matérielle. Il offre des tests et un support étendus pour une large gamme de matériels Intel, y compris les accélérateurs IA Intel Gaudi, les processeurs Intel Core Ultra, les processeurs Intel Xeon Scalable, les processeurs Intel Xeon CPU Max Series, les GPU Intel Data Center GPU Flex Series et les GPU Intel Data Center GPU Max Series. De plus, il offre un support de test limité pour les CPU AMD, les CPU ARM et les GPU NVIDIA.
La documentation de la bibliothèque détaille les procédures d'installation pour différents frameworks et matériels. Les utilisateurs peuvent installer le Neural Compressor avec des dépendances de framework spécifiques via pip, telles que `neural-compressor-pt` pour PyTorch ou `neural-compressor-tf` pour TensorFlow. Pour JAX, une méthode d'installation par compilation à partir des sources est disponible. La documentation comprend également des guides de démarrage rapide avec des exemples de code pour des techniques telles que la quantification FP8 sur les accélérateurs IA Intel Gaudi2 et le chargement de LLM par poids uniquement.
Les mises à jour récentes mettent en évidence le support expérimental de la quantification FP8 dans Keras/JAX, la quantification statique du cache KV FP8/Attention avec AutoRound, et la quantification NVFP4/MXFP4. Le projet encourage activement les contributions et les collaborations, avec des directives claires pour les rapports de bugs, les demandes de fonctionnalités et les idées de recherche via les problèmes GitHub et par e-mail.
Fonctionnalités principales de Intel® Neural Compressor
Prend en charge les frameworks PyTorch, TensorFlow et JAX
Offre la quantification statique, la quantification dynamique, SmoothQuant, la quantification par poids uniquement
Permet l'entraînement conscient de la quantification et la précision mixte
Quantification avancée pour les LLM et VLM (par exemple, LLaMA, Qwen)
Intégration avec AutoRound pour des types de données à faible précision optimisés
Support étendu pour le matériel Intel (Gaudi, Xeon, Core Ultra, GPU de centre de données)
Support limité pour les CPU AMD, CPU ARM et GPU NVIDIA
Support expérimental de la quantification FP8 pour Keras/JAX
Quantification statique expérimentale du cache KV FP8/Attention
Support expérimental de la quantification NVFP4 et MXFP4
Chargement de grands modèles de langage par poids uniquement
Premiers pas avec Intel® Neural Compressor
Installer les dépendances du framework : Choisissez et installez les packages nécessaires en fonction de votre environnement de déploiement (par exemple, `pip install neural-compressor-pt`).
Configurer la quantification : Définissez les configurations de quantification, telles que FP8Config, pour votre modèle.
Préparer le modèle : Utilisez la fonction `prepare` pour intégrer les configurations de quantification dans votre modèle.
Convertir le modèle : Appliquez la fonction `convert` pour finaliser la compression du modèle.
Déployer et optimiser : Intégrez le modèle compressé dans votre application pour améliorer les performances d'inférence.
Cas d'utilisation de Intel® Neural Compressor
- Quantification LLM
- Optimisation VLM
- Accélération Matérielle
- Intégration de Framework
- Optimisation des Performances
- Entraînement en Précision Mixte



