Vör-LateEmbed-TR (Vor-LateEmbed-TR-0.6B-v1): Turkish Late-Interaction Retrieval & RAG Model (Türkçe RAG ve Arama Modeli)
Ask in Turkish, find the passage. · Türkçe sor, doğru pasajı bul.
A Turkish late-interaction (ColBERT-style multi-vector MaxSim) retrieval and reranking model for semantic search and RAG, fine-tuned from perplexity-ai/pplx-embed-v2-late-0.6b by RuneLab.ai.
Model page (EN) · Model sayfası (TR) · RuneLab Models · Interactive RAG Guide (EN) · RAG Rehberi (TR) · Türkçe Bölüm (#turkce)
Summary
Vör-LateEmbed-TR v1 (Vor-LateEmbed-TR-0.6B-v1) is an open-weight Turkish retrieval and reranking model for semantic search and Retrieval-Augmented Generation (RAG) developed by RuneLab. It is a fine-tune of perplexity-ai/pplx-embed-v2-late-0.6b, a late-interaction (multi-vector, MaxSim) retriever. In our evaluation it ranks Turkish passages better than its base model on all five official Turkish retrieval test sets we measured, and it keeps the base model's English and visual-document ability.
- Higher than its base model on all five official Turkish test sets: +1.62 nDCG@10 on average across TurkColBERT (paired bootstrap 95% CI +1.27 to +2.00), from 36.54 to 38.17.
- Largest gains on FiQA-TR (+2.96), NFCorpus-TR (+2.09) and SciDocs-TR (+1.86). On SciFact-TR (+1.04) and ArguAna-TR (+0.18) the gain is within noise.
- XQuAD-TR 97.49 vs 97.04 (+0.45, interval above 0).
- General English and visual ability stays at the base model's level: English NanoBEIR 70.20 vs 69.10, ViDoRe 99.04 vs 99.08.
- Same size and API as the base model: 594.5M parameters (340.2M without the token-embedding table). Load it with
sentence-transformersand re-index your corpus.
Why it matters
- Turkish search quality. General multilingual retrievers are strongest in English. A model tuned on Turkish text finds more of the right passages in Turkish collections without a larger model.
- Exact terms and long passages. Late interaction compares token by token, so specific terms and long documents keep their detail instead of being squeezed into one vector. (For an interactive visual walkthrough of how retrieval and RAG pipelines find passages, read How RAG Finds Answers on the RuneLab Blog.)
- Easy to adopt. Same API, same prompts, same token lengths as the base model. There is nothing to change in the pipeline except re-indexing.
Intended use
- Turkish passage retrieval and re-ranking in search and RAG systems
- Mixed Turkish and English document collections
- Research on late-interaction retrieval for Turkish
Out-of-scope use
- Chat or text generation. It is a retriever, not a language model.
- A drop-in single-vector embedding model. It produces one vector per token and needs a multi-vector index or re-ranking. (If you need a single-vector Turkish legal embedding model, see Kenning Turkish Legal.)
- Medical, legal or financial decisions without human review of the retrieved passages.
Key Results
Click a chart to enlarge it. Scores and confidence intervals are in the Evaluation section below.
Why the name
In Norse mythology, Vör is the goddess of wisdom and awareness, so perceptive that nothing could be kept hidden from her. A retriever has the same job: find what is hidden in a large pile of text. "Late" is for late interaction: the model compares a query and a passage token by token, like matching each rune on a card to its rune on a scroll. "TR" is Turkish.
Quickstart
Install sentence-transformers 6.1 or newer.
pip install -U "sentence-transformers>=6.1"
For faster encoding, see 5. Faster encoding (optional) below.
1. The easiest way: encode and rank
from sentence_transformers import MultiVectorEncoder
model = MultiVectorEncoder("runelab-ai/Vor-LateEmbed-TR-0.6B-v1", device="cuda")
queries = ["Türkiye'nin en yüksek dağı hangisidir?"]
passages = [
"Ağrı Dağı, 5.137 metre yüksekliğiyle Türkiye'nin en yüksek dağıdır.",
"Uludağ, Bursa'da bulunan popüler bir kış turizmi merkezidir.",
]
q = model.encode_query(queries) # one 128-dim vector per query token
d = model.encode_document(passages) # one 128-dim vector per passage token
scores = model.similarity(q, d) # MaxSim scores, shape (num_queries, num_passages)
print(scores.argmax(dim=1)) # best passage per query
encode_query and encode_document add the [Q] and [D] prompts for you. If you build inputs by hand, the prompts must come first.
2. Lengths and precision
Keep the saved lengths: 1024 tokens for queries and 4096 for documents. We evaluate with the model loaded in fp32 and bf16 autocast. Loading in plain bf16 can change scores slightly, so start with the evaluation setting.
3. Memory and storage
Late interaction stores one vector per token, so a 500-token passage is about 500 x 128 floats. For large collections use a multi-vector index (for example a PLAID-style index) or re-rank a shortlist from a cheaper first-stage retriever.
4. Re-index when you switch models
The embedding space moved during fine-tuning, so vectors from the base model and from Vör v1 are not interchangeable. Re-encode your corpus with Vör v1.
5. Faster encoding (optional)
When the model loads, transformers may print "falling back to its reference PyTorch implementation" messages. They mean the optional fast kernels for the model's linear-attention layers are not installed. The model works without them, but the fallback is slower. Install the two packages in the same environment and transformers uses them automatically; your code does not change.
pip install flash-linear-attention # simple install
pip install causal-conv1d --no-build-isolation # optional: compiles from source (can take several minutes) and needs the CUDA toolkit (nvcc)
Evaluation
Methodology. All numbers are nDCG@10. Each test set was scored once, on the final model only, with the same harness for Vör v1 and the base model (same lengths, prompts and precision). Differences are paired bootstrap estimates over queries (10,000 resamples) with 95% confidence intervals. Checkpoint selection used dev data only.
Turkish retrieval results (TurkColBERT and XQuAD-TR, test)
TurkColBERT is five translated BEIR sets. Vör v1 is higher than the base model on 5 of 5 datasets.
| dataset | queries | base | Vör v1 | Vör v1 − base [95% CI] |
|---|---|---|---|---|
| SciFact-TR | 300 | 70.19 | 71.23 | +1.04 [−0.15, +2.31] |
| ArguAna-TR | 1406 | 41.85 | 42.03 | +0.18 [−0.29, +0.65] |
| FiQA-TR | 648 | 28.50 | 31.46 | +2.96 [+2.11, +3.84] |
| SciDocs-TR | 1000 | 12.62 | 14.48 | +1.86 [+1.44, +2.30] |
| NFCorpus-TR | 323 | 29.56 | 31.66 | +2.09 [+1.28, +2.95] |
| TurkColBERT average (5) | 36.54 | 38.17 | +1.62 [+1.27, +2.00] | |
| XQuAD-TR | 1190 | 97.04 | 97.49 | +0.45 [+0.09, +0.84] |
On SciFact-TR and ArguAna-TR the gain is within noise (the interval includes 0).
General benchmarks (Vör v1 vs base)
Vör v1 keeps the general English and visual-document ability of its base model. NanoBEIR is six small English retrieval sets with 50 queries each, scored with the sentence-transformers NanoBEIR evaluator. ViDoRe is three page-image retrieval sets (text query to page image, the first 300 queries of each test split, 880 queries in total). Because each Nano set has only 50 queries, differences of a point or two on a single set are noisy and we did not compute intervals for these sets, so read the averages. We did not set out to improve these abilities, only to avoid losing them. The training data includes English MS MARCO replay, so the NanoMSMARCO gain is not an out-of-domain result.
| benchmark | what it measures | queries | base | Vör v1 | Vör v1 − base |
|---|---|---|---|---|---|
| NanoMSMARCO | English web-search retrieval | 50 | 64.08 | 67.20 | +3.12 |
| NanoNFCorpus | English biomedical retrieval | 50 | 42.32 | 42.58 | +0.26 |
| NanoSciFact | English claim verification | 50 | 82.93 | 83.05 | +0.12 |
| NanoFiQA2018 | English financial QA retrieval | 50 | 57.80 | 60.64 | +2.84 |
| NanoNQ | English open-domain QA retrieval | 50 | 76.91 | 76.81 | −0.09 |
| NanoQuora | English duplicate-question retrieval | 50 | 90.56 | 90.93 | +0.37 |
| NanoBEIR average (6) | English retrieval | 300 | 69.10 | 70.20 | +1.10 |
| ViDoRe (3 sets, average) | visual document page retrieval | 880 | 99.08 | 99.04 | −0.04 |
Internal in-domain sets (built by us, not official benchmarks)
These sets come from the same source families as the training data, so the gains are in-domain gains.
| set | queries | base | Vör v1 | Vör v1 − base [95% CI] |
|---|---|---|---|---|
| Wikipedia QA | 1500 | 89.65 | 91.46 | +1.80 [+1.32, +2.31] |
| News | 1500 | 75.95 | 81.63 | +5.69 [+4.74, +6.68] |
| Finance | 681 | 95.52 | 96.37 | +0.85 [+0.40, +1.35] |
| Wikipedia general | 1500 | 68.98 | 74.72 | +5.74 [+4.83, +6.69] |
| Science / health / economics | 4382 | 71.63 | 75.03 | +3.40 [+3.02, +3.79] |
By query style on the science / health / economics set (Vör v1 vs base): question 94.39 vs 92.50 (n=622), keyword 96.53 vs 95.10 (n=908), title 79.82 vs 74.62 (n=1568), passage 44.60 vs 41.27 (n=1284).
Reproducibility
Evaluation uses sentence-transformers 6.1 MultiVectorEncoder, maxsim scoring, query length 1024 and document length 4096, fp32 load with bf16 autocast.
Compared model
The only model compared is the base model, perplexity-ai/pplx-embed-v2-late-0.6b, scored with the same harness. This card makes no comparison with other models.
Training details
- Method: LoRA (rank 16, alpha 32) on the text layers, merged into the weights; the vision tower is frozen. Listwise KL distillation to targets that blend the gold passage (one-hot) with the base model's softened MaxSim scores, with more weight on the gold passage in the later part of training. Each group has 1 gold passage and 7 hard negatives mined with the base model. (Learn how teacher-student soft-target training works in our interactive guide on Model Distillation.)
- Schedule: effective batch of 64 groups, learning rate 1e-4 with cosine decay. The recipe was chosen on dev data.
- Data: 80,217 training groups. By domain: news 18,811, QA 16,401, science 9,695, health 9,643, general 8,045, English 6,228, finance 6,150, economics 5,244.
- Turkish Wikipedia QA, news, finance and general Wikipedia
- Science, health and economics Wikipedia sections with title, keyword, question and passage queries; keyword and question queries were written locally with Qwen2.5-7B-Instruct (Apache-2.0) and quality-audited
- 15% English MS MARCO replay, with base-model-only targets
- Every Turkish domain has a long-passage share of at least 27%
- A closed model was used only as a filter and verifier of training rows, never as a source of targets
- Decontamination: training data was checked against all TurkColBERT data and against every held-out dev and test text with exact, 13-gram and prefix checks plus an independent audit. No TurkColBERT split was trained on.
- Release date: October 12, 2026.
- License: Apache 2.0
Citation
@misc{runelab_vor_lateembed_tr_v1_2026,
title = {V{\"o}r-LateEmbed-TR v1: a Turkish late-interaction retriever},
author = {{RuneLab.ai}},
year = {2026},
howpublished = {Hugging Face model card},
url = {https://huggingface.co/runelab-ai/Vor-LateEmbed-TR-0.6B-v1}
}
Please also cite the base model (perplexity-ai/pplx-embed-v2-late-0.6b) and the benchmarks used above.
More Open-Weight Models & Guides from RuneLab.ai
RuneLab.ai is a Turkey-based AI research, engineering and training company.
- Open-Weight Turkish AI Models (runelab.ai/en/models):
- Hati Glint SQL: Open-weight Turkish text-to-SQL language model (SQLite LLM).
- Kenning Turkish Legal: Single-vector Turkish legal embedding model for contract, caselaw and regulation retrieval.
- Interactive Technical Guides (RuneLab Blog):
- NexTech Enterprise AI: enterprise AI strategy and end-to-end projects.
- RuneLab Academy: AI, LLM, and RAG training for individuals and engineering teams.
- Products: RuneDesk (enterprise document & RAG assistant), RuneBox (on-premise AI appliance), RuneGate (LLM gateway) and Vitki (adaptive learning, early access).
More at huggingface.co/runelab-ai · info@runelab.ai · runelab.ai
Türkçe: Vör-LateEmbed-TR v1, Türkçe RAG, Çok Vektörlü Embedding ve Belge Arama Modeli
Özet
Türkçe sor, doğru pasajı bul.
Model sayfası: runelab.ai/models/vor-lateembed-tr
Vör-LateEmbed-TR v1 (Vor-LateEmbed-TR-0.6B-v1), anlamsal arama (semantic search), yeniden sıralama (reranking) ve RAG (Retrieval-Augmented Generation) sistemleri için RuneLab tarafından geliştirilmiş bir Türkçe getirme (retrieval) ve çok vektörlü (multi-vector) embedding modelidir. perplexity-ai/pplx-embed-v2-late-0.6b modelinin ince ayarlı halidir ve ColBERT tarzı geç etkileşimli (late-interaction, çok vektörlü, MaxSim) mimariyle çalışır. Değerlendirmemizde, ölçtüğümüz beş resmi Türkçe test setinin beşinde de temel modelden daha iyi sıralama yapar; temel modelin İngilizce ve görsel belge becerisini korur.
- Beş resmi Türkçe test setinin beşinde de temel modelden yüksek: TurkColBERT ortalaması 36,54'ten 38,17'ye, yani +1,62 nDCG@10 (eşleştirilmiş bootstrap %95 GA: +1,27 ile +2,00).
- En büyük kazançlar FiQA-TR (+2,96), NFCorpus-TR (+2,09) ve SciDocs-TR (+1,86). SciFact-TR (+1,04) ve ArguAna-TR (+0,18) kazancı gürültü sınırındadır.
- XQuAD-TR 97,49 (temel 97,04, +0,45).
- Genel İngilizce ve görsel belge becerisi temel modelin düzeyinde kalır: NanoBEIR 70,20 (temel 69,10), ViDoRe 99,04 (temel 99,08).
- Temel modelle aynı boyut ve API: 594,5M parametre.
sentence-transformersile yüklenir; derleminizi yeniden indekslemeniz gerekir.
Neden önemli
- Türkçe arama ve RAG kalitesi. Genel çok dilli getiriciler en çok İngilizcede güçlüdür. Türkçe metinle ayarlanmış bir model, daha büyük bir modele ihtiyaç duymadan Türkçe koleksiyonlarda doğru pasajları daha sık bulur.
- Kesin terimler ve uzun pasajlar. Geç etkileşim (late interaction) token token karşılaştırır; böylece terimler ve uzun belgeler tek bir vektöre sıkıştırılmadan detayını korur. (RAG ve vektör aramanın belgelerde doğru pasajı nasıl bulduğunu canlı şekillerle incelemek için RAG Yanıtları Nasıl Bulur? rehberimizi okuyabilirsiniz.)
- Kolay geçiş. Aynı API, aynı istemler, aynı token uzunlukları. Yeniden indeksleme dışında boru hattında değişiklik gerekmez.
Kullanım alanları
- Arama ve RAG sistemlerinde Türkçe pasaj getirme (retrieval) ve yeniden sıralama (reranking)
- Türkçe ve İngilizce karışık belge koleksiyonlarında anlamsal arama
- Türkçe için geç etkileşimli (ColBERT / MaxSim) getirme araştırmaları
Kapsam dışı
- Sohbet veya metin üretimi: bu bir getiricidir (retriever), dil modeli (LLM) değildir.
- Tek vektörlü gömme (embedding) modelinin yerine doğrudan kullanım: çok vektörlü indeks (ör. PLAID) veya yeniden sıralama gerekir. (Sözleşme, içtihat ve mevzuat için tek vektörlü bir Türkçe hukuk embedding modeli arıyorsanız Kenning Turkish Legal model sayfasına göz atın.)
- İnsan denetimi olmadan tıbbi, hukuki veya finansal kararlar.
Sonuçlar
Tüm sayılar nDCG@10'dur. Her test seti yalnızca bir kez, aynı koşullarda ölçülmüştür.
Türkçe resmî setler
| veri seti | temel | Vör v1 | fark |
|---|---|---|---|
| SciFact-TR | 70,19 | 71,23 | +1,04 |
| ArguAna-TR | 41,85 | 42,03 | +0,18 |
| FiQA-TR | 28,50 | 31,46 | +2,96 |
| SciDocs-TR | 12,62 | 14,48 | +1,86 |
| NFCorpus-TR | 29,56 | 31,66 | +2,09 |
| TurkColBERT ortalaması (5) | 36,54 | 38,17 | +1,62 |
| XQuAD-TR | 97,04 | 97,49 | +0,45 |
Genel kıyaslamalar (temel modelle karşılaştırma)
| kıyaslama | temel | Vör v1 | fark |
|---|---|---|---|
| NanoBEIR (İngilizce, 6 set ortalaması) | 69,10 | 70,20 | +1,10 |
| ViDoRe (3 küçük set ortalaması) | 99,08 | 99,04 | −0,04 |
SciFact-TR ve ArguAna-TR'deki kazanç gürültü sınırındadır. Kendi oluşturduğumuz, resmî olmayan dahili setlerde kazanç +0,85 ile +5,74 arasındadır; bunlar alan içi (in-domain) kazançlardır. Güven aralıkları ve ayrıntılar yukarıdaki İngilizce bölümdedir.
Hızlı başlangıç
from sentence_transformers import MultiVectorEncoder
model = MultiVectorEncoder("runelab-ai/Vor-LateEmbed-TR-0.6B-v1", device="cuda")
q = model.encode_query(["Türkiye'nin en yüksek dağı hangisidir?"])
d = model.encode_document([
"Ağrı Dağı, 5.137 metre yüksekliğiyle Türkiye'nin en yüksek dağıdır.",
"Uludağ, Bursa'da bulunan popüler bir kış turizmi merkezidir.",
])
print(model.similarity(q, d).argmax(dim=1))
Sorgu uzunluğu 1024, belge uzunluğu 4096 token olarak kalmalıdır.
RuneLab.ai Modelleri, Teknik Yazılar ve Eğitimler
RuneLab.ai, Türkiye merkezli bir yapay zeka araştırma, mühendislik ve eğitim şirketidir.
- Diğer Açık Ağırlıklı Türkçe Yapay Zeka Modellerimiz (runelab.ai/models):
- Hati Glint SQL: Türkçe doğal dil sorularını SQLite sorgularına çeviren Türkçe SQL modeli (text-to-SQL).
- Kenning Turkish Legal: Sözleşme, içtihat ve mevzuat araması için Türkçe hukuk embedding modeli.
- Etkileşimli Teknik Rehberler (RuneBlog):
- NexTech Kurumsal Yapay Zeka: kurumsal yapay zeka stratejisi ve uçtan uca projeler.
- RuneLab Akademi: bireylere ve mühendislik ekiplerine uygulamalı RAG Eğitimi, Yerel LLM Eğitimi ve yapay zeka programları.
- Ürünler: RuneDesk (kurumsal doküman ve RAG asistanı), RuneBox (kurum içi yapay zeka altyapısı), RuneGate (model geçidi) ve Vitki (adaptif öğrenme, erken erişim).
Daha fazlası: huggingface.co/runelab-ai · info@runelab.ai · runelab.ai