Upload README.md
Browse files![benchmarks.png](https://cdn-uploads.huggingface.co/production/uploads/6501bfe0493fd9c8c2e32402/mmrZ_0GbBbfBzixqxXUCq.png)
![logo.jpeg](https://cdn-uploads.huggingface.co/production/uploads/6501bfe0493fd9c8c2e32402/lD6vkg6RxQKB8Da0JTWxi.jpeg)
README.md
CHANGED
@@ -1,3 +1,175 @@
|
|
1 |
-
---
|
2 |
-
|
3 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
language:
|
3 |
+
- ro
|
4 |
+
- en
|
5 |
+
license: llama3.1
|
6 |
+
base_model: meta-llama/Meta-Llama-3.1-8B
|
7 |
+
model-index:
|
8 |
+
- name: pansophic-1-preview-LLaMA3.1-8b
|
9 |
+
results: []
|
10 |
+
---
|
11 |
+
|
12 |
+
<img src="https://cdn-uploads.huggingface.co/production/uploads/6501bfe0493fd9c8c2e32402/lD6vkg6RxQKB8Da0JTWxi.jpeg" alt="Pansophic Logo" width="800" style="display:block; margin-left:auto; margin-right:auto;"/>
|
13 |
+
|
14 |
+
# pansophic-1-preview 🇷🇴
|
15 |
+
**pansophic-1-preview** 🦝 is an 8-billion parameter large language model that was trained on a mix of English and Romanian instructions. The prompt format used is **ChatML**.
|
16 |
+
|
17 |
+
## Model description
|
18 |
+
- **Model type:** An 8B parameter GPT-like model fine-tuned and aligned with APO-ZERO.
|
19 |
+
- **Language(s) (NLP):** Romanian and English
|
20 |
+
- **License:** llama3.1
|
21 |
+
- **Finetuned from model:** [meta-llama](https://huggingface.co/meta-llama/Meta-Llama-3.1-8B-Instruct)
|
22 |
+
|
23 |
+
## Performance
|
24 |
+
The model is compared on benchmarks created by the [OpenLLMRo Community](https://huggingface.co/OpenLLM-Ro):
|
25 |
+
![Benchmarks Results](https://cdn-uploads.huggingface.co/production/uploads/6501bfe0493fd9c8c2e32402/mmrZ_0GbBbfBzixqxXUCq.png)
|
26 |
+
|
27 |
+
## Input Format
|
28 |
+
The model is trained with the ChatML format:
|
29 |
+
|
30 |
+
```text
|
31 |
+
<|im_start|>user
|
32 |
+
Your message here!<|im_end|>
|
33 |
+
<|im_start|>assistant
|
34 |
+
```
|
35 |
+
|
36 |
+
The model is optimized for a diverse set of use cases:
|
37 |
+
|
38 |
+
### System prompt:
|
39 |
+
```text
|
40 |
+
<|im_start|>system
|
41 |
+
System prompt here.<|im_end|>
|
42 |
+
<|im_start|>user
|
43 |
+
Your message here!<|im_end|>
|
44 |
+
<|im_start|>assistant
|
45 |
+
```
|
46 |
+
|
47 |
+
### Context usage:
|
48 |
+
```text
|
49 |
+
<|im_start|>context
|
50 |
+
Context here.<|im_end|>
|
51 |
+
<|im_start|>user
|
52 |
+
Your message here!<|im_end|>
|
53 |
+
<|im_start|>assistant
|
54 |
+
```
|
55 |
+
|
56 |
+
### Tools usage:
|
57 |
+
```text
|
58 |
+
<|im_start|>tools
|
59 |
+
Tools here.<|im_end|>
|
60 |
+
<|im_start|>user
|
61 |
+
Your message here!<|im_end|>
|
62 |
+
<|im_start|>assistant
|
63 |
+
```
|
64 |
+
|
65 |
+
## Model usage
|
66 |
+
|
67 |
+
### Running the model
|
68 |
+
Here's how you can run the model using 🤗 Transformers:
|
69 |
+
|
70 |
+
```python
|
71 |
+
import torch
|
72 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
|
73 |
+
|
74 |
+
model = AutoModelForCausalLM.from_pretrained("pansophic/pansophic-1-preview-LLaMA3.1-8b", torch_dtype=torch.bfloat16).to("cuda")
|
75 |
+
tokenizer = AutoTokenizer.from_pretrained("pansophic/pansophic-1-preview-LLaMA3.1-8b", torch_dtype=torch.bfloat16)
|
76 |
+
streamer = TextStreamer(tokenizer)
|
77 |
+
|
78 |
+
message = "Ce faci?"
|
79 |
+
chat = [{"role": "user", "content": message}]
|
80 |
+
|
81 |
+
prompt = tokenizer.apply_chat_template(chat, tokenize=False, add_generation_prompt=True)
|
82 |
+
inputs = tokenizer.encode(prompt, add_special_tokens=True, return_tensors="pt")
|
83 |
+
outputs = model.generate(input_ids=inputs.to("cuda"),
|
84 |
+
max_new_tokens=64000,
|
85 |
+
do_sample=True,
|
86 |
+
temperature=0.7,
|
87 |
+
repetition_penalty=1.1,
|
88 |
+
top_p=0.95,
|
89 |
+
use_cache=True,
|
90 |
+
streamer=streamer)
|
91 |
+
```
|
92 |
+
|
93 |
+
### Tool usage
|
94 |
+
The model is optimized for agentic behavior when it has access to external tools. In the example below, we inform the model that it has access to a function that can generate images:
|
95 |
+
|
96 |
+
```text
|
97 |
+
tools = """[{"name": "image_generation", "description": "Generează o imagine pe baza unui query.", "parameters": {"query": {"description": "Query-ul pe baza căruia să se genereze imaginea.", "type": "str"}}}]"""
|
98 |
+
query = "Generează o imagine cu un coldbrew, iar în fundal Turnul Eiffel."
|
99 |
+
|
100 |
+
chat = [{"role": "tools", "content": tools},
|
101 |
+
{"role": "user", "content": message}]
|
102 |
+
```
|
103 |
+
|
104 |
+
The model’s response will be:
|
105 |
+
|
106 |
+
```text
|
107 |
+
<tool_call> {"name": "image_generation", "arguments": {"query": "Un coldbrew în prim-plan, cu Turnul Eiffel în fundal"}} </tool_call>
|
108 |
+
```
|
109 |
+
|
110 |
+
The start of the function call is denoted by the special token `<tool_call>`, and the `</tool_call>` token marks the end of the function call.
|
111 |
+
|
112 |
+
### System prompt
|
113 |
+
The model is optimized to adhere strictly to system prompts:
|
114 |
+
|
115 |
+
```text
|
116 |
+
system = "Foloseste doar emoji-uri atunci când răspunzi."
|
117 |
+
message = "Ești fericit?"
|
118 |
+
|
119 |
+
chat = [{"role": "system", "content": system},
|
120 |
+
{"role": "user", "content": message}]
|
121 |
+
```
|
122 |
+
|
123 |
+
The model’s response will be:
|
124 |
+
|
125 |
+
```text
|
126 |
+
😊🙌💖
|
127 |
+
```
|
128 |
+
|
129 |
+
### Context usage
|
130 |
+
The model is optimized for context usage. The model generates special tokens to retrieve information from the context before formulating an answer, ensuring that the response is grounded in the appropriate context.
|
131 |
+
|
132 |
+
```text
|
133 |
+
context = """Document:0
|
134 |
+
Title: Contextul Politic din România
|
135 |
+
Text: În România, contextul politic este caracterizat de o dinamică complexă și adesea imprevizibilă. Partidele politice majore, precum Partidul Social Democrat (PSD) și Partidul Național Liberal (PNL), domină scena politică, dar nu fără provocări interne și externe. România se confruntă cu provocări legate de stabilitatea guvernului, polarizarea politică și tensiuni între diferitele ramuri ale puterii. Alegerile recente au evidențiat o creștere a sentimentului anti-establishment, cu partide noi și mișcări politice care câștigă teren. În plus, relațiile cu Uniunea Europeană și politicile economice rămân subiecte fierbinți, influențând deciziile politice și direcția strategică a țării. În general, climatul politic din România rămâne volatil, reflectând tranziția continuă a țării către o democrație matură și consolidată.
|
136 |
+
|
137 |
+
Document:1
|
138 |
+
Title: Influența lui Mihai Eminescu în România
|
139 |
+
Text:Mihai Eminescu, considerat cel mai mare poet național al României, a avut o influență profundă asupra culturii și conștiinței naționale românești. Opera sa, caracterizată printr-o profundă reflecție filosofică și o extraordinară bogăție lingvistică, a devenit un reper în literatura română, inspirând generații întregi de scriitori, intelectuali și oameni de cultură.
|
140 |
+
|
141 |
+
Eminescu nu a fost doar un poet romantic; el a fost și un jurnalist vehement, care a comentat asupra contextului politic și social al României de la sfârșitul secolului al XIX-lea. În articolele sale publicate în "Timpul", a criticat corupția politică, inegalitățile sociale și influențele externe care amenințau identitatea națională. Prin cuvântul său, Eminescu a militat pentru conservarea tradițiilor și a valorilor autentice românești, văzând în acestea fundația unei Românii puternice și independente.
|
142 |
+
|
143 |
+
În educația din România, operele lui Eminescu sunt parte integrantă a curriculei, fiind studiate în detaliu în școli și universități. Poezii precum "Luceafărul" sau "Scrisoarea III" sunt considerate capodopere ale literaturii universale, iar influența sa se resimte și astăzi în discursul cultural și naționalist românesc. În fiecare an, la 15 ianuarie, ziua de naștere a lui Eminescu, se celebrează "Ziua Culturii Naționale" în România, un omagiu adus moștenirii sale durabile.
|
144 |
+
|
145 |
+
Eminescu a devenit un simbol al sufletului românesc, iar lucrările sale rămân un testament al luptelor, viselor și aspirațiilor poporului român. Influența sa este atât de profundă încât numele său este asociat nu doar cu literatura, ci și cu identitatea culturală națională a României."""
|
146 |
+
---
|
147 |
+
message = "În ce ziar a scris Mihai Eminescu?"
|
148 |
+
|
149 |
+
chat = [{"role": "context", "content": context},
|
150 |
+
{"role": "user", "content": message}]
|
151 |
+
```
|
152 |
+
|
153 |
+
The model’s response is:
|
154 |
+
|
155 |
+
```text
|
156 |
+
<gather_info>
|
157 |
+
<document: 1>
|
158 |
+
- Mihai Eminescu a scris ca jurnalist în "Timpul"
|
159 |
+
- A comentat asupra contextului politic și social al României de la sfârșitul secolului al XIX-lea
|
160 |
+
- A criticat corupția politică, inegalitățile sociale și influențele externe care amenințau identitatea
|
161 |
+
|
162 |
+
națională
|
163 |
+
</gather_info>
|
164 |
+
```
|
165 |
+
|
166 |
+
## Limitations
|
167 |
+
While **pansophic-1-preview** 🇷🇴 is an advanced model, it may generate incorrect or nonsensical responses, especially in complex or highly nuanced scenarios. It should be used with caution in critical applications.
|
168 |
+
|
169 |
+
## Acknowledgments
|
170 |
+
The OpenLLM-Ro team extends its gratitude to all contributors and users who provided valuable feedback during the model's development.
|
171 |
+
|
172 |
+
---
|
173 |
+
|
174 |
+
# License
|
175 |
+
This model is licensed under the **llama3.1** license.
|