BAAI/bge-multilingual-gemma2 · BM25 0.3 · top_k=25 · avec reranker bge-reranker-v2-m3
| K (top_k) | NDCG | MAP | Recall | Precision |
|---|---|---|---|---|
| 1 | 0.5267 | 0.5007 | 0.5007 | 0.5267 |
| 3 | 0.6030 | 0.5746 | 0.6573 | 0.2400 |
| 5 | 0.6241 | 0.5889 | 0.7111 | 0.1580 |
| 10 | 0.6455 | 0.5999 | 0.7708 | 0.0873 |
| 15 | 0.6551 | 0.6030 | 0.8058 | 0.0607 |
| 20 | 0.6590 | 0.6040 | 0.8090 | 0.0490 |
| 100 | 0.6558 | 0.6034 | 0.8076 | 0.0092 |
Configuration : top_k=20, recherche_hybrid=0 (embeddings uniquement), pas de reranker. Les scores montrent la performance pure de l'embedding bge-m3.
NDCG@20 = 0.6590 — légèrement supérieur à NDCG@10 (0.6455), le plateau est atteint. MAP à K=20 : 0.6040.
Recall à K=20 : 0.8090 — 80.9% des documents pertinents sont récupérés dans les 20 premiers résultats.
Precision : chute attendue de 0.5267 (K=1) à 0.0490 (K=20). À K=20, 4.9% des 20 résultats sont pertinents en moyenne par requête.
Comparaison hybride : bge-m3 embedding seul MAP@10 = 0.6040 (K=20) vs hybride BM25 0.3/0.4/0.5 MAP@10 = 0.5878. L'embedding seul surpasse l'hybridation légère de ~0.016. Mais le reranker pousse l'hybrid à 0.6571, donc reranker + hybride reste le meilleur.
| Configuration | BM25 0 | BM25 0.2 | BM25 0.3 | BM25 0.4 | BM25 0.5 | BM25 1 |
|---|---|---|---|---|---|---|
| sans reranker | 0.5719 ↓ | 0.5878 ★ | 0.5878 ★ | 0.5878 ★ | 0.5878 ★ | 0.5498 ↓↓ |
| avec reranker | 0.6571 ★ | 0.6535 | 0.6569 | 0.6569 | 0.6569 | 0.5931 ↓ |
Sans reranker : BM25 0.2–0.5 sont stables à 0.5878. BM25 0 chute à 0.5719 — la sémantique pure n'est pas optimale. BM25 1 chute à 0.5498 — le BM25 seul est insuffisant.
Avec reranker : MAP@10 atteint 0.6571 à BM25 0, et 0.6569 pour 0.3–0.5. Le reranker apporte un gain de +7.7 MAP.
Constat : Les runs BM25 0.3/0.4/0.5 sont strictement identiques. Le paramètre HYBRID_BM25_WEIGHT semble ignoré par OpenWebUI.
Interprétation : Le reranker external (TOP_K_RERANKER=25) réorganise les 50 résultats, rendant le poids BM25 marginal. BGE-M3 est suffisamment discriminant pour que le score BM25 n'ajoute rien de significatif.
MAP@10 — Comparaison BM25 weights avec/sans reranker
| Configuration | BM25 0 | BM25 0.2 | BM25 0.3 | BM25 0.4 | BM25 0.5 | BM25 1 |
|---|---|---|---|---|---|---|
| top_k=50 | 0.5906 R@10: 0.7688 | 0.6360 R@10: 0.7688 | 0.6360 ★ | 0.6357 | 0.6358 | 0.5793 ↓↓ |
| top_k=25 | 0.6309 R@10: 0.8147 | — | 0.639 ★ | — | 0.6363 | — |
| Configuration | BM25 0 | BM25 0.2 | BM25 0.3 | BM25 0.4 | BM25 0.5 | BM25 1 |
|---|---|---|---|---|---|---|
| top_k=50 | — | — | 0.6645 ★ | — | 0.6645 ★ | — |
| top_k=25 | — | — | 0.6769 ★ | — | — | — |
Avec reranker : MAP@10 atteint 0.6769 avec BM25 0.3 et top_k=25. Le gain par rapport au sans-reranker est de +4 MAP.
Sans reranker : BM25 0.2–0.5 stables à ~0.636. BM25 0 (0.5906) et BM25 1 (0.5793) nettement inférieurs.
Comparaison bge-m3 vs gemma2 : Le gemma2 avec reranker (0.6769) surpasse bge-m3 avec reranker (0.6571) — écart de +0.020 (+3.0%). Le reranker est plus efficace avec gemma2.
Modèle : BAAI/bge-multilingual-gemma2
BM25 weight : 0.3 (hybridation optimale)
Top K : 25 (plus efficace que 50)
Reranker : bge-reranker-v2-m3 activé (api-reranker.ailab.infocepo.com)
Résultat : MAP@10 = 0.6769, Recall@10 = 0.8333
HYBRID_BM25_WEIGHT ignoré : Les runs 0.3/0.4/0.5 sont strictement identiques pour bge-m3. Vérifier que le paramètre est bien propagé à l'engine de recherche OpenWebUI.
Reranker neutre l'effet BM25 : Avec TOP_K_RERANKER=25, le reranker réorganise les 50 résultats, rendant le poids BM25 marginal. Test en (1) sans reranker, (2) BM25 seul, (3) valeurs extrêmes 0.0/1.0 pour confirmer.
Top K=25 vs 50 : Pour gemma2, top_k=25 donne un MAP supérieur (0.6769 vs 0.6645) — la précision prime sur le rappel. Pour bge-m3, les deux sont identiques.