rekabytes/Aranda-v1
Aranda-v1
Aranda-v1 is a sentence embedding model specialized for Malaysian text retrieval, including Bahasa Malaysia, Manglish (Malaysian English code-switching), and cross-lingual BM↔English matching. It outperforms all tested baselines on overall retrieval Recall@1, Recall@5, Recall@10, and MRR, and is the best model on every individual language category (BM, Manglish, English, Cross-lingual).
Training
Two-phase contrastive curriculum:
Phase 1 — Breadth: MultipleNegativesRankingLoss on 1M Malaysian positive pairs (paraphrases, social media, news, QA). LR=1e-5, 1000 steps.
Phase 2 — Discrimination: Fine-tuned on 58K diverse hard-negative triplets (Lowyat, Twitter, Facebook, formal BM QA, English anchors, cross-lingual pairs) with explicit mined hard negatives. LR=2e-6, 2000 steps.
Base model: paraphrase-multilingual-mpnet-base-v2
Evaluation
Tested on 4,149 retrieval queries (BM, Manglish, English, Cross-lingual) with ~25 candidates per query, plus 4 additional eval sets (heuristic similarity, mined holdout, Mesolitica reranker, English STS).
Overall Retrieval (4,149 queries)
Per-Language Recall@1
Heuristic Similarity 2K (per-language Spearman)
Mined Holdout 2K (positive vs negative margins)
Mesolitica Reranker Test (NDCG@10)
English STS (mteb/stsbenchmark-sts)
Usage
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("rekabytes/Aranda-v1")
# Encode texts
embeddings = model.encode([
"macam mana nak renew lesen memandu",
"how to renew driving license",
"saya nak makan nasi lemak"
], normalize_embeddings=True)
# Cosine similarity
similarities = embeddings @ embeddings.T
print(similarities)With RAG / vector search
# Encode your document corpus (do this once)
doc_embeddings = model.encode(documents, normalize_embeddings=True)
# At query time
query_embedding = model.encode([query], normalize_embeddings=True)
scores = query_embedding @ doc_embeddings.T
top_k = scores.argsort()[0][-5:][::-1]Intended Use
- RAG context retrieval for Malaysian applications
- Semantic search over BM/Manglish/English document corpora
- Cross-lingual matching (BM ↔ English)
- Dense retrieval in hybrid search pipelines (paired with BM25)
Limitations
- English STS performance is below the base mpnet model (0.8369 vs 0.8682) — the model specialized for Malaysian text
- Not a reranker — use a cross-encoder for second-stage reranking
- Tested on Malaysian web data; performance may vary on other Southeast Asian languages
Model Details
- Architecture: XLM-RoBERTa (base)
- Embedding dimension: 768
- Max sequence length: 128
- Pooling: Mean
- Normalization: L2
