Transformers documentation

HIGGS

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

HIGGS

HIGGS est un algorithme de quantification zero-shot qui combine un prétraitement de Hadamard avec des grilles de quantification optimales par MSE afin d’obtenir une erreur de quantification plus faible et des performances de pointe.

La prise en charge de HIGGS au moment de l’exécution est assurée par la bibliothèque FLUTE. Seules les variantes 70B et 405B de Llama 3 et Llama 3.0, ainsi que les variantes 8B et 27B de Gemma 2, sont actuellement prises en charge. HIGGS ne prend pas non plus en charge, pour le moment, l’entraînement quantifié ni les passes arrière en général.

Exécutez la commande ci-dessous pour installer FLUTE.

CUDA 12.1
CUDA 11.8
pip install flute-kernel

Créez un HiggsConfig avec le nombre de bits pour quantiser un modèle.

from transformers import AutoModelForCausalLM, AutoTokenizer, HiggsConfig

model = AutoModelForCausalLM.from_pretrained(
    "google/gemma-2-9b-it",
    quantization_config=HiggsConfig(bits=4),
    device_map="auto",
)

Retrouvez les modèles pré-quantifiés avec HIGGS dans la collection officielle d’ISTA-DASLab.

torch.compile

HIGGS est entièrement compatible avec torch.compile.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, HiggsConfig

model = AutoModelForCausalLM.from_pretrained(
    "google/gemma-2-9b-it",
    quantization_config=HiggsConfig(bits=4),
    device_map="auto",
)

model = torch.compile(model)

Reportez-vous au tableau ci-dessous pour un benchmark des passes avant/sec pour Llama-3.1-8B-Instruct sur une RTX4090.

Taille du lotBF16 (avec torch.compile)HIGGS 4 bits (sans torch.compile)HIGGS 4 bits (avec torch.compile)
15941124
45742123
165641120
Update on GitHub