Transformers documentation
Guardar y compartir un modelo
Guardar y compartir un modelo
Guardar un modelo después de cuantizarlo durante la carga permite a usted y a cualquier persona con quien lo comparta omitir el paso de cuantización la próxima vez. Los métodos de calibración como GPTQ se benefician más, ya que la calibración puede llevar desde minutos hasta horas.
Guardar el modelo
Llama a save_pretrained() en el modelo cuantizado para escribir los pesos cuantizados y añadir quantization_config a config.json.
from transformers import AutoModelForCausalLM, BitsAndBytesConfig
quantization_config = BitsAndBytesConfig(load_in_4bit=True)
model = AutoModelForCausalLM.from_pretrained(
"Qwen/Qwen3-0.6B",
quantization_config=quantization_config,
device_map="auto",
)
model.save_pretrained("Qwen3-0.6B-bnb-4bit")Guarde el tokenizador en el mismo directorio para que el punto de control esté completo.
Subir el modelo al Hub
Llama a push_to_hub() para subir los pesos cuantizados y la configuración a un repositorio de Hub. Inicia sesión primero con hf auth login.
model.push_to_hub("Qwen3-0.6B-bnb-4bit")Cargar el modelo guardado
Cargue el punto de control guardado con from_pretrained() y sin configuración de cuantización. Transformers lee el método desde quantization_config en config.json y carga los pesos ya cuantizados.
from transformers import AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("your-username/Qwen3-0.6B-bnb-4bit", device_map="auto")La biblioteca del método debe estar instalada en cualquier lugar donde se cargue el punto de control.
Métodos que no pueden guardar
Algunos métodos no pueden guardar sus pesos cuantizados y save_pretrained() lanza un ValueError para ellos.
| Método | Por qué |
|---|---|
| GGUF | Los pesos se cargan desde un archivo GGUF. En su lugar, guarde en formato GGUF con las herramientas de llama.cpp. |
| NVFP4 | No se admite el guardado. Cuantice el modelo de nuevo al cargarlo. |
| Quanto | El guardado no está soportado a través de Transformers. |
| Quark | El guardado no está soportado a través de Transformers. |
| AWQ con un backend de ExLlama | El guardado no es compatible con los backends de ExLlama. Cargue el modelo con otro backend para guardarlo. |
Un modelo cuantizado con un adaptador de PEFT adjunto es una excepción. save_pretrained() guarda solo los pesos del adaptador, por lo que funciona con cualquier método.
Para guardar un modelo en precisión completa, primero descuantízelo. Consulte Descuantizar un modelo.
Update on GitHub