QuanFire Multilingual Embedding — prod-a70s30-fr

A production multilingual sentence-embedding adapter, Indic-first and trained only on openly-licensed, commercially-clean data. It is a LoRA adaptation over a frozen intfloat/multilingual-e5-small (MIT) base — a 3.4 MB adapter, 384-dimensional normalized vectors, max_length 256.

This is not a from-scratch foundation model. The contribution is the framework, the Indic strength, and training data whose licence you can actually ship on.

What it covers

  • 10 Indic languages — Hindi, Bengali, Gujarati, Kannada, Malayalam, Marathi, Sanskrit, Tamil, Telugu, Urdu.
  • 15 global languages stay competitive — English, French, German, Spanish, Italian, Portuguese, Russian, Arabic, Turkish, Chinese, Japanese, Korean, Thai, Vietnamese, Indonesian.

Results (held-out, scored on CUDA)

Instrument base e5-small e5 v2 prod-a70s30-fr
Global FLORES-200 cross-lingual, all-pairs recall 0.9268 0.9488 0.9762
French retrieval 0.961 0.977 0.990
Indic in-domain, non-Hindi X↔Y recall@1 0.7875 0.8964 0.8994
Hindi-pivot mixed-pool recall@10 0.7495 0.8852 0.8914
FLORES non-Hindi recall@1 0.9847 0.9609 0.9785

Global all-pairs beats both the base model and e5 v2; French is recovered with no language regressed against the base. Indic instruments beat v2 across the board and stay neutral within sampling noise versus the prior internal Indic model.

Usage

The adapter runs through the QuanFire framework (it applies the LoRA over the base and produces normalized embeddings). Install the package and pull the weights:

pip install 'quanfire-multilingual-embedding[neural]'

# download this model's files into a local directory
hf download quanfire-ai/multilingual-embedding --local-dir multilingual-embedding

As an HTTP embeddings service (recommended for applications). This exposes an OpenAI-compatible POST /v1/embeddings endpoint, so your app stores the vectors in its own database or vector index:

qfme serve --adapter multilingual-embedding --port 8000
curl -s localhost:8000/v1/embeddings \
  -H 'content-type: application/json' \
  -d '{"input": ["नमस्ते दुनिया", "hello world", "bonjour le monde"]}'
# -> {"object":"list","data":[{"index":0,"embedding":[...384 floats...]}, ...],
#     "model":"multilingual-embedding","usage":{...},"prefix_applied":null}

This model is symmetric (empty prefixes), so input_type is not required; pass "input_type": "query" or "passage" only for asymmetric models.

In-process, as a search pipeline:

from multilingual_embedding.pipelines.search import SemanticSearchPipeline

pipe = SemanticSearchPipeline.from_adapter("multilingual-embedding")
pipe.index(["नमस्ते दुनिया", "hello world", "bonjour le monde", "Bonjour tout le monde"])
for hit in pipe.search("a french greeting", top_k=3):
    print(hit.rank, round(hit.score, 3), hit.text)

Vectors are L2-normalized float32 (dimension 384), so cosine similarity is a dot product and they drop straight into any vector database or ANN index.

Licence & provenance

Weights: CC BY-SA 4.0. Use them commercially and redistribute them freely, provided you keep attribution and license derivative weights under the same share-alike terms. The share-alike floor comes from the training data, not preference — every source is openly licensed and documented:

Source Role in the blend Licence
Wikipedia langlink-mined pairs article side (~70%) CC BY-SA 4.0
BPCC-Mined bitext (10 languages) sentence side (~30%) CC0
itihasa (Sanskrit) sentence side Apache-2.0
Tatoeba (en↔fr) French-recovery fold CC BY
intfloat/multilingual-e5-small base checkpoint MIT

CC BY-SA is the strongest obligation in the mix and so sets the weights licence; CC0, Apache-2.0, CC BY and MIT are all compatible and add only attribution. The net effect: the weights are commercially usable and redistributable — you can ship them in a paid product and also release them.

The framework source code is Apache-2.0 (separate from these weights).

Limitations

  • A LoRA adapter over a published checkpoint — not an independently pretrained model.
  • Cross-lingual retrieval is only as strong as the training corpus was parallel; on out-of-domain FLORES non-Hindi the base model can edge it, an expected effect of in-domain specialization.
  • Exact (brute-force cosine) search is the intended regime up to ~10⁵–10⁶ vectors; beyond that, add your own ANN index.

Citation

QuanFire Multilingual Embedding (prod-a70s30-fr).
QuanFire, 2026. https://github.com/Quanfire-AI/quanfire-multilingual-embedding
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for quanfire-ai/multilingual-embedding

Adapter
(2)
this model