Model reference · open weights

multilingual-e5-small

Available as managed deployment Embeddings Marqo Embeddings 1 variants 86 dl/mo

multilingual-e5-small is an open-weight embedding model from Marqo. 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

MakerMarqo
TypeEmbedding models
TaskEmbeddings
Parameters (lead)118M
Context512 tokens
Runs withsentence-transformers
Released2024-09-04
Popularity86 downloads / month
LicenceOpen weights

About

What multilingual-e5-small is

Multilingual-E5-small

Disclaimer: This model is cloned from intfloat/multilingual-e5-small. The only difference from the original model is pad_token_id in config.json which is corrected to 1.

Multilingual E5 Text Embeddings: A Technical Report. Liang Wang, Nan Yang, Xiaolong Huang, Linjun Yang, Rangan Majumder, Furu Wei, arXiv 2024

This model has 12 layers and the embedding size is 384.

Usage

Below is an example to encode queries and passages from the MS-MARCO passage ranking dataset.

import torch.nn.functional as F

from torch import Tensor
from transformers import AutoTokenizer, AutoModel

def average_pool(last_hidden_states: Tensor,
                 attention_mask: Tensor) -> Tensor:
    last_hidden = last_hidden_states.masked_fill(~attention_mask[..., None].bool(), 0.0)
    return last_hidden.sum(dim=1) / attention_mask.sum(dim=1)[..., None]

# Each input text should start with "query: " or "passage: ", even for non-English texts.
# For tasks other than retrieval, you can simply use the "query: " prefix.
input_texts = ['query: how much protein should a female eat',
               'query: 南瓜的家常做法',
               "passage: As a general guideline, the CDC's average requirement of protein for women ages 19 to 70 is 46 grams per day. But, as you can see from this chart, you'll need to increase that if you're expecting or training for a marathon. Check out the chart below to see how much protein you should be eating each day.",
               "passage: 1.清炒南瓜丝 原料:嫩南瓜半个 调料:葱、盐、白糖、鸡精 做法: 1、南瓜用刀薄薄的削去表面一层皮,用勺子刮去瓤 2、擦成细丝(没有擦菜板就用刀慢慢切成细丝) 3、锅烧热放油,入葱花煸出香味 4、入南瓜丝快速翻炒一分钟左右,放盐、一点白糖和鸡精调味出锅 2.香葱炒南瓜 原料:南瓜1只 调料:香葱、蒜末、橄榄油、盐 做法: 1、将南瓜去皮,切成片 2、油锅8成热后,将蒜末放入爆香 3、爆香后,将南瓜片放入,翻炒 4、在翻炒的同时,可以不时地往锅里加水,但不要太多 5、放入盐,炒匀 6、南瓜差不多软和绵了之后,就可以关火 7、撒入香葱,即可出锅"]

tokenizer = AutoTokenizer.from_pretrained('intfloat/multilingual-e5-small')
model = AutoModel.from_pretrained('intfloat/multilingual-e5-small')

# Tokenize the input texts
batch_dict = tokenizer(input_texts, max_length=512, padding=True, truncation=True, return_tensors='pt')

outputs = model(**batch_dict)
embeddings = average_pool(outputs.last_hidden_state, batch_dict['attention_mask'])

# normalize embeddings
embeddings = F.normalize(embeddings, p=2, dim=1)
scores = (embeddings[:2] @ embeddings[2:].T) * 100
print(scores.tolist())

Supported Languages

This model is initialized from microsoft/Multilingual-MiniLM-L12-H384 and continually trained on a mixture of multilingual datasets. It supports 100 languages from xlm-roberta, but low-resource languages may see performance degradation.

Training Details

Initialization: microsoft/Multilingual-MiniLM-L12-H384

First stage: contrastive pre-training with weak supervision

DatasetWeak supervision# of text pairs
Filtered mC4(title, page content)1B
CC News(title, news content)400M
NLLBtranslation pairs2.4B
Wikipedia(hierarchical section title, passage)150M
Filtered Reddit(comment, response)800M
S2ORC(title, abstract) and citation pairs100M
Stackexchange(question, answer)50M
xP3(input prompt, response)80M
Miscellaneous unsupervised SBERT data-10M

Second stage: supervised fine-tuning

DatasetLanguage# of text pairs
MS MARCOEnglish500k
NQEnglish70k
Trivia QAEnglish60k
NLI from SimCSEEnglish<300k
ELI5English500k
DuReader RetrievalChinese86k
KILT FeverEnglish70k
KILT HotpotQA

From the published model card. Full card on the HuggingFace links in the sidebar.

Benchmarks

Reported results

As published on the model card — the maker's own numbers, not measured by AxForge.

TaskDatasetMetricScore
ClassificationMTEB AmazonCounterfactualClassification (en)accuracy73.791
ClassificationMTEB AmazonCounterfactualClassification (en)ap37.000
ClassificationMTEB AmazonCounterfactualClassification (en)f167.955
ClassificationMTEB AmazonCounterfactualClassification (de)accuracy71.649
ClassificationMTEB AmazonCounterfactualClassification (de)ap82.119
ClassificationMTEB AmazonCounterfactualClassification (de)f169.880
ClassificationMTEB AmazonCounterfactualClassification (en-ext)accuracy75.810
ClassificationMTEB AmazonCounterfactualClassification (en-ext)ap24.469
ClassificationMTEB AmazonCounterfactualClassification (en-ext)f163.001
ClassificationMTEB AmazonCounterfactualClassification (ja)accuracy64.186
ClassificationMTEB AmazonCounterfactualClassification (ja)ap15.497
ClassificationMTEB AmazonCounterfactualClassification (ja)f152.072
ClassificationMTEB AmazonPolarityClassificationaccuracy88.699
ClassificationMTEB AmazonPolarityClassificationap85.270
ClassificationMTEB AmazonPolarityClassificationf188.656
ClassificationMTEB AmazonReviewsClassification (en)accuracy44.698
ClassificationMTEB AmazonReviewsClassification (en)f143.732
ClassificationMTEB AmazonReviewsClassification (de)accuracy40.246
ClassificationMTEB AmazonReviewsClassification (de)f139.386
ClassificationMTEB AmazonReviewsClassification (es)accuracy40.394
ClassificationMTEB AmazonReviewsClassification (es)f139.301
ClassificationMTEB AmazonReviewsClassification (fr)accuracy38.864
ClassificationMTEB AmazonReviewsClassification (fr)f137.980
ClassificationMTEB AmazonReviewsClassification (ja)accuracy37.682

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys marqo-multilingual-e5-small for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (marqo-multilingual-e5-small 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":"marqo-multilingual-e5-small","input":"text to embed"}'

Create an account — your API key is available in the console. 5M tokens/month currently included with every new account at launch.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms