Embeddings
Open Persian Text Embedding Models
Open Persian (Farsi) text embedding models for semantic search, retrieval, reranking, clustering
and sentence similarity. They are trained on Shiraz, evaluated on the full FaMTEB benchmark,
and load with sentence-transformers in two lines of Python.
Models
Every model is evaluated on all 52 tasks of FaMTEB (MTEB(fas, v2)), so scores are directly comparable.
| Model | Parameters | Dimensions | Max tokens | FaMTEB (task mean) | License |
|---|---|---|---|---|---|
| Noql | 11.9M | 768 → 64 | 512 | 58.21 | Apache 2.0 |
Noql
(نُقل)A tiny and efficient Persian text embedding model. Noql has only 12M parameters and is trained with Matryoshka representation learning, so its 768-dimensional embeddings can be truncated to 512, 256, 128 or 64 dimensions with little loss in quality.
- ArchitectureALBERT-base, mean pooling, L2-normalized
- Base model
shekar-ai/albert-base-v2-persian-zwnj-naab-mlm - Embedding sizes768 / 512 / 256 / 128 / 64
- SimilarityCosine
- Training dataShiraz
- LicenseApache 2.0
Usage
Retrieval
Smaller embeddings
Evaluation
Results on FaMTEB (MTEB(fas, v2), all 52 tasks) at each embedding size.
| Metric | 768 | 512 | 256 | 128 | 64 |
|---|---|---|---|---|---|
| Mean (task) | 58.21 | 57.97 | 57.54 | 56.96 | 55.61 |
| Mean (type) | 61.63 | 61.46 | 61.12 | 60.72 | 59.66 |
| % of 768 score | 100% | 99.6% | 98.8% | 97.9% | 95.5% |
| Storage per vector (fp32) | 3,072 B | 2,048 B | 1,024 B | 512 B | 256 B |
| Task type | Tasks | 768 | 512 | 256 | 128 | 64 |
|---|---|---|---|---|---|---|
| Retrieval | 17 | 47.20 | 47.19 | 46.80 | 46.07 | 43.87 |
| Reranking | 2 | 64.16 | 64.22 | 63.77 | 63.61 | 63.09 |
| Pair Classification | 7 | 79.94 | 79.98 | 80.03 | 80.04 | 79.97 |
| Classification | 16 | 58.98 | 58.44 | 57.56 | 56.67 | 55.29 |
| Clustering | 5 | 60.48 | 59.47 | 60.08 | 59.76 | 60.06 |
| STS | 2 | 71.37 | 71.40 | 71.32 | 71.25 | 71.19 |
| Bitext Mining | 3 | 49.24 | 49.52 | 48.31 | 47.65 | 44.15 |
Training
Noql was trained on Shiraz in two stages, each on 2M random samples:
- Positive pairs: query–document pairs with in-batch negatives.
- Hard negatives: half positive pairs, half pairs with mined hard negatives.
Use Cases
Frequently Asked Questions
What Persian embedding models does Shekar AI provide?
Shekar AI publishes open Persian (Farsi) text embedding models on Hugging Face. The current model is Noql, a 12M-parameter sentence embedding model released under Apache 2.0.
How do I use Noql?
Install sentence-transformers and load it with SentenceTransformer("shekar-ai/Noql"). model.encode() returns 768-dimensional, L2-normalized embeddings, and model.similarity() computes cosine similarity.
How well does Noql perform?
On FaMTEB (MTEB(fas, v2), all 52 tasks) Noql scores 58.21 mean per task and 61.63 mean per task type at 768 dimensions, with 47.20 on retrieval, 79.94 on pair classification and 71.37 on STS.
Can I use smaller Noql embeddings?
Yes. Noql is trained with Matryoshka representation learning, so its embeddings can be truncated to 512, 256, 128 or 64 dimensions with SentenceTransformer("shekar-ai/Noql", truncate_dim=256). At 256 dimensions it keeps 98.8% of its full FaMTEB score at a third of the storage (1,024 bytes per fp32 vector).
What was Noql trained on?
Noql was trained on Shiraz, Shekar AI's quality-filtered Persian web corpus, in two stages of 2M samples each: query–document pairs with in-batch negatives, then a mix of positive pairs and mined hard negatives. It starts from a Persian ALBERT-base model.
Can I use Noql commercially?
Yes. Noql is released under the Apache License 2.0, which permits commercial use, modification and redistribution.