CoolFace
Modelpublic

aghasalim/siba-meristem-1.0

sourceHugging Faceotherupdated 1d agoView on Hugging Face
0likes59downloads
Model Card

<div align="center">

SIBA Meristem 1.0

Multilingual Large Language Model for Caucasian and Eurasian Languages

![License: Qwen Research-red.svg)](https://huggingface.co/Qwen/Qwen2.5-3B-Instruct/blob/main/LICENSE) ![Model Size](https://huggingface.co/aghasalim/siba-meristem-1.0) ![Base Model](https://huggingface.co/Qwen/Qwen2.5-3B-Instruct) ![GGUF](https://huggingface.co/aghasalim/siba-meristem-1.0) ![Ollama](https://ollama.com/aghasalim/siba-meristem-1.0)

Azerbaijani | Russian | English | Turkish

An open multilingual adapter aimed at Azerbaijani and the Caucasus, for research use.

</div>


Update, 25 September 2026: licence corrected, first benchmark, version 1.0.1

Licence. Meristem is an adapter on Qwen2.5-3B-Instruct, which is under the Qwen Research License (research use only, non-commercial). An adapter cannot carry a looser licence than the model it modifies, and part of its training data (tatsu-lab/alpaca) is CC BY-NC 4.0, so this repository was wrongly labelled Apache 2.0. It is now labelled correctly and a copy of the Qwen Research License is in LICENSE.

First benchmark. Measured on azbench, 2,148 zero-shot Azerbaijani multiple-choice questions, exact-letter scoring, run locally in Q4KM:

ModelReading (Belebele, 900)Exams (INCLUDE, 548)School (TUMLU, 700)Average
Qwen2.5-3B-Instruct (the base)43.9 %39.4 %35.1 %39.5 %
Meristem 1.035.8 %33.6 %29.4 %32.9 %

Meristem 1.0 scores below its own base. It was released at step 500 of a planned 31,461 and learned to favour the letter "C" (82 % of its answers on the reading set).

Version 1.0.1 (in `v1.0.1/`) continues the same LoRA for 20 optimizer steps on letter-balanced Azerbaijani cloze questions built from Azerbaijani Wikipedia (CC BY-SA), loss on the answer letter only, none of it from the azbench test sets. On the first 300 reading questions (all three models in Q4KM, temperature 0, Qwen's default system prompt):

ModelReading, first 300Letters chosen A / B / C / D
Qwen2.5-3B-Instruct (base)49.0 %88 / 70 / 63 / 79
Meristem 1.040.7 %15 / 27 / 233 / 25
Meristem 1.0.146.3 %70 / 62 / 69 / 99

1.0.1 removes the "C" bias and recovers most of the loss, but is still below the base model. It is a repair, not an improvement over Qwen2.5-3B-Instruct. The next Meristem will be built on a commercially licensed base and only released if it beats that base on azbench.


Highlights

  • —167,785 multilingual instruction pairs (~32.5M tokens) spanning 4 languages
  • —QLoRA fine-tuned on Qwen2.5-3B-Instruct with Unsloth for maximum efficiency
  • —Training loss reduced from 2.49 to 1.26 (49.4% reduction) over 500 gradient steps
  • —Available in GGUF Q4_K_M (1.8 GB) for efficient local inference
  • —Available as LoRA adapters for custom fine-tuning and research
  • —Runs on consumer hardware -- 4GB+ VRAM sufficient for inference

Training Details

Architecture and Method

ParameterValue
Base ModelQwen/Qwen2.5-3B-Instruct (3 billion parameters)
Fine-Tuning MethodQLoRA (4-bit NF4 quantization via bitsandbytes)
PEFT LibraryUnsloth + PEFT v0.20.0
LoRA Rank (r)16
LoRA Alpha32
LoRA Dropout0.0
Target Modulesq_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
Trainable Parameters~42M (of 3B total)
Batch Size1 (with gradient accumulation)
Max Sequence Length8192 tokens
PrecisionBF16 mixed precision
OptimizerAdamW
Learning Rate2e-4 (cosine schedule with warmup)
Total Training Steps31,461 planned (3 epochs)
HardwareNVIDIA GTX 1660 Ti (6GB VRAM), AMD Ryzen 5 4600H, 16GB RAM

Training Loss Curve

StepLossEpochGradient Norm
252.4910.0021.120
501.7250.0050.588
1001.4070.0100.499
1501.4300.0141.157
2001.3670.0190.694
2501.3460.0240.627
3001.3100.0290.585
3501.2950.0330.526
4001.2780.0380.563
4501.3290.0430.505
5001.2620.0480.530
Loss reduction: 2.491 to 1.262 (49.4% improvement)

Dataset Composition

LanguageSamplesPercentageSources
English~60,00035.7%FineTome-100k, Alpaca, OpenAssistant
Azerbaijani~40,00023.8%Translated instructions, cultural QA, regional knowledge
Russian~38,00022.6%Multilingual instruction sets, translated pairs
Turkish~30,00017.9%Instruction translations, conversational data
Total167,785100%~32.5M tokens

Quick Start

Option 1: Ollama (Easiest)

bash
# Install Ollama from https://ollama.ai, then:
ollama run aghasalim/siba-meristem-1.0

Option 2: llama.cpp / LM Studio

Download Qwen2.5-3B-Instruct.Q4_K_M.gguf from this repository and load it in any GGUF-compatible runtime:

bash
# llama.cpp example
./llama-cli -m Qwen2.5-3B-Instruct.Q4_K_M.gguf \
  -p "<|im_start|>user\nSalam! Azerbaycan haqqinda melumat ver.<|im_end|>\n<|im_start|>assistant\n" \
  -n 256 --temp 0.7 --top-p 0.9

Option 3: Transformers + PEFT (Python)

python
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch

# Load base model and LoRA adapter
base_model_id = "Qwen/Qwen2.5-3B-Instruct"
adapter_id = "aghasalim/siba-meristem-1.0"

tokenizer = AutoTokenizer.from_pretrained(base_model_id)
model = AutoModelForCausalLM.from_pretrained(
    base_model_id,
    torch_dtype=torch.float16,
    device_map="auto"
)
model = PeftModel.from_pretrained(model, adapter_id)

# Chat in Azerbaijani
messages = [
    {"role": "system", "content": "Sen SIBA Meristem 1.0, coxdilli AI komekcisin."},
    {"role": "user", "content": "Baki seheri haqqinda qisa melumat ver."}
]

prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)

with torch.no_grad():
    outputs = model.generate(
        **inputs,
        max_new_tokens=512,
        temperature=0.7,
        top_p=0.9,
        repetition_penalty=1.1,
        do_sample=True
    )

response = tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True)
print(response)

Option 4: Unsloth (Fastest Inference)

python
from unsloth import FastLanguageModel

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name="aghasalim/siba-meristem-1.0",
    max_seq_length=8192,
    load_in_4bit=True,
)
FastLanguageModel.for_inference(model)

messages = [
    {"role": "user", "content": "Hello! Tell me about yourself."}
]

inputs = tokenizer.apply_chat_template(
    messages, tokenize=True, add_generation_prompt=True, return_tensors="pt"
).to("cuda")

outputs = model.generate(input_ids=inputs, max_new_tokens=256, temperature=0.7)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Repository Contents

FileSizeDescription
Qwen2.5-3B-Instruct.Q4_K_M.gguf1.8 GB4-bit quantized GGUF model for Ollama / llama.cpp / LM Studio
adapter_model.safetensors120 MBLoRA adapter weights (compatible with PEFT / Unsloth)
adapter_config.json1.3 KBLoRA configuration (rank, alpha, target modules)
tokenizer.json11.4 MBFull tokenizer vocabulary
tokenizer_config.json4.4 KBTokenizer settings and special tokens
chat_template.jinja2.5 KBQwen2.5 chat template for proper formatting
Modelfile1.7 KBOllama Modelfile for local model creation
training/trainer_state.json--Full training log with per-step loss history
training/training_args.bin--Serialized training hyperparameters
v1.0.1/Meristem-1.0.1.Q4_K_M.gguf1.9 GBVersion 1.0.1, merged and quantized (Q4KM)
v1.0.1/adapter_model.safetensors120 MBVersion 1.0.1 LoRA adapter
v1.0.1/adapter_config.json1.3 KBVersion 1.0.1 LoRA configuration
v1.0.1/Modelfile1.7 KBOllama Modelfile for version 1.0.1
LICENSE--Qwen Research License Agreement, which governs this model

Multilingual Examples

<details> <summary><b>Azerbaijani Example</b></summary>

User: Azerbaijan metbexinin en meshur yemekleri hansilardir?

SIBA: Azerbaijan metbexi zengin ve muxtelifdir. En meshur yemekler bunlardir:

1. Plov (As) -- Azerbaijan metbexinin taci sayilir
2. Dolma -- Uzum yarpagina bukulmus et-duyu qarisigi
3. Qutab -- Nazik xemirden hazirlanan yasti borek
4. Piti -- Susa bolgesinin enenevi sorbasi
5. Lulekabab -- Manqalda bisirilen et kabab

</details>

<details> <summary><b>Russian Example</b></summary>

User: Explain the difference between machine learning and deep learning.

SIBA: Machine learning (ML) and deep learning (DL) are related but distinct fields:

Machine learning is a broad area of AI where algorithms learn from data...
Deep learning is a subset of ML that uses neural networks with many layers...

</details>

<details> <summary><b>Turkish Example</b></summary>

User: Turkiye'nin en guzel turistik yerleri nerelerdir?

SIBA: Turkiye, zengin tarihi ve dogal guzellikleriyle dolu bir ulkedir:

1. Istanbul -- Ayasofya, Topkapi Sarayi, Kapalicars
2. Kapadokya -- Peri bacalari ve sicak hava balonlari
3. Pamukkale -- Beyaz travertenler ve antik Hierapolis

</details>

<details> <summary><b>English Example</b></summary>

User: What makes the Caucasus region culturally unique?

SIBA: The Caucasus region is one of the most culturally diverse areas on Earth:

1. Linguistic Diversity -- Over 50 distinct languages spoken across a relatively small area
2. Ancient Heritage -- Civilizations dating back to the Bronze Age
3. Cultural Crossroads -- Intersection of European, Asian, and Middle Eastern influences

</details>


Limitations and Known Issues

  • —Early checkpoint: This is from step 500 of a planned 31,461-step training run. That run was not continued; see the update at the top.
  • —Azerbaijani understanding: On azbench, Meristem 1.0 scores below its base model (32.9 % against 39.5 %), and 1.0.1 is still below it on the reading set. Do not assume it understands Azerbaijani better than Qwen2.5-3B-Instruct.
  • —Factual accuracy: Like all LLMs, the model may generate plausible-sounding but incorrect information. Always verify critical facts.
  • —Context window: The model supports up to 8,192 tokens of context.
  • —Not safety-tuned: This model has not undergone RLHF or constitutional AI safety training beyond what is inherited from Qwen2.5-3B-Instruct.

License

This model is governed by the Qwen Research License Agreement of its base model, Qwen2.5-3B-Instruct: research and evaluation use only, not commercial use. A copy is in `LICENSE`. Part of the training data (tatsu-lab/alpaca) is also CC BY-NC 4.0.

Until 25 September 2026 this repository was labelled Apache 2.0. That label was wrong and has been corrected; it did not change the terms of the base model, which always applied.


Links


Acknowledgments


Contact

Developer: Aghasalim Mustafazada Hugging Face: @aghasalim Ollama: @aghasalim


<div align="center"> <i>SIBA Meristem -- Growing intelligence, one language at a time.</i> </div>