m-polignano-uniba commited on
Commit
0c91433
1 Parent(s): fbd875e

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +35 -11
README.md CHANGED
@@ -5,7 +5,13 @@ language:
5
  tags:
6
  - text-generation-inference
7
  ---
 
 
8
  # Model Card for LLaMAntino-2-chat-7b-UltraChat-ITA
 
 
 
 
9
 
10
  ## Model description
11
 
@@ -33,7 +39,7 @@ If you are interested in more details regarding the training procedure, you can
33
  This prompt format based on the [LLaMA 2 prompt template](https://gpus.llm-utils.org/llama-2-prompt-template/) adapted to the italian language was used:
34
 
35
  ```python
36
- "<s>[INST] <<SYS>>\n" \
37
  "Sei un assistente disponibile, rispettoso e onesto. " \
38
  "Rispondi sempre nel modo piu' utile possibile, pur essendo sicuro. " \
39
  "Le risposte non devono includere contenuti dannosi, non etici, razzisti, sessisti, tossici, pericolosi o illegali. " \
@@ -41,7 +47,7 @@ This prompt format based on the [LLaMA 2 prompt template](https://gpus.llm-utils
41
  "Se una domanda non ha senso o non e' coerente con i fatti, spiegane il motivo invece di rispondere in modo non corretto. " \
42
  "Se non conosci la risposta a una domanda, non condividere informazioni false.\n" \
43
  "<</SYS>>\n\n" \
44
- f"{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> "
45
  ```
46
 
47
  We recommend using the same prompt in inference to obtain the best results!
@@ -60,7 +66,7 @@ model = AutoModelForCausalLM.from_pretrained(model_id)
60
 
61
  user_msg = "Ciao! Come stai?"
62
 
63
- prompt = "<s>[INST] <<SYS>>\n" \
64
  "Sei un assistente disponibile, rispettoso e onesto. " \
65
  "Rispondi sempre nel modo piu' utile possibile, pur essendo sicuro. " \
66
  "Le risposte non devono includere contenuti dannosi, non etici, razzisti, sessisti, tossici, pericolosi o illegali. " \
@@ -68,22 +74,38 @@ prompt = "<s>[INST] <<SYS>>\n" \
68
  "Se una domanda non ha senso o non e' coerente con i fatti, spiegane il motivo invece di rispondere in modo non corretto. " \
69
  "Se non conosci la risposta a una domanda, non condividere informazioni false.\n" \
70
  "<</SYS>>\n\n" \
71
- f"{user_msg} [/INST] "
72
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
73
  input_ids = tokenizer(prompt, return_tensors="pt").input_ids
74
- outputs = model.generate(input_ids=input_ids, max_length=1024)
75
-
76
  print(tokenizer.batch_decode(outputs.detach().cpu().numpy()[:, input_ids.shape[1]:], skip_special_tokens=True)[0])
77
  ```
78
 
79
- If you are facing issues when loading the model, you can try to load it quantized:
80
 
81
  ```python
82
  model = AutoModelForCausalLM.from_pretrained(model_id, load_in_8bit=True)
83
  ```
84
 
85
- *Note*: The model loading strategy above requires the [*bitsandbytes*](https://pypi.org/project/bitsandbytes/) and [*accelerate*](https://pypi.org/project/accelerate/) libraries
86
-
 
 
87
  ## Evaluation
88
 
89
  <!-- This section describes the evaluation protocols and provides the results. -->
@@ -105,4 +127,6 @@ If you use this model in your research, please cite the following:
105
  archivePrefix={arXiv},
106
  primaryClass={cs.CL}
107
  }
108
- ```
 
 
 
5
  tags:
6
  - text-generation-inference
7
  ---
8
+ <img src="https://i.ibb.co/6mHSRm3/llamantino53.jpg" alt="llamantino53" border="0" width="200px">
9
+
10
  # Model Card for LLaMAntino-2-chat-7b-UltraChat-ITA
11
+ *Last Update: 08/01/2024*<br>*Example of Use*: [Colab Notebook](https://colab.research.google.com/drive/1lCQ7MqSNKILsIncNYhdN_yqzSvl4akat?usp=sharing)
12
+
13
+ <hr>
14
+
15
 
16
  ## Model description
17
 
 
39
  This prompt format based on the [LLaMA 2 prompt template](https://gpus.llm-utils.org/llama-2-prompt-template/) adapted to the italian language was used:
40
 
41
  ```python
42
+ " [INST]<<SYS>>\n" \
43
  "Sei un assistente disponibile, rispettoso e onesto. " \
44
  "Rispondi sempre nel modo piu' utile possibile, pur essendo sicuro. " \
45
  "Le risposte non devono includere contenuti dannosi, non etici, razzisti, sessisti, tossici, pericolosi o illegali. " \
 
47
  "Se una domanda non ha senso o non e' coerente con i fatti, spiegane il motivo invece di rispondere in modo non corretto. " \
48
  "Se non conosci la risposta a una domanda, non condividere informazioni false.\n" \
49
  "<</SYS>>\n\n" \
50
+ f"{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>"
51
  ```
52
 
53
  We recommend using the same prompt in inference to obtain the best results!
 
66
 
67
  user_msg = "Ciao! Come stai?"
68
 
69
+ prompt = " [INST]<<SYS>>\n" \
70
  "Sei un assistente disponibile, rispettoso e onesto. " \
71
  "Rispondi sempre nel modo piu' utile possibile, pur essendo sicuro. " \
72
  "Le risposte non devono includere contenuti dannosi, non etici, razzisti, sessisti, tossici, pericolosi o illegali. " \
 
74
  "Se una domanda non ha senso o non e' coerente con i fatti, spiegane il motivo invece di rispondere in modo non corretto. " \
75
  "Se non conosci la risposta a una domanda, non condividere informazioni false.\n" \
76
  "<</SYS>>\n\n" \
77
+ f"{user_msg}[/INST]"
78
+
79
+ pipe = transformers.pipeline(
80
+ model=model,
81
+ tokenizer=tokenizer,
82
+ return_full_text=False, # langchain expects the full text
83
+ task='text-generation',
84
+ max_new_tokens=512, # max number of tokens to generate in the output
85
+ temperature=0.8 #temperature for more or less creative answers
86
+ )
87
+
88
+ # Method 1
89
+ sequences = pipe(text)
90
+ for seq in sequences:
91
+ print(f"{seq['generated_text']}")
92
+
93
+ # Method 2
94
  input_ids = tokenizer(prompt, return_tensors="pt").input_ids
95
+ outputs = model.generate(input_ids=input_ids, max_length=512)
 
96
  print(tokenizer.batch_decode(outputs.detach().cpu().numpy()[:, input_ids.shape[1]:], skip_special_tokens=True)[0])
97
  ```
98
 
99
+ If you are facing issues when loading the model, you can try to load it **Quantized**:
100
 
101
  ```python
102
  model = AutoModelForCausalLM.from_pretrained(model_id, load_in_8bit=True)
103
  ```
104
 
105
+ *Note*:
106
+ 1) The model loading strategy above requires the [*bitsandbytes*](https://pypi.org/project/bitsandbytes/) and [*accelerate*](https://pypi.org/project/accelerate/) libraries
107
+ 2) The Tokenizer, by default, adds at the beginning of the prompt the '\<BOS\>' token. If that is not the case, add as a starting token the *\<s\>* string.
108
+
109
  ## Evaluation
110
 
111
  <!-- This section describes the evaluation protocols and provides the results. -->
 
127
  archivePrefix={arXiv},
128
  primaryClass={cs.CL}
129
  }
130
+ ```
131
+
132
+ *Notice:* Llama 2 is licensed under the LLAMA 2 Community License, Copyright © Meta Platforms, Inc. All Rights Reserved. [*License*](https://ai.meta.com/llama/license/)