Qwen3-Embedding-0.6B, Arabic e-commerce, phase 2

A LoRA fine-tune of Qwen/Qwen3-Embedding-0.6B, merged, for dense retrieval over Arabic e-commerce product names. It is the second of two fine-tuning phases and is the dense component of a system built for the PrestoAI Arabic E-Commerce Search challenge.

Qwen3Model, hidden size 1024, bfloat16.

Use it without the query prompt

This is the one thing worth knowing before using this checkpoint.

config_sentence_transformers.json declares a query instruction prompt, and default_prompt_name is null, so model.encode(texts) applies no prompt. For this checkpoint that default is correct and should be left alone. It was fine-tuned in the no-prompt regime and adapted to it, so re-adding the instruction at inference costs accuracy:

checkpoint prompt dev nDCG@10 short queries (<=2 tokens)
this one none 0.4968 0.3812
this one query 0.4807 0.3608
base prestoai/qwen3-embedding-0.6b-arabic-ecom none 0.4291 0.2730
base prestoai/qwen3-embedding-0.6b-arabic-ecom query 0.4620 0.3414

The base checkpoint wants the opposite: it gains +0.068 on short queries from the prompt it declares but never applies by default. The two checkpoints therefore take opposite settings, and getting it backwards is silent, because nothing raises and the output still looks plausible.

from sentence_transformers import SentenceTransformer

model = SentenceTransformer("AhmedBarka/qwen3-embedding-0.6b-arabic-ecom-phase2")
model.max_seq_length = 128

# No prompt, for both queries and documents.
q = model.encode(["شاي احمر"], normalize_embeddings=True)
d = model.encode(["شاي احمر - تونسي"], normalize_embeddings=True)

What it is good at, and what it is not

Measured on the challenge's pooled benchmark, this model's top-50 has slightly better recall of judged-positive products than the lexical search engine's top-50 (0.6613 against 0.6557). It genuinely finds the right products.

It is a worse orderer than the lexical engine wherever that engine matched strongly, and using it to reorder strong lexical matches measurably loses score. In the system it was built for it is confined to generating candidates the lexical engine missed, and to supplying similarity features to a learned ranker. That placement, rather than the model's own strength, is what made it useful.

Provenance

Trained on the challenge's own training pairs, which are published as prestoai/arabic-ecom-data. A second training phase over phase 1 was worth +0.011 dev nDCG while recall@10 stayed flat (0.4271 to 0.4274), so this checkpoint is close to saturated for this data.

Full method, measurements and the failures behind them: https://github.com/ahmedbarka8/AI-Arabic-E-Commerce-Search-

Downloads last month
40
Safetensors
Model size
0.6B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for AhmedBarka/qwen3-embedding-0.6b-arabic-ecom-phase2

Adapter
(25)
this model

Dataset used to train AhmedBarka/qwen3-embedding-0.6b-arabic-ecom-phase2