pansophic commited on
Commit
17243a1
1 Parent(s): f30d307

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)

Files changed (1) hide show
  1. README.md +175 -3
README.md CHANGED
@@ -1,3 +1,175 @@
1
- ---
2
- license: llama3.1
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.