|
--- |
|
base_model: |
|
- datatab/Yugo55-GPT-v4 |
|
- datatab/Yugo55-GPT-DPO-v1-chkp-600 |
|
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 |
|
--- |
|
# Yugo60-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> |
|
<tr> |
|
<td><a href="https://huggingface.co/datatab/Yugo60-GPT/">Yugo60-GPT</a></td> |
|
<td><strong>tbd</strong></td> |
|
<td><strong>tbd</strong></td> |
|
<td><strong>tbd</strong></td> |
|
<td><strong>tbd</strong></td> |
|
<td><strong>tbd</strong></td> |
|
<td><strong>tbd</strong></td> |
|
<td><strong>tbd</strong></td> |
|
</tr> |
|
</table> |
|
|
|
## 💻 Usage |
|
```terminal |
|
!pip -q install git+https://github.com/huggingface/transformers |
|
!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/Yugo60-GPT", torch_dtype="auto" |
|
) |
|
|
|
tokenizer = AutoTokenizer.from_pretrained( |
|
"datatab/Yugo60-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") |
|
``` |