Model reference · open weights
mmlw-e5-large is an open-weight embedding model from sdadas. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | sdadas |
|---|---|
| Type | Embedding models |
| Task | Embeddings |
| Parameters (lead) | 560M |
| Context | 514 tokens |
| Runs with | sentence-transformers |
| Released | 2023-11-17 |
| Popularity | 567 downloads / month |
| Licence | Open weights |
About
MMLW (muszę mieć lepszą wiadomość) are neural text encoders for Polish. This is a distilled model that can be used to generate embeddings applicable to many tasks such as semantic similarity, clustering, information retrieval. The model can also serve as a base for further fine-tuning. It transforms texts to 1024 dimensional vectors. The model was initialized with multilingual E5 checkpoint, and then trained with multilingual knowledge distillation method on a diverse corpus of 60 million Polish-English text pairs. We utilised English FlagEmbeddings (BGE) as teacher models for distillation.
⚠️ Our embedding models require the use of specific prefixes and suffixes when encoding texts. For this model, queries should be prefixed with "query: " and passages with "passage: " ⚠️
You can use the model like this with sentence-transformers:
from sentence_transformers import SentenceTransformer
from sentence_transformers.util import cos_sim
query_prefix = "query: "
answer_prefix = "passage: "
queries = [query_prefix + "Jak dożyć 100 lat?"]
answers = [
answer_prefix + "Trzeba zdrowo się odżywiać i uprawiać sport.",
answer_prefix + "Trzeba pić alkohol, imprezować i jeździć szybkimi autami.",
answer_prefix + "Gdy trwała kampania politycy zapewniali, że rozprawią się z zakazem niedzielnego handlu."
]
model = SentenceTransformer("sdadas/mmlw-e5-large")
queries_emb = model.encode(queries, convert_to_tensor=True, show_progress_bar=False)
answers_emb = model.encode(answers, convert_to_tensor=True, show_progress_bar=False)
best_answer = cos_sim(queries_emb, answers_emb).argmax().item()
print(answers[best_answer])
# Trzeba zdrowo się odżywiać i uprawiać sport.
This model was trained with the A100 GPU cluster support delivered by the Gdansk University of Technology within the TASK center initiative.
@inproceedings{dadas2024pirb,
title={PIRB: A Comprehensive Benchmark of Polish Dense and Hybrid Text Retrieval Methods},
author={Dadas, Slawomir and Pere{\l}kiewicz, Micha{\l} and Po{\'s}wiata, Rafa{\l}},
booktitle={Proceedings of the 2024 Joint International Conference on Computational Linguistics, Language Resources and Evaluation (LREC-COLING 2024)},
pages={12761--12774},
year={2024}
}
From the published model card. Full card on the HuggingFace links in the sidebar.
Benchmarks
As published on the model card — the maker's own numbers, not measured by AxForge.
| Task | Dataset | Metric | Score |
|---|---|---|---|
| Clustering | MTEB 8TagsClustering | v_measure | 30.624 |
| Classification | MTEB AllegroReviews | accuracy | 37.684 |
| Classification | MTEB AllegroReviews | f1 | 34.192 |
| Retrieval | MTEB ArguAna-PL | map_at_1 | 38.407 |
| Retrieval | MTEB ArguAna-PL | map_at_10 | 55.147 |
| Retrieval | MTEB ArguAna-PL | map_at_100 | 55.757 |
| Retrieval | MTEB ArguAna-PL | map_at_1000 | 55.761 |
| Retrieval | MTEB ArguAna-PL | map_at_3 | 51.268 |
| Retrieval | MTEB ArguAna-PL | map_at_5 | 53.697 |
| Retrieval | MTEB ArguAna-PL | mrr_at_1 | 40.043 |
| Retrieval | MTEB ArguAna-PL | mrr_at_10 | 55.841 |
| Retrieval | MTEB ArguAna-PL | mrr_at_100 | 56.459 |
| Retrieval | MTEB ArguAna-PL | mrr_at_1000 | 56.463 |
| Retrieval | MTEB ArguAna-PL | mrr_at_3 | 52.074 |
| Retrieval | MTEB ArguAna-PL | mrr_at_5 | 54.365 |
| Retrieval | MTEB ArguAna-PL | ndcg_at_1 | 38.407 |
| Retrieval | MTEB ArguAna-PL | ndcg_at_10 | 63.248 |
| Retrieval | MTEB ArguAna-PL | ndcg_at_100 | 65.717 |
| Retrieval | MTEB ArguAna-PL | ndcg_at_1000 | 65.790 |
| Retrieval | MTEB ArguAna-PL | ndcg_at_3 | 55.404 |
| Retrieval | MTEB ArguAna-PL | ndcg_at_5 | 59.760 |
| Retrieval | MTEB ArguAna-PL | precision_at_1 | 38.407 |
| Retrieval | MTEB ArguAna-PL | precision_at_10 | 8.862 |
| Retrieval | MTEB ArguAna-PL | precision_at_100 | 0.991 |
Using it via the API
Once AxForge deploys mmlw-e5-large for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (mmlw-e5-large below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/embeddings \
-H "Authorization: Bearer $AXFORGE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"mmlw-e5-large","input":"text to embed"}'
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.