jcfneto commited on
Commit
423a63d
·
1 Parent(s): cf48cc4

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +42 -0
README.md CHANGED
@@ -16,4 +16,46 @@ model = LLaMAForCausalLM.from_pretrained(
16
  device_map="auto",
17
  )
18
  model = PeftModel.from_pretrained(model, "jcfneto/lora-cabrita-tv-ptbr")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  ```
 
16
  device_map="auto",
17
  )
18
  model = PeftModel.from_pretrained(model, "jcfneto/lora-cabrita-tv-ptbr")
19
+
20
+ def generate_prompt(instruction, input=None):
21
+ if input:
22
+ return f"""Abaixo está uma instrução que descreve uma tarefa, juntamente com uma entrada que fornece mais contexto. Escreva uma resposta que complete adequadamente o pedido.
23
+
24
+ ### Instrução:
25
+ {instruction}
26
+
27
+ ### Entrada:
28
+ {input}
29
+
30
+ ### Resposta:"""
31
+ else:
32
+ return f"""Abaixo está uma instrução que descreve uma tarefa. Escreva uma resposta que complete adequadamente o pedido.
33
+
34
+ ### Instrução:
35
+ {instruction}
36
+
37
+ ### Resposta:"""
38
+
39
+ generation_config = GenerationConfig(
40
+ temperature=0.2,
41
+ top_p=0.75,
42
+ num_beams=4,
43
+ )
44
+
45
+ def evaluate(instruction, input=None):
46
+ prompt = generate_prompt(instruction, input)
47
+ inputs = tokenizer(prompt, return_tensors="pt")
48
+ input_ids = inputs["input_ids"].cuda()
49
+ generation_output = model.generate(
50
+ input_ids=input_ids,
51
+ generation_config=generation_config,
52
+ return_dict_in_generate=True,
53
+ output_scores=True,
54
+ max_new_tokens=256
55
+ )
56
+ for s in generation_output.sequences:
57
+ output = tokenizer.decode(s)
58
+ print("Resposta:", output.split("### Resposta:")[1].strip())
59
+
60
+ evaluate(input("Instrução: "))
61
  ```