Ordalie

Solon-embeddings-0.1

by Ordalie Open source

Tl;dr

  • Solon Embeddings 0.1 est un modèle d'embedding français open source sous license MIT entraîné par Ordalie.
  • Solon large est le meilleur modèle open source d'embedding en français à notre connaissance — il présente le plus haut score moyen sur les benchmarks publics en français.
  • Disponible sur HuggingFace 🤗 en deux versions : base (268M paramètres, 768 dimensions) & large (560M paramètres, 1024 dimensions).
  • Pour mesurer la performance globale de Solon, nous avons eu recours à 9 benchmarks : 6 provenant de la collection MTEB, 1 provenant de Miracl et 2 que nous avons créés et publiés pour accroître la diversité des tests.

Performance & benchmarks

Pour mesurer la performance globale de Solon, nous avons eu recours à 9 benchmarks.
Premièrement, l'illustre projet MTEB (arxiv) qui propose pas moins de 6 sets en français. Nous avons également utilisé le subset français du benchmark multilingue Miracl (arxiv).

Enfin, nous proposons également deux nouvelles datasets françaises de benchmark :

Nous avons compilé l'ensemble du benchmark dans un fork de MTEB si vous souhaitez reproduire nos résultats ou évaluer vos propres modèles.


Grâce à ses deux phases d'entraînement, Solon large sur-performe en moyenne les autres modèles sur les tâches de similarité & recherche en langue française des benchmarks mentionnés.

Détails techniques

Solon Embeddings 0.1 est un modèle d'embedding multilingue entrainé sur du français (90%) et de l'anglais (10%). Il est aujourd'hui basé sur le modèle xlm-roberta/e5 de Microsoft, bénéficiant ainsi du pré-entraînement contrastif(arxiv) massif & coûteux de ce dernier.

Les versions { base, large } ont été réentraînées sur deux phases supervisées successives :

  1. Entraînement contrastif supervisé large : 36M de phrases en français et 4M de phrases en anglais — l'objectif ici est de recalibrer le modèle (originellement multilingue) spécifiquement sur les langues ciblées.
    • Hardware : { 2, 4 }x Nvidia A100 80GB
    • Batch size : { 192, 144 } sur { 2, 1 } epochs
    • Learning rate : { 8, 7 } e-06
    • optimizer : Adam avec betas=(0.9, 0.999) et epsilon=1e-08
    • lr_scheduler_type : linear
    • Cette phase a duré { 24h, 26h }
  2. Entraînement contrastif supervisé ciblé : 60k paires de phrases initiales en français soigneusement sélectionnées & générées, pour garantir une qualité et diversité des données, puis augmentées avec des "hard negatives".
    • Hardware : { 2, 4 }x Nvidia A100 80GB
    • Batch size : { 192, 128 } sur { 8, 20 } epochs
    • Learning rate : { 5, 1 } e-06
    • optimizer : Adam avec betas=(0.9, 0.999) et epsilon=1e-08
    • lr_scheduler_type : linear
    • Cette phase a duré { 1h, 2h }

La bonne performance de Solon sur les benchmarks s'explique d'abord par la qualité des échantillons utilisés pour la deuxième phase d'entraînement - nous avons opté pour des paires semi-synthétiques associant un passage tiré de grands corpus de textes à un second passage généré par un LLM.

Deuxièmement, la séléction des paires négatives dites "hard negatives" est cruciale. Pour optimiser leur création, nous avons opté pour un ensemble de stratégies mêlant BM25 et Dense Passage Retrieval (DPR)(arxiv).

Conclusions et Perspectives

L'objectif de ce projet était principalement d'atteindre le score le plus élevé sur un objectif de similarité textuelle en français. Il a été réalisé avec un budget limité imposant certaines concessions.

Une des grandes difficultés de ce projet a été de trouver des datasets de qualité pour évaluer les performances de Solon. Nous avons donc créé deux nouveaux benchmarks français mais si vous souhaitez contribuer à l'amélioration des benchmarks français, n'hésitez pas à nous contacter.

De nouvelles itérations de Solon seront prévues à l'avenir, notamment pour améliorer les capacités multilingues de ce dernier. Nous travaillons également à augmenter la taille de contexte du modèle, qui est aujourd'hui limitée à 512 tokens.


Enfin, nous prévoyons de multiples recrutements pour renforcer les équipes d'Ordalie. Si vous êtes intéressé(e) par le projet, n'hésitez pas à nous contacter, nous serions ravis d'en discuter avec vous.

- Baudouin

© 2024 Ordalie, Tous droits réservés.