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.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

HIGGS

HIGGSは、Hadamard前処理とMSE最適量子化グリッドを組み合わせることで、量子化誤差を低減し、最先端の性能を実現するゼロショット量子化アルゴリズムです。

HIGGSのランタイムサポートは、FLUTEライブラリを通じて実装されています。現在サポートされているのは、Llama 3およびLlama 3.0の70Bと405Bバリアント、ならびにGemma 2の8Bと27Bバリアントのみです。また、HIGGSは現在、量子化されたトレーニングおよびバックワードパスを一般にサポートしていません。

FLUTEをインストールするには、以下のコマンドを実行してください。

CUDA 12.1
CUDA 11.8
pip install flute-kernel

モデルを量子化するためのビット数を指定して、HiggsConfig を作成します。

from transformers import AutoModelForCausalLM, AutoTokenizer, HiggsConfig

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

HIGGSで事前量子化されたモデルは、ISTA-DASLabの公式コレクションでご利用いただけます。

torch.compile

HIGGS は 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)

Llama-3.1-8B-Instruct を RTX4090 で実行した場合のフォワードパス/秒のベンチマークについては、以下の表を参照してください。

バッチサイズBF16(torch.compileを使用)HIGGS 4bit(torch.compileなし)HIGGS 4bit(torch.compileを使用)
15941124
45742123
165641120
Update on GitHub