Training procedure

HUGGING_FACE_USER_NAME = "sksayril" model_name = "pbp-sayril"

import torch from peft import PeftModel, PeftConfig from transformers import AutoModelForCausalLM, AutoTokenizer

peft_model_id = f"{HUGGING_FACE_USER_NAME}/{model_name}" config = PeftConfig.from_pretrained(peft_model_id) model = AutoModelForCausalLM.from_pretrained(config.base_model_name_or_path, return_dict=True, load_in_8bit=False, device_map='auto') tokenizer = AutoTokenizer.from_pretrained(config.base_model_name_or_path)

Load the Lora model

qa_model = PeftModel.from_pretrained(model, peft_model_id)

from IPython.display import display, Markdown

def make_inference(context, question): batch = tokenizer(f"### CONTEXT\n{context}\n\n### QUESTION\n{question}\n\n### ANSWER\n", return_tensors='pt')

with torch.cuda.amp.autocast(): output_tokens = qa_model.generate(**batch, max_new_tokens=200)

display(Markdown((tokenizer.decode(output_tokens[0], skip_special_tokens=True))))

context = "Cheese is the best food." question = "What is the best food?"

make_inference(context, question)

Framework versions