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는 Hadamard 전처리와 MSE-Optimal 양자화 그리드를 결합하여 양자화 오류를 낮추고 최첨단 성능을 달성하는 zero-shot 양자화 알고리즘입니다.

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에서 forward passes/sec 벤치마크는 아래 표를 참조하세요.

배치 크기BF16(torch.compile 사용)HIGGS 4bit(torch.compile 없음)HIGGS 4bit (torch.compile 사용)
15941124
45742123
165641120
Update on GitHub