valueError: предоставленный код состояния для слоев.0.mlp.down_proj.weight делает
не содержать биты и байты__* и, возможно, другие компоненты quantized_stats
Что мы делаем:
- Сохраните квантованную модель, используя обычный save_pretrained(save_dir)
- Попробуйте загрузить модель с помощью AutoModel.from_pretrained, передав save_dir и тот же quantization_config, который использовался при создании модели.
model_id = "meta-llama/Meta-Llama-3.1-70B-Instruct"
cache_dir = "/home/ec2-user/SageMaker/huggingface_cache"
quantization_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16,
bnb_4bit_use_double_quant=True,
)
model_4bit = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="auto",
torch_dtype=torch.bfloat16,
quantization_config=quantization_config,
low_cpu_mem_usage=True,
offload_folder="offload",
offload_state_dict=True,
cache_dir=cache_dir
)
tokenizer = AutoTokenizer.from_pretrained(model_id,cache_dir=cache_dir)
pt_save_directory = "test_directory"
tokenizer.save_pretrained(pt_save_directory,)
model_4bit.save_pretrained(pt_save_directory)
## test load it
loaded_model = AutoModel.from_pretrained(pt_save_directory,
quantization_config=quantization_config
)
Подробнее здесь: https://stackoverflow.com/questions/790 ... ndbytes-an