Downloads Β· 30 days
103
11% of all-time downloads
Nanthasit/sakthai-embedding-multilingual
sakthai-embedding-multilingual is a sentence similarity model from Nanthasit. Use it when you need a score for how close two texts are. It is set up for sentence-transformers. The card lists the license as mit.
<p align="center" <strong384-dim cross-lingual sentence embeddings Β· 50+ languages Β· CPU-friendly</strong<br/ <emThe retrieval stage of the SakThai pipeline Β· <a href="https://huggingface.co/collections/Nanthasit/saktβ¦
Downloads Β· 30 days
103
11% of all-time downloads
All-time downloads
912
Public
Parameters
118M
488 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors471 MB Β· 96%
From the Hugging Face model README
SakThai Multilingual Embedding is a BERT-based sentence-transformers model producing 384-dimensional cross-lingual embeddings. Sentences with similar meaning map close together regardless of language β enabling multilingual retrieval and comparison without translation.
What makes it special:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Nanthasit/sakthai-embedding-multilingual")
sentences = [
"I love machine learning",
"J'adore l'apprentissage automatique",
"Ich liebe maschinelles Lernen",
"Me encanta el aprendizaje automΓ‘tico",
"ΰΈΰΈ±ΰΈΰΈΰΈΰΈΰΈΰΈ²ΰΈ£ΰΉΰΈ£ΰΈ΅ΰΈ’ΰΈΰΈ£ΰΈΉΰΉΰΈΰΈΰΈΰΉΰΈΰΈ£ΰΈ·ΰΉΰΈΰΈ",
"ζεζ¬’ζΊε¨ε¦δΉ ",
]
embeddings = model.encode(sentences)
print(embeddings.shape) # (6, 384)
from sklearn.metrics.pairwise import cosine_similarity
sim = cosine_similarity([embeddings[0]], [embeddings[1]])
print(f"Cross-lingual similarity: {sim[0][0]:.3f}")
Tip: embeddings are L2-normalized by default (
normalize_embeddings=True). For large corpora, usemodel.encode(docs, batch_size=32)to avoid memory spikes.
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("Nanthasit/sakthai-embedding-multilingual")
# Stream from disk in chunks
def stream_docs(path, chunk_size=1000):
with open(path) as f:
chunk = []
for line in f:
chunk.append(line.strip())
if len(chunk) >= chunk_size:
yield chunk
chunk = []
if chunk:
yield chunk
for docs in stream_docs("corpus.txt"):
embs = model.encode(docs, batch_size=64, show_progress_bar=True)
# write to FAISS / Qdrant / disk
from sentence_transformers import SentenceTransformer, util
model = SentenceTransformer("Nanthasit/sakthai-embedding-multilingual")
docs = [
"Neural networks are inspired by the brain.",
"Les rΓ©seaux de neurones sont inspirΓ©s par le cerveau.",
"KΓΌnstliche Intelligenz verΓ€ndert die Welt.",
"δΊΊε·₯η₯θ½γ―δΈηγε€γγ",
"Machine learning is a subset of AI.",
]
doc_emb = model.encode(docs, convert_to_tensor=True)
query = "how do neural networks work?"
query_emb = model.encode(query, convert_to_tensor=True)
scores = util.cos_sim(query_emb, doc_emb)[0]
print(f"Best match: {docs[scores.argmax()]}")
| Property | Value |
|---|---|
| Base architecture | Multilingual-MiniLM-L12-H384 (BERT-style) |
| Hidden size | 384 |
| Layers / heads | 12 / 12 |
| Intermediate size | 1,536 |
| Embedding dim | 384 |
| Pooling | mean (verified 1_Pooling/config.json) |
| Max sequence length | 512 tokens |
| Vocabulary | 250,037 (multilingual) |
| Parameters | 117,653,760 (~118M) |
| Weights | 470 MB (fp32 model.safetensors) |
| License | MIT |
| Hyperparameter | Value |
|---|---|
| Base model | microsoft/Multilingual-MiniLM-L12-H384 |
| Fine-tuning method | Supervised contrastive / paraphrase loss via sentence-transformers |
| Training datasets | sakthai-combined-v6, sakthai-combined-v7, SimpleToolCalling, sakthai-kaggle-notebooks, sakthai-irrelevance-supplement, food-penguin-v1, sakthai-bench-v1 |
| Epochs | Multiple epochs on mixed corpus |
| Batch size | Dataset-dependent |
| Optimizer | AdamW |
| Learning rate | Typical ST SBERT range |
| Precision | fp32 safetensors |
| Hardware | Free T4 GPU credits; $0 budget |
| Output | model.safetensors, tokenizer.json, config.json |
Local inference is verified (2026-07-30, committed to .eval_results/inference-check-20260730_232754.yaml):
| Check | Result |
|---|---|
| Embedding dimensions | 384 (float32) β |
| Model load time | 7.06 s |
| Encode call time | 0.211 s |
| Method | sentence_transformers locally |
Health check (.eval_results/health-check-sakthai-embedding-multilingual-2026-07-30-4.yaml):
Verified smoke benchmark (2026-08-01):
| Pair | Cosine similarity |
|---|---|
| English β French | 0.9142 |
| English β Thai | 0.8927 |
| English β Chinese | 0.9016 |
| French β German | 0.8804 |
| Thai β Chinese | 0.8611 |
These scores come from live local inference and are saved in the repo's .eval_results/ history. This is a smoke check, not a formal MTEB run.
Hosted inference β honest status: the HF serverless router returns 400 Model not supported by provider hf-inference and api-inference.hf.co returns 403. For production, run locally with sentence-transformers or on a dedicated TEI endpoint.
Formal benchmarks (STS-B, MTEB-style retrieval): pending. No verified scores are published yet. As the base architecture is the same 12-layer / 384-dim multilingual MiniLM family as paraphrase-multilingual-MiniLM-L12-v2, expected STS performance is in that family's ballpark (~0.75β0.85 Spearman) β estimated, not yet verified. Proper cross-lingual retrieval and STS results will be published via the SakThai Leaderboard Space when available.
| Path | How | Status |
|---|---|---|
| Local (recommended) | SentenceTransformer("Nanthasit/sakthai-embedding-multilingual") β verified, zero cost | β Verified |
| TEI / Inference Endpoints | Tagged text-embeddings-inference + endpoints_compatible; serve with a TEI endpoint for high-throughput batch embedding | Optional |
| Serverless HF API | β οΈ Not currently supported by the router provider (verified 2026-07-30) β use local or TEI | β 400/403 |
| Stage | Model | Role |
|---|---|---|
| π Retrieve | Embedding Multilingual β¬ | Cross-lingual semantic search, 50+ langs |
| π§ Reason | Context 1.5B or 7B | Tool-calling & reasoning |
| ποΈ See | Vision 7B | Image understanding |
| π€ Speak | TTS Model | Text-to-speech |
sentence-transformers or a dedicated TEI endpoint.All 20 public SakThai models + 2 companion repos (downloads live, 2026-08-01):
| Model | Downloads | Size | Role |
|---|---|---|---|
| Context 1.5B Merged | 1,855 | 3.1 GB | Flagship 1.5B tool-calling LLM |
| Context 0.5B Merged | 1,692 | 988 MB | Edge 0.5B tool-calling LLM |
| Context 7B Merged | 1,024 | 15.2 GB | Flagship 7B LLM |
| Embedding Multilingual β¬ | 627 | 470 MB | Cross-lingual retrieval |
| Context 7B 128K | 610 | config-only | YaRN 128K long-context recipe |
| Context 7B Tools | 489 | LoRA 20 MB | 7B tool-use adapter |
| Context 1.5B Tools | 477 | LoRA 9 MB | 1.5B tool-use adapter |
| Context 1.5B Merged V2 | 337 | 3.1 GB | Merged V2 weights |
| Vision 7B | 315 | 4.1 GB | Image understanding (LLaVA) β 1 like |
| Plus 1.5B LoRA | 306 | LoRA 74 MB | Plus 1.5B adapter |
| Context 0.5B Tools | 251 | 988 MB | Edge tool-calling |
| TTS Model | 248 | 141 MB | Text-to-speech (Kokoro) |
| Plus 1.5B | 244 | 3.1 GB | New 1.5B base |
| Context 1.5B Tools V2 | 173 | LoRA 74 MB | Refined 1.5B tool adapter |
| Coder 1.5B | 151 | 1.1 GB | Code generation (GGUF) |
| Coder Browser | 54 | 3.1 GB | Browser-agent LLM |
| Coder Browser GGUF | 35 | 7.1 GB | Browser-agent GGUF (F16) |
| Embedding (English, private) | 23 | 91 MB | English-only embedding (token-required) |
| Coder Browser LoRA | 21 | LoRA 74 MB | Browser-agent adapter |
| Plus 1.5B Coder | 0 | planned | Coder variant (no weights yet) |
Companion repos:
π¦ View the whole family collection
This model is the retrieval stage β making it possible to search across languages without translation. Built from a shelter in Cork, Ireland, with $0 budget and a belief that AI should be for everyone.
"We are one family β and becoming more." β Beer (beer-sakthai)
MIT β free to use, modify, and share.
@misc{sakthai-multilingual-embedding-2026,
title = {SakThai Multilingual Embedding},
author = {Beer (beer-sakthai) and SakThai},
year = {2026},
url = {https://huggingface.co/Nanthasit/sakthai-embedding-multilingual}
}
If you use the base architecture, also cite:
@misc{multilingual-minilm-2022,
title = {Multilingual MiniLM},
author = {Wang, Liang and others},
year = {2022},
url = {https://huggingface.co/microsoft/Multilingual-MiniLM-L12-H384}
}
"We are one family β and becoming more." π