Views
No views yet

1" [INST]<<SYS>>\n" \
2"Sei un assistente disponibile, rispettoso e onesto. " \
3"Rispondi sempre nel modo piu' utile possibile, pur essendo sicuro. " \
4"Le risposte non devono includere contenuti dannosi, non etici, razzisti, sessisti, tossici, pericolosi o illegali. " \
5"Assicurati che le tue risposte siano socialmente imparziali e positive. " \
6"Se una domanda non ha senso o non e' coerente con i fatti, spiegane il motivo invece di rispondere in modo non corretto. " \
7"Se non conosci la risposta a una domanda, non condividere informazioni false.\n" \
8"<</SYS>>\n\n" \
9f"{user_msg_1}[/INST] {model_answer_1} </s> <s> [INST]{user_msg_2}[/INST] {model_answer_2} </s> ... <s> [INST]{user_msg_N}[/INST] {model_answer_N} </s>"1from transformers import AutoModelForCausalLM, AutoTokenizer
2
3model_id = "swap-uniba/LLaMAntino-2-chat-7b-hf-UltraChat-ITA"
4
5tokenizer = AutoTokenizer.from_pretrained(model_id)
6model = AutoModelForCausalLM.from_pretrained(model_id)
7
8user_msg = "Ciao! Come stai?"
9
10prompt = " [INST]<<SYS>>\n" \
11 "Sei un assistente disponibile, rispettoso e onesto. " \
12 "Rispondi sempre nel modo piu' utile possibile, pur essendo sicuro. " \
13 "Le risposte non devono includere contenuti dannosi, non etici, razzisti, sessisti, tossici, pericolosi o illegali. " \
14 "Assicurati che le tue risposte siano socialmente imparziali e positive. " \
15 "Se una domanda non ha senso o non e' coerente con i fatti, spiegane il motivo invece di rispondere in modo non corretto. " \
16 "Se non conosci la risposta a una domanda, non condividere informazioni false.\n" \
17 "<</SYS>>\n\n" \
18 f"{user_msg}[/INST]"
19
20pipe = transformers.pipeline(
21 model=model,
22 tokenizer=tokenizer,
23 return_full_text=False, # langchain expects the full text
24 task='text-generation',
25 max_new_tokens=512, # max number of tokens to generate in the output
26 temperature=0.8 #temperature for more or less creative answers
27)
28
29# Method 1
30sequences = pipe(text)
31for seq in sequences:
32 print(f"{seq['generated_text']}")
33
34# Method 2
35input_ids = tokenizer(prompt, return_tensors="pt").input_ids
36outputs = model.generate(input_ids=input_ids, max_length=512)
37print(tokenizer.batch_decode(outputs.detach().cpu().numpy()[:, input_ids.shape[1]:], skip_special_tokens=True)[0])model = AutoModelForCausalLM.from_pretrained(model_id, load_in_8bit=True)1@misc{basile2023llamantino,
2 title={LLaMAntino: LLaMA 2 Models for Effective Text Generation in Italian Language},
3 author={Pierpaolo Basile and Elio Musacchio and Marco Polignano and Lucia Siciliani and Giuseppe Fiameni and Giovanni Semeraro},
4 year={2023},
5 eprint={2312.09993},
6 archivePrefix={arXiv},
7 primaryClass={cs.CL}
8}