Text Generation
Transformers
Safetensors
Serbian
mistral
mergekit
Merge
text-generation-inference
conversational
Inference Endpoints
Yugo55A-GPT / README.md
datatab's picture
Update README.md
07b8f45 verified
---
base_model:
- mlabonne/AlphaMonarch-7B
- datatab/Yugo55-GPT-v4
- datatab/Yugo55-GPT-DPO-v1-chkp-300
- NousResearch/Nous-Hermes-2-Mistral-7B-DPO
library_name: transformers
tags:
- mergekit
- merge
- text-generation-inference
- transformers
- mistral
license: mit
language:
- sr
datasets:
- datatab/alpaca-cleaned-serbian-full
- datatab/ultrafeedback_binarized
- datatab/open-orca-slim-serbian
---
# Yugo55A-GPT
- **Developed by:** datatab
- **License:** mit
## 🏆 Results
> Results obtained through the Serbian LLM evaluation, released by Aleksa Gordić: [serbian-llm-eval](https://github.com/gordicaleksa/serbian-llm-eval)
> * Evaluation was conducted on a 4-bit version of the model due to hardware resource constraints.
<table>
<tr>
<th>MODEL</th>
<th>ARC-E</th>
<th>ARC-C</th>
<th>Hellaswag</th>
<th>BoolQ</th>
<th>Winogrande</th>
<th>OpenbookQA</th>
<th>PiQA</th>
</tr>
<tr>
<td><a href="https://huggingface.co/datatab/Yugo55-GPT-v4-4bit/">*Yugo55-GPT-v4-4bit</a></td>
<td>51.41</td>
<td>36.00</td>
<td>57.51</td>
<td>80.92</td>
<td><strong>65.75</strong></td>
<td>34.70</td>
<td><strong>70.54</strong></td>
</tr>
<tr>
<td><a href="https://huggingface.co/datatab/Yugo55A-GPT/">Yugo55A-GPT</a></td>
<td><strong>51.52</strong></td>
<td><strong>37.78</strong></td>
<td><strong>57.52</strong></td>
<td><strong>84.40</strong></td>
<td>65.43</td>
<td><strong>35.60</strong></td>
<td>69.43</td>
</tr>
</table>
# 🔗 Merge Details
### Merge Method
> This is a merge of pre-trained language models created using [mergekit](https://github.com/cg123/mergekit).
> This model was merged using the [linear](https://arxiv.org/abs/2203.05482) merge method.
### Models Merged
The following models were included in the merge:
* [datatab/Yugo55-GPT-v4](https://huggingface.co/datatab/Yugo55-GPT-v4)
* [datatab/Yugo55-GPT-DPO-v1-chkp-300](https://huggingface.co/datatab/Yugo55-GPT-DPO-v1-chkp-300)
* [mlabonne/AlphaMonarch-7B](https://huggingface.co/mlabonne/AlphaMonarch-7B)
* [NousResearch/Nous-Hermes-2-Mistral-7B-DPO](https://huggingface.co/NousResearch/Nous-Hermes-2-Mistral-7B-DPO)
## 🧩 Configuration
The following YAML configuration was used to produce this model:
```yaml
models:
- model: datatab/Yugo55-GPT-v4
parameters:
weight: 1.0
- model: datatab/Yugo55-GPT-DPO-v1-chkp-300
parameters:
weight: 1.0
- model: mlabonne/AlphaMonarch-7B
parameters:
weight: 0.5
- model: NousResearch/Nous-Hermes-2-Mistral-7B-DPO
parameters:
weight: 0.5
merge_method: linear
dtype: float16
```
## 💻 Usage
```terminal
!pip -q install git+https://github.com/huggingface/transformers # need to install from github
!pip install -q datasets loralib sentencepiece
!pip -q install bitsandbytes accelerate
```
```python
from IPython.display import HTML, display
def set_css():
display(HTML('''
<style>
pre {
white-space: pre-wrap;
}
</style>
'''))
get_ipython().events.register('pre_run_cell', set_css)
```
```python
import torch
import transformers
from transformers import AutoTokenizer, AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained(
"datatab/Yugo55A-GPT", torch_dtype="auto"
)
tokenizer = AutoTokenizer.from_pretrained(
"datatab/Yugo55A-GPT", torch_dtype="auto"
)
```
```python
from typing import Optional
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
def generate(
user_content: str, system_content: Optional[str] = ""
) -> str:
system_content = "Ispod je uputstvo koje opisuje zadatak, upareno sa unosom koji pruža dodatni kontekst. Napišite odgovor koji na odgovarajući način kompletira zahtev."
messages = [
{
"role": "system",
"content": system_content,
},
{"role": "user", "content": user_content},
]
tokenized_chat = tokenizer.apply_chat_template(
messages, tokenize=True, add_generation_prompt=True, return_tensors="pt"
).to("cuda")
text_streamer = TextStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True)
output = model.generate(
tokenized_chat,
streamer=text_streamer,
max_new_tokens=2048,
temperature=0.1,
repetition_penalty=1.11,
top_p=0.92,
top_k=1000,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
do_sample=True,
)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
```
```python
generate("Nabroj mi sve planete suncevog sistemai reci mi koja je najveca planeta")
```
```python
generate("Koja je razlika između lame, vikune i alpake?")
```
```python
generate("Napišite kratku e-poruku Semu Altmanu dajući razloge za GPT-4 otvorenog koda")
```