Transformers documentation

FP-Quant

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

FP-Quant

FP-Quant, Nvidia GPU'ların Blackwell nesli için tasarlanmış bir kuantizasyon algoritması ailesidir. Amaç, LLM'lerin MXFP4 ve NVFP4 veri türlerinde verimli bir şekilde eğitim sonrası kuantizasyon (PTQ) ve kuantizasyon farkında eğitim (QAT) yapılabilmesini sağlamaktır.

Bu entegrasyon, Bridging the Gap Between Promise and Performance for Microscaling FP4 Quantization ön baskısının ön baskısı ile birlikte sunulmaktadır.

Şu anda yalnızca QAT, pseudoquantization=True ile desteklenmektedir. Modeller, quantization_config=FPQuantConfig() ile anlık olarak kuantize edilebilir:

from transformers import AutoModelForCausalLM, AutoTokenizer, FPQuantConfig
import torch

model = AutoModelForCausalLM.from_pretrained(
    "qwen/Qwen3-8B",
    quantization_config=FPQuantConfig(),
    device_map="auto",
    dtype=torch.bfloat16,
)

veya daha iyi kalite için GPTQ ile ön işlenmiş (bkz. FP Format Quantization Harness).

FPQuantConfig(forward_dtype="mxfp4") ile MXFP4 ve NVFP4 arasında seçim yapabilirsiniz. NVFP4 daha iyi kalite sağlar ancak biraz daha fazla bellek kullanır.

Çekirdeklerin çalıştırılması için Blackwell nesli bir GPU gereklidir. FP-Quant için çalışma zamanı desteği, QuTLASS kütüphanesi ve hafif bir PyTorch arayüzü olan fp_quant kütüphanesi aracılığıyla sağlanmaktadır. Öncülün kaynaktan kurulmasını, sonuncunun ise pip install fp_quant ile kurulmasını öneririz.

Blackwell nesli bir GPU'su olmayan kullanıcılar, QuTLASS kurmak zorunda kalmadan quantization_config=FPQuantConfig(pseudoquantization=True) ile bu yöntemi kullanabilir. Bu, hızlanma sağlamaz ancak kuantizasyonun etkisini tamamen taklit eder.

FP-Quant ile önceden kantize edilmiş modelleri, resmi ISTA-DASLab koleksiyonunda bulabilirsiniz.

torch.compile

FP-Quant, torch.compile ile tam uyumludur.

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, FPQuantConfig

model = AutoModelForCausalLM.from_pretrained(
    "qwen/Qwen3-8B",
    quantization_config=FPQuantConfig(),
    device_map="auto",
    dtype=torch.bfloat16,
)

model.forward = torch.compile(model.forward, mode="max-autotune", fullgraph=True)

Hızlanmalar

FP-Quant, çok büyük parti boyutlu işlemlerde şu anda en iyi performansı göstermektedir.

Hızlandırmalar için QuTLASS README'ye bakın.

Update on GitHub