File size: 32,211 Bytes
f59dd48 bb51acf 249d7c6 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f e45b560 f7f153f 1232ca6 f7f153f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 |
---
license: apache-2.0
language:
- ru
- en
pipeline_tag: text-generation
tags:
- nlp
- chat
base_model:
- Qwen/Qwen2.5-1.5B-Instruct
library_name: transformers
---
# Meno-Tiny-0.1
Meno-Tiny-0.1 is a descendant of the [Qwen2.5-1.5B-Instruct](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct) model, which was fine-tuned on a special Russian instruct dataset. It is a 1.5B parameter language model with a decoder. It is based on the Transformer architecture with SwiGLU activation, attention QKV bias, group query attention, etc. The name "Meno" is associated with the adaptation of this model for answering questions from text in the RAG pipeline (in honor of the theory of knowledge as recollection from the Socratic dialogue "Meno").
## Requirements
The code of Meno-Tiny-0.1 has been in the latest Hugging face `transformers` and we advise you to use the latest version of `transformers`.
With `transformers<4.37.0`, you will encounter the following error:
```
KeyError: 'qwen2'
```
## Quickstart
Here, we provide a code snippet with `apply_chat_template` to show you how to load the tokenizer and model and how to generate content.
Meno-Tiny-0.1 was specifically "Russified" during the fine-tuning stage, but it retained the ability to answer in English. The following are two examples of communication with Meno-Tiny-0.1 in English and Russian.
#### 1. Example of communication in English
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_name = "bond005/meno-tiny-0.1"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
gen_config = GenerationConfig.from_pretrained(model_name)
prompt = "Give me a short introduction to large language model." # in English
messages = [
{"role": "system", "content": "You are Meno, created by Ivan Bondarenko. You are a helpful assistant."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
generation_config=gen_config
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
```
#### 2. Example of communication in Russian
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_name = "bond005/meno-tiny-0.1"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
gen_config = GenerationConfig.from_pretrained(model_name)
prompt = "Напиши краткое введение в большие языковые модели." # in Russian
messages = [
{"role": "system", "content": "Ты - Менон, разработанный Иваном Бондаренко. Ты полезный ассистент."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
generation_config=gen_config
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
```
## Abilities of Meno-Tiny-0.1
Using Meno-Tiny-0.1 with different system and user prompts allows you to discover its various abilities. The main tasks that Meno-Tiny-0.1 can solve, including in the few-shot prompting mode, are:
- Answering questions about the text;
- Summarization;
- Determining text toxicity and detoxifying the text;
- Anaphora resolution;
- Correcting speech recognition errors;
- and so on.
Below are some examples of how to communicate with Meno-Tiny-0.1 in Russian in order to solve a variety of specialized tasks.
#### 1. The answer to the question about the document
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_name = "bond005/meno-tiny-0.1"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
gen_config = GenerationConfig.from_pretrained(model_name)
prompt = "Ответь на вопрос по тексту.\n\nВопрос: {question}\n\nТекст: {context}".format(
question="Где живут пингвины?",
context="Ныне пингвины наиболее разнообразны на островах Субантарктики; в целом распространение группы связано с холодными океаническими течениями Южного полушария, вдоль которых пингвины проникают далеко на север – в субтропики Южной Америки (гумбольдтов и магелланов пингвины), Африки (очковый пингвин Spheniscus demersus), Австралии (малый пингвин) и даже к экваториальным Островам Галапагос (эндемичный галапагосский пингвин, Spheniscus mendiculus). На Фолклендских островах симпатрично обитают 5 видов. Лишь 3 вида – императорский, антарктический (Pygoscelis antarcticus) пингвины и пингвин Адели (Pygoscelis adeliae) – населяют береговую кромку ледового щита Антарктиды. Северная граница распространения большинства пингвинов определяется изотермой морской воды +15…+16 °С."
)
messages = [
{"role": "system", "content": "Ты - Менон, разработанный Иваном Бондаренко. Ты полезный ассистент."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
generation_config=gen_config
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
```
#### 2. Summarization
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_name = "bond005/meno-tiny-0.1"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
gen_config = GenerationConfig.from_pretrained(model_name)
prompt = "Стали известны результаты, полученные открытой системой «Писец» на ежегодной акции «Тотальный диктант», которая состоялась 20 апреля. Напомним, что «Писец» был разработан научным сотрудником Лаборатории прикладных цифровых технологий Международного научно-образовательного математического центра НГУ и сооснователем стартапа «Сибирские нейросети» Иваном Бондаренко. Впервые искусственный интеллект соревновался в грамотности с человеческим в рамках задачи диктанта, и создатель «Писца» предполагал, что положительной оценки тот не получит — скорее всего, система допустит минимум орфографических ошибок, однако с расставлением знаков препинания вряд ли справится. \n\nРазработчикам «Писца» было важно собрать статистику о разнообразии совершаемых им ошибок и неточностей, чтобы в дальнейшем усовершенствовать систему. Результаты оказались неожиданными, но закономерными – «Писец» вполне удовлетворительно расставил запятые и разбил текст на абзацы. Для этого его специально научили улавливать в речи «кодовые фразы» вроде «пишем с красной строки» или «переходим на новый абзац». В этих целях использовалась отдельная нейросеть, обученная на базе Longformer выделять такие «внесюжетные» вставки наподобие системы NER (Named Entity Recognition - распознавание именованных сущностей). Для обучения использовался синтетический текстовый корпус. Сам же «Писец» использовал в своей работе связку Wav2Vec2-Large-Ru-Golos + Whisper-Podlodka (о Wav2Vec2-Large-Ru-Golos мы ранее писали https://www.nsu.ru/n/media/news/nauka/razrabotannuyu-professorom-ngu-model-raspoznavaniya-rechi-nauchili-razlichat-emotsii, а Whisper-Podlodka является новой моделью). Однако галлюцинаций избежать не удалось.\n\nГаллюцинация — это ответ авторегрессионной нейросетевой модели языка, который корректен грамматически, но неверен семантически (не соответствует входному запросу по смыслу)."
messages = [
{"role": "system", "content": "Перескажи кратко текст."},
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
generation_config=gen_config
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
```
#### 3. Anaphora resolution in dialogue (with few-shot prompting)
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_name = "bond005/meno-tiny-0.1"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
gen_config = GenerationConfig.from_pretrained(model_name)
user_prompt = "User: Кто сейчас ректор Новосибирского государственного университета?\nAssistant: Ректором Новосибирского государственного университета является Михаил Петрович Федорук, академик Российской академии наук, доктор физико-математических наук, профессор.\nUser: Какие у него научные интересы?"
few_shots_for_anaphora = [
{"role": "user", "content": "User: Что такое механико-математический факультет?\nAssistant: Механико-математический факультет НГУ — это факультет, выпускники которого осуществляют научные исследования и разработки для лучших компаний мира. Студент Механико-математического факультета учится преобразовывать свои разрозненные мысли в четко структурированные рассуждения, обладающие логической стройностью.\nUser: А там есть магистратура?"},
{"role": "assistant", "content": "А на механико-математическом факультете есть магистратура?"},
{"role": "user", "content": "User: Когда начинается приём документов в НГУ?\nAssistant: Приём документов в НГУ начинается 1 марта – для иностранных граждан и лиц без гражданства и 20 июня – для граждан Российской Федерации.\nUser: А когда он заканчивается?"},
{"role": "assistant", "content": "А когда приём документов в НГУ заканчивается?"},
{"role": "user", "content": "User: Кто основал Новосибирский Академгородок?\nAssistant: Новосибирский Академгородок основал Михаил Алексеевич Лаврентьев в 1957 году.\nUser: Чем же он занимался до этого?"},
{"role": "assistant", "content": "Чем же Михаил Алексеевич Лаврентьев занимался до основания Новосибирского Академгородка?"}
]
system_prompt_for_anaphora = [
{"role": "system", "content": "Перепиши текст последней реплики пользователя в диалоге так, что разрешить все ситуации местоименной анафоры в этом тексте. Замени анафорические местоимения соответствующими им существительными."}
]
messages = system_prompt_for_anaphora + few_shots_for_anaphora + [
{"role": "user", "content": user_prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
generation_config=gen_config
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
```
### 4. Correction of speech recognition output (with few-shot prompting)
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, GenerationConfig
model_name = "bond005/meno-tiny-0.1"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
gen_config = GenerationConfig.from_pretrained(model_name)
user_prompt = "то есть мы в каждый момент времени знаем про звук еще и какое то такое распределение частот и связанное это с тем что наше ухо на самом деле примерно также и воспринимать звук то есть мы не просто понимаем что вот где то там громче где то тише а наше уху еще понимает что вот этот звук выше этот ниже этот голос боле высокий этот голос низки"
few_shots_for_ASR_correction = [
{"role": "user", "content": "вы выборском районе города проводится проверка по факту нападению на квартиру"},
{"role": "assistant", "content": "В Выборгском районе города проводится проверка по факту нападения на квартиру."},
{"role": "user", "content": "в пораде победы на красной площади в москве премут участие свысше четырнадцать ты своим наслужащих в том числе одинствого музыканта всводного оркестра сообщил интерфакт словнвы четверг представителе правления прес службы и информацию именно борон рф по сухоопутным войскам полковник сергей власов"},
{"role": "assistant", "content": "В параде Победы на Красной площади в Москве примут участие свыше 14 тыс. военнослужащих, в том числе 1 100 музыкантов сводного оркестра, сообщил «Интерфаксу-АВН» в четверг представитель управления пресс-службы и информации Минобороны РФ по Сухопутным войскам полковник Сергей Власов."},
{"role": "user", "content": "главные потребители дискофс виндовс ими крософтов фикироссийские сборщики устанавливающие программные обеспечение прана выпускаемые ими компьютеры и серверы отсюда название а инверсия этой яверсия для оригиналгикоепментмано фактуер для сборщика"},
{"role": "assistant", "content": "Главные потребители дисков с «Windows» и «Microsoft Office» - российские сборщики, устанавливающие программное обеспечение (ПО) на выпускаемые ими компьютеры и серверы (отсюда название OEM-версия, т. е. версия для «Original Equipment Manufacturer», для сборщика)."},
{"role": "user", "content": "в две тысячи тринадцать год уконкурс гуглеский енки фаир организатором которого выступает компания гугле проводится в этретий раз веконку всемогут участвовать деть в возрасти от тринадцать да восемнадцать лет свои научные проекты участники от правляют на рассмотрения через интернетых изучает жури состоящие из ученых и сотрудников гогль он уже определяет девяносто региональных изатем пятнадцать глобальных феналистов"},
{"role": "assistant", "content": "В 2013 году конкурс Google Science Fair, организатором которого выступает компания Google, проводится в третий раз. В конкурсе могут участвовать дети в возрасте от 13 до 18 лет. Свои научные проекты участники отправляют на рассмотрение через интернет. Их изучает жюри, состоящее из ученых и сотрудников Google. Оно же определяет 90 региональных, а затем 15 глобальных финалистов."},
]
system_prompt_for_ASR_correction = [
{"role": "system", "content": "Исправь, пожалуйста, ошибки распознавания речи в следующем тексте, восстанови в нём знаки пунктуации и правильно расставь прописные и строчные буквы. Пиши свой ответ грамотно, с учётом морфологии и синтаксиса русского языка."}
]
messages = system_prompt_for_ASR_correction + few_shots_for_ASR_correction + [
{"role": "user", "content": user_prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
generation_config=gen_config
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
```
## Benchmarks
I report the results in the completion format for Meno-Tiny-0.1 on [MERA](https://mera.a-ai.ru/en), a well-known open-source independent benchmark for evaluating state-of-the-art models for the Russian language.
The MERA benchmark presents the results of solving more than 20 tasks for question answering, information retrieval, logic, commonsense reasoning, etc., for 59 large language models. I present selected results below. The full leaderboard is available at [https://mera.a-ai.ru/en/leaderboard](https://mera.a-ai.ru/en/leaderboard).
| Rank | Model | Size | Overall score |
|------|-----------------------------|--------|---------------|
| 1 | [GPT4o](https://mera.a-ai.ru/en/submits/11642) | - | 0.642 |
| 2 | [RuadaptQwen-32B-instruct](https://mera.a-ai.ru/en/submits/12189) | 32.0B | 0.615 |
| 3 | [Qwen2.5-32B-Instruct](https://mera.a-ai.ru/en/submits/12190) | 32.0B | 0.603 |
| ... | ... | ... | ... |
| 6 | [GigaChat Max](https://mera.a-ai.ru/en/submits/11905) | - | 0.588 |
| 7 | [Mistral-Large-Instruct-2407](https://mera.a-ai.ru/en/submits/11428) | 123.0B | 0.574 |
| 8 | [GPT4o-mini](https://mera.a-ai.ru/en/submits/11640) | - | 0.570 |
| ... | ... | ... | ... |
| 12 | [GigaChat Pro](https://mera.a-ai.ru/en/submits/11987) | - | 0.512 |
| 13 | [GigaChat](https://mera.a-ai.ru/en/submits/11986) | - | 0.500 |
| ... | ... | ... | ... |
| 19 | [Phi-3-medium-4k-instruct](https://mera.a-ai.ru/en/submits/11441) | 14.0B | 0.465 |
| ... | ... | ... | ... |
| 34 | [Yi-1.5-9B-Chat-16K](https://mera.a-ai.ru/en/submits/11313) | 14.0B | 0.373 |
| **35** | [**Meno-Tiny-0.1**](https://mera.a-ai.ru/en/submits/12543) |**1.5B**| **0.365**|
| 36 | [Qwen2.5 1.5B Instruct](https://mera.a-ai.ru/en/submits/11902) | 1.5B | 0.358 |
| ... | ... | ... | ... |
| 44 | [Mistral-7B-Instruct-v0.2](https://mera.a-ai.ru/en/submits/11777) | 7.2B | 0.318 |
| 45 | [Mistral-7B-Instruct-v0.3](https://mera.a-ai.ru/en/submits/11426) | 7.2B | 0.311 |
| 46 | [Yi-Coder-9B-Chat](https://mera.a-ai.ru/en/submits/12108) | 9.0B | 0.308 |
| ... | ... | ... | ... |
| 59 | [Qwen2.5-Math-1.5B-Instruct](https://mera.a-ai.ru/en/submits/12086) | 1.5B | 0.207 |
#### MultiQ Task
[MultiQ](https://mera.a-ai.ru/en/tasks/5) is a multi-hop question-answering (QA) dataset for the Russian language, suitable for general open-domain question answering, information retrieval, and reading comprehension tasks. The results on the MultiQ task are crucial for evaluating the effectiveness of large language model (LLM) applications in the Retrieval-Augmented Generation (RAG) pipeline.
| Rank | Model | Size | MultiQ score |
|------|-----------------------------|--------|---------------|
| 1 | [Mistral-Large-Instruct-2407](https://mera.a-ai.ru/en/submits/11428) | 123.0B | 0.630 / 0.471 |
| 2 |[Meta-Llama-3.1-405B-Instruct](https://mera.a-ai.ru/ru/submits/11370) | 405.0B | 0.623 / 0.453 |
| 3 | [Meta-Llama-3.1-70B-Instruct](https://mera.a-ai.ru/ru/submits/11415) | 70.6B | 0.607 / 0.443 |
| ... | ... | ... | ... |
| 7 | [GPT4o](https://mera.a-ai.ru/en/submits/11642) | - | 0.572 / 0.431 |
| ... | ... | ... | ... |
| 10 | [GPT4o-mini](https://mera.a-ai.ru/en/submits/11640) | - | 0.509 / 0.379 |
| 11 | [Mixtral-8x22B-Instruct-v0.1](https://mera.a-ai.ru/ru/submits/11778) | 140.6B | 0.521 / 0.366 |
| 12 | [Qwen2-57B-A14B-Instruct](https://mera.a-ai.ru/ru/submits/11570) | 57.4B | 0.480 / 0.348 |
| 13 |[ruadapt llama3-8B-instruct lep ft](https://mera.a-ai.ru/ru/submits/11734) | 8.4B | 0.483 / 0.334 |
| 14 | [GigaChat Max](https://mera.a-ai.ru/en/submits/11905) | - | 0.486 / 0.322 |
| ... | ... | ... | ... |
| 21 | [Qwen2.5-Coder-7B-Instruct](https://mera.a-ai.ru/ru/submits/12080) | 7.0B | 0.399 / 0.302 |
| **22** | [**Meno-Tiny-0.1**](https://mera.a-ai.ru/en/submits/12543) |**1.5B**| **0.399 / 0.29**|
| 23 | [Yi-1.5-34B-Chat](https://mera.a-ai.ru/ru/submits/11286) | 34.4B | 0.416 / 0.266 |
| ... | ... | ... | ... |
| 25 | [Qwen2.5-3B-Instruct](https://mera.a-ai.ru/ru/submits/12048) | 3.0B | 0.391 / 0.263 |
| 26 | [GigaChat](https://mera.a-ai.ru/ru/submits/11986) | - | 0.367 / 0.250 |
| ... | ... | ... | ... |
| 59 | [Qwen2.5-Math-7B-Instruct](https://mera.a-ai.ru/ru/submits/12102) | 7.0B | 0.003 / 0.000 |
## Intended Uses
### Primary Use Cases
Meno-Tiny-0.1 is intended for commercial and research use in Russian. Meno-Tiny-0.1 provides uses for general purpose AI systems and applications which require:
1) Memory/compute constrained environments
2) Latency bound scenarios
Meno-Tiny-0.1 is designed to accelerate research on language models, for use as a building block for Retrieval Augmented Generation (RAG) pipelines.
### Use Case Considerations
This model is not specifically designed or evaluated for all downstream purposes. Developers should consider common limitations of language models as they select use cases, and evaluate and mitigate for accuracy, safety, and fariness before using within a specific downstream use case, particularly for high risk scenarios. Developers should be aware of and adhere to applicable laws or regulations (including privacy, trade compliance laws, etc.) that are relevant to their use case.
***Nothing contained in this Model Card should be interpreted as or deemed a restriction or modification to the license the model is released under.***
## Responsible AI Considerations
Like other language models, Meno-Tiny-0.1 can potentially behave in ways that are unfair, unreliable, or offensive. Some of the limiting behaviors to be aware of include:
+ Quality of Service: Meno-Tiny-0.1 is fine-tuned primarily on Russian text. Languages other than Russian will experience worse performance as well as performance disparities across non-Russian.
+ Safety gaps: I believe it is important to make language models more widely available for Russian, but Meno-Tiny-0.1 still exhibits challenges common across multilingual releases, since Meno-Tiny-0.1 is based on the multilingual [Qwen2.5-1.5B-Instruct](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct) model. As with any deployment of LLMs, developers will be better positioned to test for performance or safety gaps for their linguistic and cultural context and customize Meno-Tiny-0.1 with additional fine-tuning and appropriate safeguards.
+ Representation of Harms & Perpetuation of Stereotypes: Meno-Tiny-0.1 can over- or under-represent groups of people, erase representation of some groups, or reinforce demeaning or negative stereotypes. Despite safety post-training, these limitations may still be present due to differing levels of representation of different groups, cultural contexts, or prevalence of examples of negative stereotypes in training data that reflect real-world patterns and societal biases.
+ Inappropriate or Offensive Content: Meno-Tiny-0.1 may produce other types of inappropriate or offensive content, which may make it inappropriate to deploy for sensitive contexts without additional mitigations that are specific to the case.
+ Information Reliability: Language models can generate nonsensical content or fabricate content that might sound reasonable but is inaccurate or outdated.
+ Long Conversation: Meno-Tiny-0.1, like other models, can in some cases generate responses that are repetitive, unhelpful, or inconsistent in very long chat sessions in both Russian and non-Russian languages. Developers are encouraged to place appropriate mitigations, like limiting conversation turns to account for the possible conversational drift.
Developers should apply responsible AI best practices, including mapping, measuring, and mitigating risks associated with their specific use case and cultural, linguistic context. Meno-Tiny-0.1 is general purpose model. As developers plan to deploy this model for specific use cases, they are encouraged to fine-tune the model for their use case and leverage the model as part of broader AI systems with language-specific safeguards in place. Important areas for consideration include:
+ Allocation: Meno-Tiny-0.1 may not be suitable for scenarios that could have consequential impact on legal status or the allocation of resources or life opportunities (ex: housing, employment, credit, etc.) without further assessments and additional debiasing techniques.
+ High-Risk Scenarios: Developers should assess the suitability of using Meno-Tiny-0.1 in high-risk scenarios where unfair, unreliable or offensive outputs might be extremely costly or lead to harm. This includes providing advice in sensitive or expert domains where accuracy and reliability are critical (ex: legal or health advice). Additional safeguards should be implemented at the application level according to the deployment context.
+ Misinformation: Meno-Tiny-0.1 may produce inaccurate information. Developers should follow transparency best practices and inform end-users they are interacting with an AI system. At the application level, developers can build feedback mechanisms and pipelines to ground responses in use-case specific, contextual information, a technique known as Retrieval Augmented Generation (RAG).
+ Generation of Harmful Content: Developers should assess outputs for their context and use available safety classifiers or custom solutions appropriate for their use case.
+ Misuse: Other forms of misuse such as fraud, spam, or malware production may be possible, and developers should ensure that their applications do not violate applicable laws and regulations.
## Citation
If you want to cite this model you can use this:
```bibtex
@misc{bondarenko2024meno,
title={Meno-Tiny: A Small Russian Language Model for Question Answering and Other Useful NLP Tasks in Russian},
author={Bondarenko, Ivan},
publisher={Hugging Face},
journal={Hugging Face Hub},
howpublished={\url{https://huggingface.co/bond005/meno-tiny-0.1}},
year={2024}
}
``` |