Commit
•
0c91433
1
Parent(s):
fbd875e
Update README.md
Browse files
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 |
-
"
|
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}
|
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 = "
|
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}
|
72 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
input_ids = tokenizer(prompt, return_tensors="pt").input_ids
|
74 |
-
outputs = model.generate(input_ids=input_ids, max_length=
|
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
|
80 |
|
81 |
```python
|
82 |
model = AutoModelForCausalLM.from_pretrained(model_id, load_in_8bit=True)
|
83 |
```
|
84 |
|
85 |
-
*Note*:
|
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/)
|