# Descomprimir un modelo

La descuantización convierte los pesos cuantizados de vuelta a un tipo de datos de mayor precisión, como bf16. Descuantice un modelo para ajustarlo por completo, para ejecutarlo en hardware que no es compatible con los kernels del método, o para convertirlo a otro formato. El resultado utiliza la misma cantidad de memoria que un modelo no cuantizado y no recupera la precisión perdida por el redondeo.

Transformers realiza la cuantización inversa de dos maneras, según el método.

| Método | Cómo descuantizar |
|---|---|
| [bitsandbytes](./bitsandbytes), [HIGGS](./higgs) | Llama a [dequantize()](/docs/transformers/main/es/main_classes/model#transformers.PreTrainedModel.dequantize) después de cargar. |
| [compressed-tensors](./compressed_tensors), [FP8 de grano fino](./finegrained_fp8), [GGUF](./gguf), [Metal](./metal), [MXFP4](./mxfp4) | Pasa `dequantize=True` a la configuración del método al cargar. |

Otros métodos lanzan un `NotImplementedError` desde [dequantize()](/docs/transformers/main/es/main_classes/model#transformers.PreTrainedModel.dequantize).

## Descomprimir después de cargar

Llama a [dequantize()](/docs/transformers/main/es/main_classes/model#transformers.PreTrainedModel.dequantize) en un modelo cargado. Por defecto, utiliza el dtype en el que se cargó el modelo. Pasa `dtype` para elegir otro.

```py
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()](/docs/transformers/main/es/main_classes/model#transformers.PreTrainedModel.dequantize) también elimina `quantization_config`, por lo que [save_pretrained()](/docs/transformers/main/es/main_classes/model#transformers.PreTrainedModel.save_pretrained) guarda un punto de control de precisión completa regular.

## Descomprimir al cargar

Pasa `dequantize=True` a la configuración de un método que lo soporte. Los pesos se descuantizan a medida que se cargan, por lo que nunca se utilizan los kernels cuantizados. El ejemplo siguiente carga los pesos MXFP4 de gpt-oss en bf16.

```py
from transformers import AutoModelForCausalLM, Mxfp4Config

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

Algunos métodos descuantifican automáticamente cuando sus kernels no pueden ejecutarse. [GGUF](./gguf), por ejemplo, recurre a la descuantificación cuando ningún kernel admite los tipos de cuantización del archivo.

