Open Source · Analyse

SlideOn et mSlideOn : LightOn ouvre deux modèles de recherche « parcimonieuse »

LightOn publie sous Apache 2.0 deux petits modèles de recherche documentaire d'un genre à part : au lieu d'un vecteur dense, ils produisent une courte liste de concepts actifs. La version multilingue couvre le français et le code. Fonctionnement, chiffres annoncés et points à vérifier.

Par Kayzen AI · · 3 min de lecture

Visuel officiel publié par LightOn
Image : LightOn

Pour qu'un assistant réponde à partir de vos documents, il faut d'abord retrouver les bons passages. Trois familles de modèles s'en chargent. Les modèles denses résument chaque texte en un seul vecteur. Les modèles à interaction tardive gardent un vecteur par mot, plus précis mais plus lourd à stocker. Les modèles parcimonieux, eux, n'activent qu'un petit nombre de cases dans un très grand vecteur. LightOn vient de publier deux modèles de cette troisième famille.

Deux modèles

  • SlideOn : 174 millions de paramètres, anglais uniquement. Il est dérivé de DenseOn, le modèle dense de LightOn.
  • mSlideOn : 339 millions de paramètres, multilingue. Il est dérivé de mLateOn. Sa fiche liste neuf langues d'entraînement, dont le français, l'allemand, l'italien et l'espagnol, plus le code.

Les deux acceptent jusqu'à 8 192 tokens en entrée et sont sous licence Apache 2.0. LightOn publie aussi les points de contrôle intermédiaires, les données d'entraînement et les scripts.

Le principe

Chaque texte est décrit par un vecteur de 32 768 « concepts » appris, dont très peu sont actifs : au plus 32 par mot. Un index de ce type se rapproche d'un index de mots-clés classique, à ceci près que les cases ne correspondent pas à des mots du dictionnaire.

Un réglage permet de limiter le nombre de concepts conservés au moment de l'usage. Moins de concepts côté question, c'est une recherche moins coûteuse. Moins de concepts côté document, c'est un index plus petit.

Mise en route

Les modèles se chargent avec la bibliothèque sentence-transformers (version 6.1), sans autre dépendance propre à LightOn :

from sentence_transformers import SparseEncoder

model = SparseEncoder("lightonai/mSlideOn", trust_remote_code=True)
q = model.encode_query(["Qu'est-ce qui provoque une éclipse solaire ?"])
d = model.encode_document(["A solar eclipse occurs when the Moon passes between the Sun and Earth."])
scores = model.similarity(q, d)

Le paramètre max_active_dims fixe le nombre de concepts gardés.

Les chiffres annoncés

Ils viennent de LightOn :

  • en anglais (BEIR-15), SlideOn obtient 56,68, contre 56,20 pour DenseOn et 57,22 pour LateOn ;
  • en multilingue (MIRACL), mSlideOn obtient 62,78, contre 58,02 pour mDenseOn et 55,48 pour BGE-M3 en mode parcimonieux ;
  • en recherche de code (MTEB Code), 74,78, devant les modèles dense et à interaction tardive de la maison.

Les limites

  • mLateOn reste devant sur le multilingue (67,04 sur MIRACL) et nettement devant sur les documents longs (77,92 contre 61,68 sur MLDR). mSlideOn n'est pas le modèle le plus précis du catalogue.
  • Les mesures de coût publiées sont des indicateurs calculés sur un échantillon, pas des temps de réponse ni des tailles d'index réelles. La fiche le dit explicitement.
  • Le chargement demande trust_remote_code=True : du code fourni avec le modèle s'exécute sur votre machine. À relire ou à figer sur une version précise.
  • Les concepts étant appris, on ne peut pas les relire comme des mots : l'argument d'explicabilité des index parcimonieux classiques ne s'applique pas tel quel.
  • Aucun fournisseur d'inférence ne les héberge sur Hugging Face pour l'instant : il faut les faire tourner soi-même.

Notre lecture

Ces modèles intéressent surtout les équipes qui exploitent déjà un moteur de recherche capable d'indexer des vecteurs parcimonieux et qui veulent une meilleure pertinence sans stocker un vecteur par mot. La version multilingue, entraînée sur le français et sous licence permissive, est un candidat crédible pour une base documentaire d'entreprise.

Pour une PME qui démarre, un modèle dense reste plus simple à mettre en place. mSlideOn se justifie quand le volume de documents grossit ou quand on cherche dans du code. Dans tous les cas, la comparaison se fait sur vos propres questions, pas sur les bancs d'essai.

Sources

  1. LightOn — SlideOn & mSlideOn: Sparse Retrieval, Built From Our Own Models — source primaire
  2. Hugging Face — fiche du modèle lightonai/mSlideOn
  3. Hugging Face — fiche du modèle lightonai/SlideOn