File size: 897 Bytes
cd6952b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
from transformers import (
AutoModelForCausalLM,
AutoTokenizer,
AutoTokenizer,
)
from peft import PeftModel, PeftConfig
import torch
d_map = {"": torch.cuda.current_device()} if torch.cuda.is_available() else None
local_model_path = "outputs/checkpoint-100" # Path to the combined weights
# Loading the base Model
config = PeftConfig.from_pretrained(local_model_path)
model = AutoModelForCausalLM.from_pretrained(
config.base_model_name_or_path,
return_dict=True,
# load_in_4bit=True,
device_map=d_map,
ignore_mismatched_sizes=True,
# from_tf=True,
)
tokenizer = AutoTokenizer.from_pretrained(config.base_model_name_or_path)
# load the base model with the Lora model
model = PeftModel.from_pretrained(model, local_model_path)
merged = model.merge_and_unload()
merged.save_pretrained("outputs/merged")
tokenizer.save_pretrained("outputs/merged") |