Transformers documentation

Dequantisasi model

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

and get access to the augmented documentation experience

to get started

Dequantisasi model

Dequantizing mengubah kembali bobot yang terkuantisasi ke dtype presisi yang lebih tinggi seperti bf16. Lakukan dequantize pada model untuk melakukan fine-tuning penuh, untuk menjalankannya pada perangkat keras yang kernel metodenya tidak didukung, atau untuk mengonversinya ke format lain. Hasilnya menggunakan memori sebanyak model yang tidak terkuantisasi, dan tidak memulihkan akurasi yang hilang akibat pembulatan.

Transformers melakukan dekuantisasi dengan dua cara, tergantung pada metodenya.

MetodeCara melakukan dekuantisasi
bitsandbytes, HIGGSPanggil dequantize() setelah memuat.
compressed-tensors, FP8 Fine-grained, GGUF, Metal, MXFP4Lewati dequantize=True ke konfigurasi metode saat memuat.

Metode lain memicu NotImplementedError dari dequantize().

Dequantize setelah memuat

Panggil dequantize() pada model yang dimuat. Secara default, fungsi ini menggunakan dtype yang sama dengan saat model dimuat. Sampaikan dtype untuk memilih yang lain.

import torch
from transformers import AutoModelForCausalLM, BitsAndBytesConfig

model = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen3-0.6B",
    quantization_config=BitsAndBytesConfig(load_in_4bit=True),
    device_map="auto",
)
model = model.dequantize(dtype=torch.bfloat16)

dequantize() juga menghapus quantization_config, sehingga save_pretrained() menyimpan checkpoint presisi penuh biasa.

Dequantize saat memuat

Lewati dequantize=True ke konfigurasi metode yang mendukungnya. Bobot akan didekuantisasi saat dimuat, sehingga kernel terkuantisasi tidak pernah digunakan. Contoh di bawah memuat bobot MXFP4 dari gpt-oss dalam bf16.

from transformers import AutoModelForCausalLM, Mxfp4Config

model = AutoModelForCausalLM.from_pretrained(
    "openai/gpt-oss-20b",
    quantization_config=Mxfp4Config(dequantize=True),
    device_map="auto",
)

Beberapa metode melakukan dequantize secara otomatis ketika kernel-nya tidak dapat dijalankan. GGUF, misalnya, beralih ke dequantize ketika tidak ada kernel yang mendukung tipe kuantisasi file tersebut.

Update on GitHub