Views
No views yet
1import torch
2from peft import PeftModel
3from transformers import LlamaTokenizer, LlamaForCausalLM, GenerationConfig
4
5tokenizer = LLaMATokenizer.from_pretrained("decapoda-research/llama-13b-hf")
6
7model = LLaMAForCausalLM.from_pretrained(
8 "decapoda-research/llama-7b-hf",
9 load_in_8bit=True,
10 device_map="auto",
11)
12
13
14model = PeftModel.from_pretrained(model, "Aspik101/polish-alpaca7B-lora")
15
16
17def get_answer(question, model_version = model):
18 PROMPT =f'''Poniżej znajduje się instrukcja opisująca zadanie. Napisz odpowiedź, która odpowiednio rozwiąrze zadanie.
19
20 ### Instruction:
21 {question}
22
23 ### Response:
24 '''
25
26 inputs = tokenizer(
27 PROMPT,
28 return_tensors="pt",
29 )
30 input_ids = inputs["input_ids"].cuda()
31
32 generation_config = GenerationConfig(
33 temperature=0.2,
34 top_p=0.95,
35 repetition_penalty=1.15,
36 )
37 print("Generating...")
38 generation_output = model_version.generate(
39 input_ids=input_ids,
40 generation_config=generation_config,
41 return_dict_in_generate=True,
42 output_scores=True,
43 max_new_tokens=128,
44 )
45
46 sentences = " ".join([tokenizer.decode(s) for s in generation_output.sequences])
47 print(sentences.split("Response:\n")[1])
48