Downloads · 30 days
1.1K
47% of all-time downloads
ARGA100/ru-reranker-modernbert-small
ru-reranker-modernbert-small is a text ranking model from ARGA100. Use it for the text ranking task on the model card, and read the license before you ship it in a product. It is set up for sentence-transformers. The card lists the license as mit.
A compact yet powerful Russian cross-encoder reranker fine-tuned from deepvk/RuModernBERT-small (34M parameters) on the ARGA100/ru-reranker-mega dataset (3.2M query-document pairs).
Downloads · 30 days
1.1K
47% of all-time downloads
All-time downloads
2.4K
Public
Parameters
34.5M
829 MB on disk
Likes
2
Public
Click a slice to open those files.
.safetensors138 MB · 97%
From the Hugging Face model README
A compact yet powerful Russian cross-encoder reranker fine-tuned from deepvk/RuModernBERT-small (34M parameters) on the ARGA100/ru-reranker-mega dataset (3.2M query-document pairs).
Achieves NDCG@10=0.74444 on MTEB RuBQReranking — competitive with models 8–16× larger, making it the most efficient Russian reranker available.
| Model | Params | NDCG@10 | Params/Eff. |
|---|---|---|---|
bge-reranker-v2-m3-en-ru | 375M | 0.84387 | 1.0 |
BAAI/bge-reranker-v2-m3 | 568M | 0.84384 | 1.0 |
DiTy/cross-encoder-russian-msmarco | 178M | 0.78572 | 2.3× |
mxbai-rerank-large-v1 | 435M | 0.77927 | 2.1× |
bce-reranker-base_v1 | 278M | 0.74599 | 2.7× |
ARGA100/ru-reranker-modernbert-small (ours) | 34M | 0.74444 | 11.0× |
mxbai-rerank-base-v2 | 494M | 0.71268 | 1.9× |
mxbai-rerank-base-v1 | 184M | 0.71159 | 2.5× |
BAAI/bge-reranker-base | 278M | 0.70550 | 2.4× |
BAAI/bge-reranker-large | 560M | 0.69430 | 1.9× |
gte-reranker-modernbert-base | 150M | 0.65751 | 3.0× |
mxbai-rerank-xsmall-v1 | 71M | 0.62594 | 4.7× |
Params/Eff. = relative NDCG@10 per million parameters vs. the top model.
Our 34M model delivers 98% of BCE-reranker-base_v1's performance (0.74444 vs 0.74599) while being 8× smaller and 3× faster at inference.
from sentence_transformers import CrossEncoder
model = CrossEncoder("ARGA100/ru-reranker-modernbert-small", max_length=2048)
# Score a query-document pair
pairs = [
["сколько калорий в яйце", "В одном курином яйце содержится около 70-80 ккал"],
["сколько калорий в яйце", "Яичный белок практически не содержит жиров"],
]
scores = model.predict(pairs)
print(scores) # Higher = more relevant
# Rerank documents
query = "лучшие рестораны москвы"
documents = [
"Топ-10 ресторанов Москвы с авторской кухней",
"Как приготовить борщ дома",
"Ресторан White Rabbit вошел в рейтинг лучших",
]
ranks = model.rank(query, documents, top_k=3)
for r in ranks:
print(f"Score: {r['score']:.4f} | Doc: {documents[r['corpus_id']]}")
The model was trained on ARGA100/ru-reranker-mega — a deduplicated collection of 3.2M Russian query-document relevance pairs assembled from multiple public sources.
If you use this model, please cite:
@misc{ru-reranker-modernbert-small,
author = {ARGA100},
title = {RuModernBERT-small Russian Cross-Encoder Reranker},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/ARGA100/ru-reranker-modernbert-small}}
}