Views
No views yet
| Dim | Zero-shot | Stage 1 | Stage 2 | Delta (ZS to S2) |
|---|---|---|---|---|
| 1024 | 0.8013 | 0.9419 | 0.9467 | +0.1454 |
| 768 | 0.8109 | 0.9452 | 0.9479 | +0.1370 |
| 512 | 0.8043 | 0.9427 | 0.9449 | +0.1406 |
| 256 | 0.7691 | 0.9343 | 0.9412 | +0.1721 |
| 128 | 0.7358 | 0.9154 | 0.9163 | +0.1805 |
| 64 | 0.6727 | 0.8907 | 0.8854 | +0.2127 |
| Metric | Zero-shot | Stage 2 | Delta |
|---|---|---|---|
| NDCG@10 | 0.8013 | 0.9467 | +0.1454 |
| MRR@10 | 0.7605 | 0.9340 | +0.1735 |
| MAP@100 | 0.7638 | 0.9348 | +0.1710 |
| Accuracy@1 | 0.6794 | 0.9000 | +0.2206 |
| Accuracy@3 | 0.8088 | 0.9618 | +0.1530 |
| Accuracy@5 | 0.8706 | 0.9735 | +0.1029 |
| Accuracy@10 | 0.9294 | 0.9853 | +0.0559 |
| Recall@10 | 0.9294 | 0.9853 | +0.0559 |
pip install sentence-transformers>=2.7.0 transformers>=4.51.01from sentence_transformers import SentenceTransformer
2
3model = SentenceTransformer("danielnoumon/qwen3-embedding-0.6b-ai-act-nl")
4
5# Qwen3 uses instruct prompts for queries, no prefix for documents
6queries = model.encode(
7 ["What are the obligations for high-risk AI systems?"],
8 prompt="Instruct: Given a question about EU AI regulation, retrieve the most relevant passage\nQuery:",
9)
10passages = model.encode([
11 "High-risk AI systems must comply with requirements in Chapter III...",
12 "The AI Act defines prohibited practices in Article 5...",
13])
14
15# Compute similarity
16from sentence_transformers.util import cos_sim
17scores = cos_sim(queries, passages)1# Encode with full 1024 dimensions
2embeddings_1024 = model.encode(queries)
3
4# Truncate to 256 dimensions for faster search
5embeddings_256 = embeddings_1024[:, :256]
6
7# Or specify dimension at encoding time
8model.truncate_dim = 256
9embeddings_256 = model.encode(queries)1# Queries: use instruct prompt
2query_emb = model.encode(
3 ["your question here"],
4 prompt="Instruct: Given a question about EU AI regulation, retrieve the most relevant passage\nQuery:",
5)
6
7# Documents: no prefix needed
8doc_emb = model.encode(["your document here"])MatryoshkaLoss(CachedMultipleNegativesRankingLoss)1@misc{qwen3embedding,
2 title={Qwen3-Embedding: Advancing Text Embeddings with Qwen3},
3 author={Qwen Team},
4 year={2025},
5 url={https://huggingface.co/Qwen/Qwen3-Embedding-0.6B}
6}
7
8@inproceedings{reimers-2019-sentence-bert,
9 title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
10 author = "Reimers, Nils and Gurevych, Iryna",
11 booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
12 year = "2019",
13 url = "https://arxiv.org/abs/1908.10084",
14}
15
16@misc{kusupati2024matryoshka,
17 title={Matryoshka Representation Learning},
18 author={Aditya Kusupati and Gantavya Bhatt and Aniket Rege and Matthew Wallingford and Aditya Sinha and Vivek Ramanujan and William Howard-Snyder and Kaifeng Chen and Sham Kakade and Prateek Jain and Ali Farhadi},
19 year={2024},
20 eprint={2205.13147},
21 archivePrefix={arXiv},
22 primaryClass={cs.LG}
23}