GLiNER 2.5 Multi-Decide Fine-Tune (Round 2 - SemIf Distillation)

Multi-task classification of Polish exam questions — a LoRA fine-tune of GLiNER2.5-multi-Decide on the matura.lol datasets (Jev & SemIf tags), by matura.lol.

Trained with authentic, verified teacher tags generated by SemIf-OpenJev (Qwen3.5-4B) alongside Jev (jev-1.13) on the matura.lol corpus (matematyka, fizyka, polski). Zero pseudo-labels; zero unverified tags.

The model classifies a Polish exam question along four dimensions in a single forward pass:

Task Description Labels
topic Subject-specific topic (per CKE informatory) Varies by subject
method Solution method fakty, analiza_zrodla, rachunek, interpretacja_danych, wypowiedz, gramatyka, algorytm, inne, doswiadczenie, dowod, rysunek_techniczny
answer_form Expected answer form krotka_odpowiedz, wybor, liczba, wypracowanie, prawda_falsz, wyrazenie, dowod, rysunek, inne, kod
difficulty Perceived difficulty łatwe, bardzo łatwe, średnie, trudne

Evaluation Benchmark (Held-out validation split)

Performance on the held-out validation split after SemIf distillation:

Task Accuracy Macro-F1 Notes
answer_form 95.56% 19.77% Highest accuracy across structural forms
method 90.00% 24.14% Strong classification across solution methods
difficulty 63.33% 35.90% Subjective difficulty assessment
Overall 82.96% — Average task accuracy across evaluation split
  • Zero pseudo-labels; zero unverified tags.
  • Substantial improvement over the initial baseline (~55.2% overall accuracy).

Model details

License

This model is released under the GNU Affero General Public License v3.0 (AGPL-3.0), matching the matura.lol datasets.

The base model fastino/GLiNER2.5-multi-Decide is Apache-2.0, which is permissive and permits relicensing derived works under a different (including copyleft) license. The fine-tune itself — including this adapter and the training setup — is distributed under AGPL-3.0, consistent with the rest of the matura.lol open-source project.

Usage

from gliner2 import AutoExtractor
from peft import PeftModel

base = AutoExtractor.from_pretrained("fastino/GLiNER2.5-multi-Decide", map_location="cpu")
model = PeftModel.from_pretrained(base, "matura-lol/GLiNER2.5-multi-Decide-finetune")

METHODS = ["fakty", "analiza_zrodla", "rachunek", "interpretacja_danych",
           "wypowiedz", "gramatyka", "algorytm", "inne", "doswiadczenie",
           "dowod", "rysunek_techniczny"]
FORMS = ["krotka_odpowiedz", "wybor", "liczba", "wypracowanie", "prawda_falsz",
         "wyrazenie", "dowod", "rysunek", "inne", "kod"]
DIFFICULTY = ["łatwe", "bardzo łatwe", "średnie", "trudne"]

schema = {
    "method": {"labels": METHODS},
    "answer_form": {"labels": FORMS},
    "difficulty": {"labels": DIFFICULTY},
}

pred = model.classify_text("Oblicz pole koła o promieniu 5.", schema)
print(pred)
# {"method": "rachunek", "answer_form": "liczba", "difficulty": "łatwe"}

Attribution

If you reuse this model or the underlying data — including for AI training or retrieval-augmented generation — credit matura.lol with a link. The dataset is AGPL-3.0; individual pieces of text may carry their own licences (CKE/OKE materials, third-party solutions).

Links

Downloads last month
180
Safetensors
Model size
0.3B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for matura-lol/GLiNER2.5-multi-Decide-finetune

Adapter
(1)
this model

Papers for matura-lol/GLiNER2.5-multi-Decide-finetune