Views
No views yet
1import torch
2from peft import PeftModel, PeftConfig
3from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
4
5
6PEFT_MODEL = "manik1080/pmc-falcon-7b"
7
8config = PeftConfig.from_pretrained(PEFT_MODEL)
9model_ = AutoModelForCausalLM.from_pretrained(
10 config.base_model_name_or_path,
11 return_dict=True,
12 quantization_config=bnb_config,
13 device_map="auto",
14 trust_remote_code=True
15)
16
17tokenizer=AutoTokenizer.from_pretrained(config.base_model_name_or_path)
18tokenizer.pad_token = tokenizer.eos_token
19
20model_ = PeftModel.from_pretrained(model_, PEFT_MODEL)1device = "cuda:0" if torch.cuda.is_available() else "cpu"
2
3prompt = """
4<human>: Is a prior diagnosis of breast cancer a risk factor for breast cancer in BRCA1 and BRCA2 carriers?
5<assistant>:
6""".strip()
7
8encoding = tokenizer(prompt, return_tensors="pt").to(device)
9with torch.inference_mode():
10 outputs = model_.generate(
11 input_ids = encoding.input_ids,
12 attention_mask = encoding.attention_mask,
13 generation_config = generation_config
14 )
15
16outp = tokenizer.decode(outputs[0], skip_special_tokens=True)
17
18print("User Query: ", prompt.strip('<assistant>: ')[0].lstrip('<human>'))
19print("Bot Response: ", outp.strip('<assistant>: ')[1].rstrip('User'))