Transformers documentation

Salvar e compartilhar um modelo

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

Salvar e compartilhar um modelo

Salvar um modelo após quantizá-lo durante o carregamento permite que você, e qualquer pessoa com quem você o compartilhar, pule a etapa de quantização na próxima vez. Os métodos de calibração, como GPTQ, se beneficiam mais, pois a calibração pode levar de minutos a horas.

Salvar o modelo

Chame save_pretrained() no modelo quantizado para gravar os pesos quantizados e adicionar o quantization_config ao 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")

Salve o tokenizer no mesmo diretório para que o checkpoint esteja completo.

Envie o modelo para o Hub

Chame push_to_hub() para enviar os pesos quantizados e a configuração para um repositório do Hub. Faça login com hf auth login primeiro.

model.push_to_hub("Qwen3-0.6B-bnb-4bit")

Carregue o modelo salvo

Carregue o checkpoint salvo com from_pretrained() e sem configuração de quantização. O Transformers lê o método do quantization_config em config.json e carrega os pesos já quantizados.

from transformers import AutoModelForCausalLM

model = AutoModelForCausalLM.from_pretrained("your-username/Qwen3-0.6B-bnb-4bit", device_map="auto")

A biblioteca do método deve estar instalada em qualquer local onde o checkpoint for carregado.

Métodos que não podem salvar

Alguns métodos não conseguem salvar seus pesos quantizados, e save_pretrained() levanta um ValueError para eles.

MétodoPor quê
GGUFOs pesos são carregados de um arquivo GGUF. Salve no formato GGUF usando as ferramentas do llama.cpp.
NVFP4O salvamento não é suportado. Quantize o modelo novamente ao carregá-lo.
QuantoO salvamento não é suportado por meio do Transformers.
QuarkO salvamento não é suportado por meio do Transformers.
AWQ com um backend ExLlamaO salvamento não é suportado com os backends ExLlama. Carregue o modelo com outro backend para salvá-lo.

Um modelo quantizado com um adaptador PEFT anexado é uma exceção. save_pretrained() salva apenas os pesos do adaptador, então funciona com qualquer método.

Para salvar um modelo em precisão completa, desquantize-o primeiro. Consulte Desquantizar um modelo.

Update on GitHub