Views
No views yet

1from transformers import AutoModelForCausalLM, AutoTokenizer
2import torch
3
4model_name = "tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826"
5
6# this requires over 140GB of VRAM
7model = AutoModelForCausalLM.from_pretrained(
8 model_name,
9 dtype="auto",
10 device_map="auto"
11)
12
13tokenizer = AutoTokenizer.from_pretrained(model_name)
14
15messages = [
16 {"role": "user", "content": "Kas sa räägid eesti keelt?"}
17]
18
19text = tokenizer.apply_chat_template(
20 messages,
21 tokenize=False,
22 add_generation_prompt=True
23)
24
25model_inputs = tokenizer(text, return_tensors="pt").to(model.device)
26
27generated_ids = model.generate(
28 **model_inputs,
29 max_new_tokens=128,
30 do_sample=True,
31 temperature=0.4,
32 # specify eos token to stop at the end of the assistant response
33 eos_token_id=tokenizer.eos_token_id,
34)
35
36# generated_ids include the input tokens as well, so we only decode new tokens
37response = tokenizer.decode(
38 generated_ids[0][model_inputs["input_ids"].shape[1]:],
39 skip_special_tokens=True,
40)
41
42print(response)deepseek-ai/DeepSeek-V3-0324 on some of the benchmarks.| Model (# parameters ↓) | IFEval-et |
|---|---|
| moonshotai/Kimi-K2-Instruct | 0.7891 |
| deepseek-ai/DeepSeek-V3.2 | 0.7221 |
| deepseek-ai/DeepSeek-V3-0324 | 0.7171 |
| mistralai/Mistral-Large-3-675B-Instruct-2512 | 0.7097 |
| meta-llama/Llama-3.1-405B-Instruct | 0.7159 |
| Qwen/Qwen2.5-72B-Instruct | 0.7407 |
| meta-llama/Llama-3.3-70B-Instruct | 0.7705 |
| meta-llama/Llama-3.1-70B-Instruct | 0.6836 |
| tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826 | 0.7581 |
| swiss-ai/Apertus-70B-Instruct-2509 | 0.5993 |
| google/gemma-3-27b-it | 0.7655 |
| utter-project/EuroLLM-22B-Instruct-2512 | 0.6414 |
| google/gemma-3-12b-it | 0.7556 |
| utter-project/EuroLLM-9B-Instruct-2512 | 0.5571 |
| utter-project/EuroLLM-9B-Instruct | 0.5397 |
| mistralai/Ministral-3-8B-Instruct-2512 | 0.4888 |
| swiss-ai/Apertus-8B-Instruct-2509 | 0.5484 |
| meta-llama/Llama-3.1-8B-Instruct | 0.3797 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-1125 | 0.6141 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-0825 | 0.5174 |
| BSC-LT/salamandra-7b-instruct-2606 | 0.6464 |
| BSC-LT/salamandra-7b-instruct | 0.5195 |
| tartuNLP/Llammas | 0.3524 |
| Qwen/Qwen2.5-7B-Instruct | 0.4988 |
| CohereLabs/tiny-aya-global | 0.6687 |
| Model (# parameters ↓) | IFEval-en |
|---|---|
| Qwen/Qwen2.5-72B-Instruct | 0.8843 |
| meta-llama/Llama-3.3-70B-Instruct | 0.9281 |
| meta-llama/Llama-3.1-70B-Instruct | 0.8904 |
| tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826 | 0.9147 |
| swiss-ai/Apertus-70B-Instruct-2509 | 0.5993 |
| google/gemma-3-27b-it | 0.8660 |
| utter-project/EuroLLM-22B-Instruct-2512 | 0.8210 |
| google/gemma-3-12b-it | 0.8526 |
| utter-project/EuroLLM-9B-Instruct-2512 | 0.7564 |
| utter-project/EuroLLM-9B-Instruct | 0.7004 |
| mistralai/Ministral-3-8B-Instruct-2512 | 0.6845 |
| swiss-ai/Apertus-8B-Instruct-2509 | 0.7808 |
| meta-llama/Llama-3.1-8B-Instruct | 0.8106 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-1125 | 0.8173 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-0825 | 0.7527 |
| tartuNLP/Llammas | 0.4373 |
| BSC-LT/salamandra-7b-instruct-2606 | 0.7588 |
| BSC-LT/salamandra-7b-instruct | 0.3289 |
| Qwen/Qwen2.5-7B-Instruct | 0.7954 |
| Model (# parameters ↓) | Grammar-et | Inflection-et | Word-Meanings-et |
|---|---|---|---|
| moonshotai/Kimi-K2-Instruct | 0.916 | 0.6458 | 0.9689 |
| deepseek-ai/DeepSeek-V3.2 | 0.781 | 0.6891 | 0.8134 |
| deepseek-ai/DeepSeek-V3-0324 | 0.364 | 0 | 0 |
| mistralai/Mistral-Large-3-675B-Instruct-2512 | 0.796 | 0.8355 | 0.9488 |
| meta-llama/Llama-3.1-405B-Instruct | 0.818 | 0.9089 | 0.9438 |
| Qwen/Qwen2.5-72B-Instruct | 0.694 | 0.5208 | 0.9057 |
| meta-llama/Llama-3.3-70B-Instruct | 0.797 | 0.6421 | 0.9408 |
| meta-llama/Llama-3.1-70B-Instruct | 0.800 | 0.6351 | 0.9248 |
| tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826 | 0.8950 | 0.9142 | 0.9719 |
| swiss-ai/Apertus-70B-Instruct-2509 | 0.736 | 0.3761 | 0.9428 |
| google/gemma-3-27b-it | 0.817 | 0.5934 | 0.9529 |
| utter-project/EuroLLM-22B-Instruct-2512 | 0.700 | 0.5913 | 0.9488 |
| google/gemma-3-12b-it | 0.789 | 0.4227 | 0.9318 |
| utter-project/EuroLLM-9B-Instruct-2512 | 0.644 | 0.4466 | 0.9288 |
| utter-project/EuroLLM-9B-Instruct | 0.764 | 0.367 | 0.9258 |
| mistralai/Ministral-3-8B-Instruct-2512 | 0.562 | 0.4833 | 0.8395 |
| swiss-ai/Apertus-8B-Instruct-2509 | 0.512 | 0.3662 | 0.9027 |
| meta-llama/Llama-3.1-8B-Instruct | 0.657 | 0.4165 | 0.8335 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-1125 | 0.831 | 0.5777 | 0.9619 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-0825 | 0.692 | 0.5188 | 0.9569 |
| BSC-LT/salamandra-7b-instruct-2606 | 0.7310 | 0.2619 | 0.7803 |
| BSC-LT/salamandra-7b-instruct | 0.594 | 0.2668 | 0.8084 |
| Qwen/Qwen2.5-7B-Instruct | 0.598 | 0.4136 | 0.7984 |
| tartuNLP/Llammas | 0.529 | 0.2289 | 0.5326 |
| CohereLabs/tiny-aya-global | 0.563 | 0.3221 | 0.8455 |
| Model (# parameters ↓) | Winogrande-et | Trivia-et | Exam-et | GlobalPIQA-et | TruthfulQA-et |
|---|---|---|---|---|---|
| moonshotai/Kimi-K2-Instruct | 0.8138 | 0.4225 | 0.8414 | 0.79 | 0.7136 |
| deepseek-ai/DeepSeek-V3.2 | 0.4805 | 0.38 | 0.614 | 0.7 | 0.5863 |
| deepseek-ai/DeepSeek-V3-0324 | 0.8042 | 0.27 | 0.1221 | 0.04 | 0.2093 |
| mistralai/Mistral-Large-3-675B-Instruct-2512 | 0.7487 | 0.4275 | 0.7931 | 0.73 | 0.6854 |
| meta-llama/Llama-3.1-405B-Instruct | 0.7878 | 0.4713 | 0.8309 | 0.58 | 0.7001 |
| Qwen/Qwen2.5-72B-Instruct | 0.7227 | 0.315 | 0.7162 | 0.65 | 0.6683 |
| meta-llama/Llama-3.3-70B-Instruct | 0.7397 | 0.3875 | 0.7652 | 0.58 | 0.6255 |
| meta-llama/Llama-3.1-70B-Instruct | 0.7872 | 0.3638 | 0.7726 | 0.49 | 0.6304 |
| tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826 | 0.8393 | 0.4475 | 0.7831 | 0.74 | 0.6781 |
| swiss-ai/Apertus-70B-Instruct-2509 | 0.6604 | 0.3862 | 0.6320 | 0.27 | 0.4529 |
| google/gemma-3-27b-it | 0.7510 | 0.325 | 0.7751 | 0.71 | 0.5814 |
| utter-project/EuroLLM-22B-Instruct-2512 | 0.6882 | 0.3862 | 0.6952 | 0.51 | 0.4321 |
| google/gemma-3-12b-it | 0.6712 | 0.3237 | 0.7069 | 0.54 | 0.3158 |
| utter-project/EuroLLM-9B-Instruct-2512 | 0.5195 | 0.375 | 0.6097 | 0.52 | 0.399 |
| utter-project/EuroLLM-9B-Instruct | 0.5846 | 0.3738 | 0.5589 | 0.55 | 0.2889 |
| mistralai/Ministral-3-8B-Instruct-2512 | 0.5812 | 0.3125 | 0.5012 | 0.48 | 0.3525 |
| swiss-ai/Apertus-8B-Instruct-2509 | 0.5105 | 0.345 | 0.552 | 0.59 | 0.366 |
| meta-llama/Llama-3.1-8B-Instruct | 0.5399 | 0.2888 | 0.5 | 0.54 | 0.437 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-1125 | 0.6440 | 0.4288 | 0.6332 | 0.68 | 0.3794 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-0825 | 0.5812 | 0.425 | 0.5093 | 0.63 | 0.3525 |
| BSC-LT/salamandra-7b-instruct-2606 | 0.5054 | 0.2838 | 0.2875 | 0.49 | 0.2191 |
| BSC-LT/salamandra-7b-instruct | 0.2878 | 0.2875 | 0.3556 | 0.55 | 0.3011 |
| Qwen/Qwen2.5-7B-Instruct | 0.5473 | 0.2938 | 0.4913 | 0.57 | 0.4113 |
| tartuNLP/Llammas | 0.5037 | 0.2838 | 0.3649 | 0.01 | 0.2032 |
| CohereLabs/tiny-aya-global | 0.5603 | 0.31 | 0.5638 | 0.52 | 0.3782 |
| Model (# parameters ↓) | Winogrande | GlobalPIQA-en | TruthfulQA | MMLU-Redux | GSM8K |
|---|---|---|---|---|---|
| Qwen/Qwen2.5-72B-Instruct | 0.8347 | 0.95 | 0.8115 | 0.8604 | 0.8180 |
| meta-llama/Llama-3.3-70B-Instruct | 0.7980 | 0.93 | 0.7038 | 0.8351 | 0.9363 |
| meta-llama/Llama-3.1-70B-Instruct | 0.8308 | 0.89 | 0.7319 | 0.8276 | 0.9393 |
| tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826 | 0.8223 | 0.92 | 0.7356 | 0.8058 | 0.9265 |
| swiss-ai/Apertus-70B-Instruct-2509 | 0.6763 | 0.61 | 0.5704 | 0.6475 | 0.7225 |
| google/gemma-3-27b-it | 0.7561 | 0.90 | 0.6732 | 0.7996 | 0.9083 |
| utter-project/EuroLLM-22B-Instruct-2512 | 0.6735 | 0.21 | 0.4896 | 0.6315 | 0.63 |
| google/gemma-3-12b-it | 0.6967 | 0.90 | 0.6169 | 0.7531 | 0.8749 |
| utter-project/EuroLLM-9B-Instruct-2512 | 0.5546 | 0.58 | 0.4614 | 0.6334 | 0.4139 |
| utter-project/EuroLLM-9B-Instruct | 0.5059 | 0.58 | 0.2962 | 0.5741 | 0.5944 |
| mistralai/Ministral-3-8B-Instruct-2512 | 0.6503 | 0.77 | 0.519 | 0.7418 | 0.3927 |
| swiss-ai/Apertus-8B-Instruct-2509 | 0.5133 | 0.73 | 0.3831 | 0.6099 | 0.5936 |
| meta-llama/Llama-3.1-8B-Instruct | 0.5625 | 0.76 | 0.5239 | 0.6959 | 0.7710 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-1125 | 0.6118 | 0.76 | 0.3635 | 0.6606 | 0.7726 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-0825 | 0.6084 | 0.71 | 0.366 | 0.6388 | 0.7202 |
| tartuNLP/Llammas | 0.498 | 0 | 0.1971 | 0.3417 | 0.1456 |
| BSC-LT/salamandra-7b-instruct-2606 | 0.5110 | 0.49 | 0.0465 | 0.4919 | 0.5004 |
| BSC-LT/salamandra-7b-instruct | 0.4029 | 0.63 | 0.2717 | 0.5180 | 0.0076 |
| Qwen/Qwen2.5-7B-Instruct | 0.6627 | 0.83 | 0.5875 | 0.7555 | 0.7862 |
| Model | wmt24pp (BLEU ↑) |
|---|---|
| tartuNLP/Llama-3.1-EstLLM-70B-Instruct-0826 | 0.278 |
| BSC-LT/salamandraTA-7b-instruct | 0.2713 |
| utter-project/EuroLLM-22B-Instruct-2512 | 0.2707 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-1125 | 0.2635 |
| tartuNLP/Llama-3.1-EstLLM-8B-Instruct-0825 | 0.264 |
| utter-project/EuroLLM-9B-Instruct | 0.2602 |
| utter-project/EuroLLM-9B-Instruct-2512 | 0.2567 |
| swiss-ai/Apertus-70B-Instruct-2509 | 0.2497 |
| swiss-ai/Apertus-8B-Instruct-2509 | 0.2372 |
| meta-llama/Llama-3.1-70B-Instruct | 0.2261 |
| meta-llama/Llama-3.3-70B-Instruct | 0.2208 |
| BSC-LT/salamandra-7b-instruct-2606 | 0.1731 |
| Qwen/Qwen2.5-72B-Instruct | 0.1551 |
| tartuNLP/Llammas | 0.1472 |
| meta-llama/Llama-3.1-8B-Instruct | 0.1406 |
| BSC-LT/salamandra-7b-instruct | 0.1201 |
| Qwen/Qwen2.5-7B-Instruct | 0.0476 |
| google/gemma-3-12b-it | 0.0449 |
| google/gemma-3-27b-it | 0.0188 |
@misc{dorkin2026estllmenhancingestoniancapabilities,
title={{EstLLM: Enhancing Estonian Capabilities in Multilingual LLMs via Continued Pretraining and Post-Training}},
author={Aleksei Dorkin and Taido Purason and Emil Kalbaliyev and Hele-Andra Kuulmets and Marii Ojastu and Mark Fišel and Tanel Alumäe and Eleri Aedmaa and Krister Kruusmaa and Kairit Sirts},
year={2026},
eprint={2603.02041},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2603.02041},
}