🚀 Mistral-7B-Instruct-Ukrainian
Mistral-7B-UK is a Large Language Model finetuned for the Ukrainian language, offering enhanced language capabilities for Ukrainian users.
🚀 Quick Start
Mistral-7B-UK is a Large Language Model finetuned for the Ukrainian language. It's trained using the following steps:
- Initial finetuning of Mistral-7B-v0.2 using structured and unstructured datasets.
- SLERP merge of the finetuned model with a model that performs better than
Mistral-7B-v0.2
on OpenLLM
benchmark: NeuralTrix-7B
- DPO of the final model.
✨ Features
Instruction format
To leverage instruction fine - tuning, your prompt should be surrounded by [INST]
and [/INST]
tokens.
For example:
text = "[INST]Відповідайте лише буквою правильної відповіді: Елементи експресіонізму наявні у творі: A. «Камінний хрест», B. «Інститутка», C. «Маруся», D. «Людина»[/INST]"
This format is available as a chat template via the apply_chat_template()
method.
Model Architecture
This instruction model is based on Mistral-7B-v0.2, a transformer model with the following architecture choices:
- Grouped - Query Attention
- Sliding - Window Attention
- Byte - fallback BPE tokenizer
Datasets
Structured
- [UA - SQUAD](https://huggingface.co/datasets/FIdo - AI/ua - squad/resolve/main/ua_squad_dataset.json)
- [Ukrainian StackExchange](https://huggingface.co/datasets/zeusfsx/ukrainian - stackexchange)
- [UAlpaca Dataset](https://github.com/robinhad/kruk/blob/main/data/cc - by - nc/alpaca_data_translated.json)
- Ukrainian Subset from Belebele Dataset
- Ukrainian Subset from XQA
- [ZNO Dataset provided in UNLP 2024 shared task](https://github.com/unlp - workshop/unlp - 2024 - shared - task/blob/main/data/zno.train.jsonl)
Unstructured
DPO
- Ukrainian translation of [distilabel - indel - orca - dpo - pairs](https://huggingface.co/datasets/argilla/distilabel - intel - orca - dpo - pairs)
📦 Installation
!pip install -qU transformers accelerate
💻 Usage Examples
Basic Usage
from transformers import AutoTokenizer
import transformers
import torch
model = "SherlockAssistant/Mistral-7B-Instruct-Ukrainian"
messages = [{"role": "user", "content": "What is a large language model?"}]
tokenizer = AutoTokenizer.from_pretrained(model)
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
pipeline = transformers.pipeline(
"text-generation",
model=model,
torch_dtype=torch.bfloat16,
device_map="auto",
)
outputs = pipeline(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
print(outputs[0]["generated_text"])
📚 Documentation
Instruction Format
In order to use the instruction fine - tuning, your prompt should follow the format surrounded by [INST]
and [/INST]
tokens. You can also use the apply_chat_template()
method to get the chat template.
Model Architecture
The model is based on Mistral - 7B - v0.2, with Grouped - Query Attention, Sliding - Window Attention, and Byte - fallback BPE tokenizer.
Datasets
The model is trained on various structured, unstructured, and DPO datasets, which are listed above.
📄 License
This project uses the apache - 2.0 license.
📚 Citation
If you are using this model in your research and publishing a paper, please help by citing our paper:
BibTeX
@inproceedings{boros-chivereanu-dumitrescu-purcaru-2024-llm-uk,
title = "Fine-tuning and Retrieval Augmented Generation for Question Answering using affordable Large Language Models",
author = "Boros, Tiberiu and Chivereanu, Radu and Dumitrescu, Stefan Daniel and Purcaru, Octavian",
booktitle = "Proceedings of the Third Ukrainian Natural Language Processing Workshop, LREC-COLING",
month = may,
year = "2024",
address = "Torino, Italy",
publisher = "European Language Resources Association",
}
APA
Boros, T., Chivereanu, R., Dumitrescu, S., & Purcaru, O. (2024). Fine - tuning and Retrieval Augmented Generation for Question Answering using affordable Large Language Models. In Proceedings of the Third Ukrainian Natural Language Processing Workshop, LREC - COLING. European Language Resources Association.
MLA
Boros, Tiberiu, Radu, Chivereanu, Stefan Daniel, Dumitrescu, Octavian, Purcaru. "Fine - tuning and Retrieval Augmented Generation for Question Answering using affordable Large Language Models." Proceedings of the Third Ukrainian Natural Language Processing Workshop, LREC - COLING. European Language Resources Association, 2024.
Chicago
Boros, Tiberiu, Radu, Chivereanu, Stefan Daniel, Dumitrescu, and Octavian, Purcaru. "Fine - tuning and Retrieval Augmented Generation for Question Answering using affordable Large Language Models." . In Proceedings of the Third Ukrainian Natural Language Processing Workshop, LREC - COLING. European Language Resources Association, 2024.