ardakshalkar/kazakh-trilingual-gliner
026
Kazakh & Trilingual (Kazakh / Russian / English) GLiNER
A generalist and lightweight Named Entity Recognition (GLiNER) model fine-tuned for Kazakh, Russian, and English. It provides open-vocabulary / zero-shot entity extraction across both general domain text (news, literature, government) and university administrative communications (student inquiries, academic requests, code-switching).
Model Overview
- Backbone: Multilingual DeBERTa-v3 (
urchade/gliner_multi-v2.1) - Parameters: ~209M
- Training Data: 34,000+ blended sentences from KazNERD and academic inquiries.
- Key Capability: Zero-shot extraction of arbitrary entity types without retraining.
Test Set Benchmark (Held-out Test Split)
- Overall Micro F1: 90.0%
- Overall Recall: 92.5%
- Overall Precision: 87.6%
Installation
pip install glinerQuick Start / Inference
from gliner import GLiNER
# Load the model directly from Hugging Face Hub
model = GLiNER.from_pretrained("ardakshalkar/kazakh-trilingual-gliner")
# Example 1: Kazakh student inquiry with domain entities
text_kk = "Сәлеметсіз бе! Мен Батыр Төремұратов, Платонус жүйесінен анықтама ала алмай жатырмын."
labels = ["student_name", "academic_system", "document_type"]
entities = model.predict_entities(text_kk, labels, threshold=0.4)
for ent in entities:
print(f"{ent['label']}: {ent['text']} ({ent['score']:.2%})")
# Example 2: General Kazakh news
text_news = "Қасым-Жомарт Тоқаев Астана қаласында жиын өткізді."
entities_news = model.predict_entities(text_news, ["person", "location"], threshold=0.5)
for ent in entities_news:
print(f"{ent['label']}: {ent['text']} ({ent['score']:.2%})")