Transformers documentation

NVFP4

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

NVFP4

NVFP4 kuantizasyonu, bir model yüklenirken tam hassasiyetli doğrusal ağırlıkları NVIDIA’nın 4 bitlik kayan nokta formatına paketler. NVFP4Config, in_features ve out_features değerleri 16’ya tam bölünebilen, uygun bias’sız torch.nn.Linear modüllerini, NVFP4 Hub çekirdeğinden gelen bir NVFP4 doğrusal uygulamasıyla değiştirir. Modelin dikkat ve MLP arayüzleri değiştirilmez.

NVFP4, hesaplama yeteneği 10.0 veya daha yeni olan bir Blackwell GPU, uyumlu CUDA destekli bir PyTorch derlemesi ve kernels paketini gerektirir.

kernels ve Accelerate ile uyumlu bir sürümünü yükleyin.

pip install --upgrade accelerate kernels

Tek bir CUDA cihazıyla NVFP4Config nesnesini from_pretrained() fonksiyonuna iletin. Ağırlıklar, yüklendikleri sırada kuantize edilir; bu nedenle kaynak kontrol noktası (checkpoint) kayan noktalı (floating-point) ağırlıklar içermelidir.

import torch

from transformers import AutoModelForCausalLM, AutoTokenizer, NVFP4Config


model_id = "meta-llama/Llama-3.2-1B"
quantization_config = NVFP4Config()
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    dtype=torch.bfloat16,
    device_map="cuda",
    quantization_config=quantization_config,
)

tokenizer = AutoTokenizer.from_pretrained(model_id)
inputs = tokenizer("NVFP4 is", return_tensors="pt").to(model.device)
output = model.generate(**inputs, max_new_tokens=20)
print(tokenizer.decode(output[0], skip_special_tokens=True))

Seçili modüllerin orijinal hassasiyetlerinde kalmasını sağlamak için modules_to_not_convert kullanın.

quantization_config = NVFP4Config(modules_to_not_convert=["vision", "lm_head"])

NVFP4 lineer modülleri torch.compile destekler. İlk derlenmiş çağrı, grafik derleme süresini içerdiğinden, üretim verimliliğini ölçmeden önce modeli ısıtın.

Mevcut kısıtlamalar

  • Yalnızca bir CUDA cihazı desteklenir. NVFP4 ölçek meta verilerinin parçalama davranışı tanımlanana kadar tensör paralelliği ve çoklu cihaz device_map yapılandırmaları reddedilir.
  • CPU ve disk offload desteklenmez.
  • Önceden kuantize edilmiş NVFP4 checkpoint'leri desteklenmez.
  • NVFP4 modelleri şu anda save_pretrained() ile serialize edilemez veya eğitilemez.
Update on GitHub