Gặp vấn đề khi finetune
Mình finetune mô hình thì gặp lỗi này:
'''
trainer = transformers.Trainer(
model = model,
train_dataset = data,
args = training_args,
data_collator = transformers.DataCollatorForLanguageModeling(tokenizer, mlm = False),
)
model.config.use_cache = False
trainer.train()
'''
ValueError: You cannot perform fine-tuning on purely quantized models. Please attach trainable adapters on top of the quantized model to correctly perform fine-tuning. Please see: https://huggingface.co/docs/transformers/peft for more details
Theo mình hiểu thì khi bạn fine-tune theo kiểu dùng QLoRa hay LoRa thì phải gửi kèm cái adapter thì mới train được. Do khi train model trong Deep learning ngta sẽ sử dụng kiểu dữ liệu float32(hoặc float16) còn khi inference mới quantize xuống để dùng, nên việc fine-tune trên model đã quantize là không đúng á (Ý kiến cá nhân)
@104-wonohfor bạn phải thêm PEFT config nếu đang dùng QLoRA trên model 4-bit mới được nhé