Embedding, reranking et multivector : trois signaux, un même moteur de recherche
Comment Context212 combine embedding dense, score de pertinence LLM et MaxSim multivector pour retrouver, affiner et juger vos passages documentaires.
Quand vous posez une question à Context212 (via Search ou Ask), la réponse ne repose pas sur un seul score magique. Le moteur enchaîne plusieurs signaux complémentaires. Trois d’entre eux structurent la recherche textuelle : l’embedding, le reranking (score de pertinence) et le multivector (MaxSim de type ColBERT).
Ils ne font pas le même travail. Les confondre, c’est mal lire un résultat, et mal concevoir un pipeline RAG.
1. L’embedding : trouver la bonne étagère
L’embedding transforme un passage entier (et votre requête) en un seul vecteur dense.
Ce qu’il répond : « Ce chunk parle-t-il à peu près du même sujet que ma question ? »
Où il intervient : dès l’ingestion des fichiers, puis en première étape de recherche : une recherche approximative par similarité. C’est ce signal qui alimente scores.text dans l’API.
Forces : rapide à l’échelle d’un corpus, bon rappel (recall) pour constituer une short-list de candidats.
Limites : un seul vecteur « moyenne » le passage ; des détails lexicaux précis peuvent s’estomper.
Sans embedding, pas de candidats. C’est le filet large.
2. Le reranking : demander au bibliothécaire
Une fois une vingtaine de passages remontés, Context212 peut lancer un score de pertinence via un modèle de langage. Ce n’est pas de la géométrie vectorielle : le modèle lit la question et le texte, puis attribue une note entre 0 et 1 (scores.relevance).
Ce qu’il répond : « Parmi ces candidats, lesquels répondent vraiment à la question ? »
Où il intervient : après la récupération vectorielle, de façon optionnelle (relevance_scoring : filtrer, scorer seulement, ou désactiver). Quand le scoring est actif, le champ score du résultat suit généralement cette pertinence.
Forces : nuance, négation, « presque mais pas tout à fait » : un jugement sémantique.
Limites : plus lent et plus coûteux ; il ne voit que le petit ensemble déjà sélectionné.
Le reranking Context212 est donc un juge LLM, pas un MaxSim ColBERT. Deux idées distinctes, souvent amalgamées sous le mot « rerank ».
3. Le multivector (MaxSim) : l’alignement mot à mot
Le multivector, décrit dans nos schémas API via scores.multivector, repose sur une autre idée : encoder des jetons (tokens), pas le passage entier. La requête devient une matrice de vecteurs ; chaque chunk aussi. Le score MaxSim additionne, pour chaque jeton de la requête, le meilleur appariement dans le document.
Ce qu’il répond : « Quels mots de la question s’alignent finement avec ce passage ? »
Où il s’insère : idéalement en second étage, sur les mêmes candidats que l’embedding a trouvés : un rerank géométrique, avant ou à côté du score LLM. La valeur est ≥ 0, sans plafond fixe ; plus elle est élevée, plus l’alignement est fort. Elle reste null tant que le mode multivector est désactivé ou indisponible pour le chunk.
Forces : précision token-niveau, utile pour départager des near-miss.
Limites : stockage plus lourd, modèle dédié (style ColBERT), distinct de l’embedding dense classique.
Trois étapes, une seule intention
Requête
│
├─① Embedding ──► candidats → scores.text
│
├─② Multivector ──► MaxSim sur ces K → scores.multivector
│
└─③ Reranking ──► pertinence LLM → scores.relevance
(score de tri si activé)
| Embedding | Reranking | Multivector | |
|---|---|---|---|
| Unité | 1 vecteur / chunk | Note LLM / chunk | Plusieurs vecteurs / chunk |
| Rôle | Rappeler des candidats | Juger l’utilité | Affiner l’alignement |
| Signal API | scores.text | scores.relevance | scores.multivector |
| Analogie | Trouver l’étagère | Demander au bibliothécaire | Vérifier mot à mot |
Pourquoi Context212 expose les trois
Les produits documentaires sérieux ne se contentent pas d’un ranking opaque. En séparant les signaux dans scores, Context212 vous laisse :
- comprendre pourquoi un passage remonte ;
- brancher votre propre logique (garder le dense, désactiver le LLM, anticiper le MaxSim) ;
- auditer Ask et Search avec des citations ancrées dans le corpus.
L’embedding assure le rappel. Le multivector affine. Le reranking tranche. Ensemble, ils forment le cœur de la recherche fondée de Context212, conçue pour que chaque réponse reste traçable jusqu’à la page source.