Nouvelles
Modèles
API
keyboard_arrow_down
Lecteur
Lisez les URL et effectuez des recherches sur le Web pour de meilleurs LLM de base.
Intégrations
Intégrations multimodales et multilingues de classe mondiale.
Reclasseur
Récupérateur neuronal de classe mondiale pour maximiser la pertinence de la recherche.
MCP terminalCLIarticlellms.txtsmart_toyAgentsdata_objectSchémamenu_bookDocuments



Se connecter
login
L'efficacité des paramètres de ModernBERT
Modélisation du code par ModernBERT
Gestion du contexte long par ModernBERT
La leçon amère ?
Conclusion
Blog technique
janvier 22, 2025

Que devrions-nous apprendre de ModernBERT ?

Des données d'entraînement plus volumineuses, un dimensionnement efficace des paramètres et une architecture profonde mais fine, ModernBERT trace la voie pour les futurs modèles de type BERT.
Nan Wang
Alex C-G
Nan Wang, Alex C-G • 10 minutes lues

En 2018, Google a lancé BERT qui a révolutionné le NLP, bien avant la vague actuelle des LLM. Même aujourd'hui, de nombreux Small Language Models sont basés sur BERT. En décembre 2024, ModernBERT applique les enseignements tirés des développements récents des LLM à ces modèles plus petits. Les points clés ? Une meilleure efficacité des paramètres, la compréhension du code et la gestion des longs contextes.

Dans cet article, nous allons comparer ModernBERT à deux modèles que nous connaissons parfaitement : jina-XLM-RoBERTa (le socle multilingue de jina-embeddings-v3) et RoBERTa-large. Examinons chaque modèle :

  • ModernBERT (déc. 2024) est un SLM récemment publié, développé en collaboration par Answer.AI, LightOn et HuggingFace. Il utilise des optimisations modernes comme RoPE pour une fenêtre de contexte de 8 192 tokens et des couches GeGLU, améliorant les performances tout en maintenant l'efficacité.
  • jina-XLM-RoBERTa (sept. 2024) est un modèle d'embedding de texte multilingue basé sur le XLM-RoBERTa de Meta. Alors que le XLM-RoBERTa original améliore RoBERTa en utilisant le grand dataset multilingue XLM, jina-XLM-RoBERTa va plus loin avec l'entraînement sur contexte étendu, l'implémentation de RoPE, et le support de FlashAttention-2. Ce modèle sert de base à jina-embeddings-v3.
  • RoBERTa-large (juillet 2019) développé par Meta, est une version améliorée de BERT avec 355 millions de paramètres. Grâce à un entraînement prolongé, des datasets plus importants et des innovations comme le masquage dynamique, il a obtenu des résultats impressionnants sur des benchmarks clés comme GLUE, SQuAD, et RACE. Cela le rend adapté à diverses tâches NLP, de la classification de texte aux questions-réponses.

En comparant ces modèles selon trois aspects fondamentaux, nous visons à mettre en évidence les choix de conception efficaces de ModernBERT pour les développeurs de modèles et à identifier des insights clés pour le développement des futurs modèles de type BERT. Nous partagerons également nos apprentissages du développement de jina-embeddings-v3 et discuterons des améliorations prévues pour jina-embeddings-v4 et jina-reranker-v3.

tagL'efficacité des paramètres de ModernBERT

Examinons d'abord l'approche de ModernBERT concernant l'efficacité des paramètres - il intègre plusieurs insights clés des développements récents des LLM. ModernBERT s'appuie sur trois stratégies principales : une architecture plus profonde mais plus fine, une taille de vocabulaire contrôlée, et une mise à l'échelle progressive du modèle partant de modèles plus petits.

tagArchitecture profonde et fine

ModernBERT-large va plus profond avec 28 couches, alors que jina-XLM-RoBERTa et RoBERTa-large en ont 24. Mais voici la partie intéressante - il égale RoBERTa-large en nombre de paramètres malgré ces couches supplémentaires. jina-XLM-RoBERTa nécessite plus de paramètres car il gère 89 langues, tandis que les deux autres se concentrent uniquement sur l'anglais.

La profondeur (nombre de couches) est plus importante que la largeur (nombre d'unités cachées) pour les petits LLM. Une structure de modèle profonde et fine excelle dans la capture des concepts abstraits, aboutissant à de meilleures performances finales.

La majorité des paramètres d'un transformer provient des couches d'attention et entièrement connectées. ModernBERT reste compétitif en termes de taille en étant plus "fin" - il utilise 2 624 unités cachées sur 28 couches, comparé aux 4 096 unités de RoBERTa-large sur 24 couches. Cette configuration plus "profonde" mais plus fine leur permet d'atteindre leurs objectifs de performance sans gonfler le modèle.

ModernBERT-large jina-XLM-RoBERTa RoBERTa-large
Parameters 400M 550M 355M
Hidden states 1,024 1,024 1,024
Intermediate dims 2,624 4,096 4,096
Attention heads 16 16 16
Layers 28 24 24
Vocabulary size 50,368 250,002 50,265

Cette approche s'aligne avec la recherche MobileLLM de Meta, qui a découvert que pour les petits modèles, la profondeur est plus importante que la largeur pour capturer des motifs complexes et améliorer les performances. Essentiellement, la capacité de traiter l'information à travers plus de couches transformer s'avère plus précieuse que d'avoir des couches plus larges pour le traitement parallèle.

Examinons les données sur les performances de cette architecture profonde et fine.

Comparé aux modèles similaires utilisant l'architecture traditionnelle peu profonde et large, ModernBERT obtient de meilleurs résultats sur les tâches clés comme la recherche et STS - tout en gardant un nombre de paramètres similaire.
ModernBERT-large jina-XLM-RoBERTa RoBERTa-large
STS12 72.6 72.7 68.9
STS13 84.9 83.9 81.0
STS14 77.5 77.7 74.8
STS15 84.8 85.8 84.1
STS16 79.4 79.6 78.6
STS17 87.5 87.2 87.2
TRECCOVID 61.1 59.6 49.3
FiQA 44.4 40.0 40.7
NFCorpus 32.6 30.6 27.9
SciFact 68.6 65.5 63.1
Average 69.3 68.2 65.6

Prenons jina-XLM-RoBERTa - il s'appuie sur l'architecture peu profonde et large de RoBERTa-large mais augmente le vocabulaire de 50K à 250K tokens et s'entraîne sur plus de données. Pourtant ModernBERT le surpasse légèrement, suggérant que le changement architectural fait une réelle différence en termes d'efficacité.

tagLa taille du vocabulaire est importante

Regardons d'abord comment les paramètres de vocabulaire sont comptés dans les transformers. Pour tout transformer, paramètres de vocabulaire = nombre de tokens distincts × taille cachée. Prenons jina-XLM-RoBERTa : avec 250K tokens et 1 024 dimensions, il nécessite 256M paramètres juste pour l'encodage du vocabulaire - avant même de gérer les tâches linguistiques réelles !

Dans les transformers, la première couche convertit les tokens en états cachés en utilisant une matrice de poids, à savoir les poids du vocabulaire. Si l'on considère l'utilisation de tous les points de code UTF-8 (1 112 064) avec 1 024 dimensions cachées - il faudrait un énorme 1,112,064 × 1,024 = 1 B paramètres juste pour la conversion des tokens. Bien que les grands LLM (plus de 100B paramètres) puissent gérer cette surcharge, c'est une contrainte sérieuse pour les modèles plus petits. C'est exactement pourquoi nous utilisons des tokenizers comme BPE, qui fusionnent efficacement les points de code UTF-8 communs en tokens uniques.

Mais voici le point important : les poids du vocabulaire ne contribuent pas aux mécanismes d'attention - ce sont juste des tables de consultation. Pour les SLM travaillant avec des budgets de paramètres fixes, un vocabulaire plus large signifie moins de paramètres disponibles pour les couches d'attention, qui effectuent le véritable traitement du langage. Cela explique pourquoi ModernBERT-large monolingue anglais surpasse le multilingue jina-XLM-RoBERTa malgré sa plus petite taille - jina-XLM-RoBERTa alloue plus de paramètres (47 %) pour prendre en charge plusieurs langues. Le vocabulaire ciblé de ModernBERT améliore non seulement les performances mais accélère aussi l'inférence, le rendant particulièrement efficace pour les applications aux ressources limitées.

Donc si nous regardons maintenant uniquement les paramètres du modèle principal (en excluant les poids du vocabulaire), ModernBERT dispose en réalité de plus de puissance de calcul que ses pairs : ModernBERT consacre 19 % de paramètres en plus à la modélisation réelle du langage que jina-XLM-RoBERTa et 15 % de plus que RoBERTa-large !

Spécifications du modèle ModernBERT-large jina-XLM-RoBERTa RoBERTa-large
Support des langues Anglais uniquement 89 langues Anglais uniquement
Taille du vocabulaire 50,4K 250K 50,3K
Paramètres totaux 400M 550M 355M
Paramètres du vocabulaire 51M 256M 51M
Ratio des paramètres du vocabulaire 13 % 47 % 14 %
Paramètres du modèle principal 349M 294M 304M

tagMise à l'échelle du modèle par "Weight Tiling"

En construisant le backbone jina-BERT-v2, nous avons constaté que l'entraînement des SLM à partir de zéro était gourmand en ressources et complexe. ModernBERT résout ce problème avec une approche d'initialisation intelligente appelée weight tiling - essentiellement en initialisant ModernBERT-large à partir des poids de sa version base plus petite.

Cette technique n'est pas entièrement nouvelle - elle s'appuie sur le travail de DeepMind avec Gopher et apparaît aussi dans les modèles Phi-2 de Microsoft. Mais son application ici est particulièrement efficace pour résoudre le goulot d'étranglement de l'entraînement des SLM.

ModernBERT passe de 22 à 28 couches en utilisant la stratégie d'initialisation en profondeur de l'équipe Gopher. Pour ces couches supplémentaires (23-28), ils initialisent chacune en utilisant les poids des 22 couches d'origine de ModernBERT-base. Pour les matrices de poids de chaque couche, ils utilisent l'approche de pavage central de Phi-2. Voici comment ça fonctionne : ils prennent les poids de ModernBERT-base et les placent au centre des matrices de ModernBERT-large. Pour les bords encore vides ? Ils enroulent les poids d'origine de manière cyclique pour les remplir.

Cette stratégie d'initialisation donne à ModernBERT-large un avantage significatif - au lieu de partir de zéro, il exploite les motifs pré-appris de sa version plus petite. Elle s'est révélée particulièrement efficace pour la mise à l'échelle des modèles de langage de cette taille.

Nous constatons qu'un modèle initialisé à chaud se remet rapidement d'une perte initiale élevée (due aux paramètres ajoutés) pour atteindre une perte très proche de celle du modèle de base. Nous sommes capables d'étendre 417M paramètres par plus de 3× en taille tout en maintenant des performances supérieures à un modèle équivalent entraîné à partir de zéro jusqu'à convergence, ce qui implique que les gains n'étaient pas limités au début de l'entraînement. Cependant, pour des tailles plus importantes, les gains relatifs obtenus à la convergence diminuent, en particulier avec les extensions en largeur.

L'enroulement cyclique des poids n'est pas qu'une commodité - il s'aligne bien avec la façon dont les matrices d'attention présentent naturellement des motifs périodiques. La recherche de Gopher montre que cette approche excelle particulièrement pour les SLM (moins de 9B paramètres), bien que les avantages commencent à s'estomper lorsqu'on passe à des modèles plus grands.

tagModélisation du code par ModernBERT

ModernBERT apporte une approche spécialisée à la compréhension du code avec son tokenizer optimisé pour le code et ses données d'entraînement. Cet ajustement fin pour le traitement du code se révèle payant tant dans les tâches de compréhension que de recherche.

Nous avons effectué un benchmark en utilisant le corpus jina-embeddings-v2-code, comparant trois modèles comme backbones : ModernBERT, jina-XLM-RoBERTa, et RoBERTa-large. Le test ? CodeSearchNet - faire correspondre des descriptions textuelles à des extraits de code. ModernBERT a surpassé les deux alternatives sur tous les points.

L'écart est logique - ni jina-XLM-RoBERTa ni RoBERTa-large n'ont été exposés aux langages de programmation pendant l'entraînement. Pendant ce temps, ModernBERT-large s'est entraîné sur deux billions de tokens, incluant une quantité substantielle de code. Cette exposition à la syntaxe et aux motifs de programmation lui donne un net avantage dans les tâches liées au code. jina-XLM-RoBERTa devance légèrement RoBERTa-large, probablement en raison de ses données d'entraînement multilingues plus importantes - même architecture, plus d'exposition. Néanmoins, les deux sont largement dépassés par ModernBERT-large.
Tâche ModernBERT-large jina-XLM-RoBERTa RoBERTa-large
AdvRetrieval 0.342 0.363 0.331
QueryRetrieval.python 0.521 0.530 0.525
QueryRetrieval java 0.679 0.633 0.644
QueryRetrieval.javascript 0.755 0.768 0.732
QueryRetrieval.php 0.815 0.781 0.755
QueryRetrieval.ruby 0.729 0.744 0.722
QueryRetrieval.go 0.833 0.809 0.796
Retrieval.go 0.778 0.750 0.759
Retrieval.java 0.840 0.792 0.796
Retrieval.javascript 0.817 0.792 0.757
Retrieval.php 0.852 0.805 0.796
Retrieval.python 0.849 0.816 0.787
Retrieval.ruby 0.849 0.796 0.803
Avg. 0.743 0.721 0.708

tagL'avantage du Tokenizer

Examinons pourquoi ModernBERT gère si bien le code - il utilise le tokenizer OLMo, qui a été spécifiquement entraîné sur du code, plutôt que les tokenizers BERT/RoBERTa standard.

Un tokenizer découpe le texte UTF-8 en tokens qui sont mappés en vecteurs - c'est ce que le modèle traite réellement. Pendant l'entraînement, il apprend à combiner les séquences de caractères fréquentes en tokens uniques. La différence ? Un tokenizer standard pourrait découper init en in + it, ignorant le contexte de programmation. Mais le tokenizer de ModernBERT, conscient du code, le comprend sans le découper.

Voici où ça devient intéressant avec la gestion des espaces : ModernBERT préserve les espaces en début de ligne Python comme des tokens uniques et différencie 4 vs 8 espaces - crucial pour la structure du code. Pendant ce temps, jina-XLM-RoBERTa réduit tous les espaces continus en un seul _, et RoBERTa-large traite chaque espace comme son propre token. Cela signifie que l'encodeur de ModernBERT reçoit une entrée plus propre et plus significative lors du traitement du code, tandis que les autres travaillent avec des tokens fragmentés et moins cohérents.

ModernBERT préserve les espaces en début de ligne Python comme des tokens uniques et différencie 4 vs 8 espaces - crucial pour la structure du code ; tandis que les autres travaillent avec des tokens fragmentés et moins cohérents.

tagGestion du contexte long par ModernBERT

ModernBERT a fait des progrès significatifs dans le traitement des textes longs, grâce à son vaste corpus d'entraînement (300B tokens avec des échantillons de 8 192 tokens) et des techniques avancées comme l'attention globale et locale combinée.

Pour évaluer les capacités de gestion des documents longs, nous avons utilisé le dataset MLDR - un benchmark complet de textes longs couvrant 13 langues. Comme ModernBERT ne prend actuellement en charge que l'anglais, nous nous sommes concentrés sur le sous-ensemble anglais de MLDR pour comparer ModernBERT à jina-XLM-RoBERTa. Bien que ces deux modèles puissent gérer des entrées de 8K tokens, RoBERTa-large a été exclu de ce benchmark en raison de sa limite de 512 tokens, insuffisante pour l'analyse de textes longs.

ModernBERT-large jina-XLM-RoBERTa
MLDR-en 0.351 0.290

La performance supérieure de ModernBERT n'est pas seulement due à son entraînement extensif sur des textes longs - c'est largement grâce à sa combinaison innovante de mécanismes d'attention globale et locale. Contrairement à jina-XLM-RoBERTa, qui applique une attention globale coûteuse en calcul à chaque couche, ModernBERT adopte une approche plus efficace. Il alterne entre l'attention globale (utilisée tous les trois couches avec un theta de 160 000) et l'attention locale (utilisant une fenêtre glissante de 128 tokens avec un theta de 100 000). Cette stratégie hybride maintient une performance élevée tout en réduisant considérablement le temps d'entraînement.

Dans ModernBERT, chaque troisième couche utilise une attention globale avec un RoPE theta de 160 000 et les couches restantes utilisent une fenêtre glissante locale de 128 tokens avec un RoPE theta de 10 000. —— ModernBERT

tagLa leçon amère ?

La loi d'échelle et la leçon amère suggèrent que les améliorations majeures de performance proviennent principalement de l'augmentation du nombre de paramètres et des données d'entraînement. Ce principe a guidé notre approche d'expansion du corpus et d'utilisation de LoRA pour les adaptations spécifiques aux tâches.

Cependant, le succès de ModernBERT a révélé que nous avions sous-estimé le pouvoir de l'optimisation architecturale. Il démontre que les SLM peuvent atteindre des résultats exceptionnels grâce à une meilleure efficacité données-modèle, sans nécessairement augmenter les paramètres. Un récent rapport technique sur Stella Embeddings renforce cette conclusion, indiquant que les méthodes actuelles d'entraînement des modèles d'embedding peuvent être améliorées sans augmenter la taille du corpus ou du modèle.

Graphique montrant la loi d'échelle des modèles d'embedding avec la 'Taille des paramètres' sur l'axe x et 'Performance MTEB' sur l'axe y
Loi d'échelle des modèles d'embedding. La performance moyenne MTEB sur les tâches en anglais est tracée en fonction du nombre de paramètres du modèle. Chaque point représente un modèle d'embedding. La ligne de tendance, représentant tous les modèles, est mise en évidence, avec les modèles multilingues en cyan. On peut voir que jina-embeddings-v3 démontre une performance supérieure par rapport aux modèles de taille similaire, montrant également une amélioration superlinéaire par rapport à son prédécesseur, jina-embeddings-v2. Ce graphique a été créé en sélectionnant les 100 meilleurs modèles d'embedding du classement MTEB, excluant ceux sans information de taille, typiquement les modèles propriétaires ou à code source fermé. Les soumissions identifiées comme du trolling évident ont également été filtrées.

À l'avenir, nous anticipons des coûts de calcul plus faibles et des tailles de modèles plus petites à mesure que nous acquérons une compréhension plus approfondie de l'utilisation des données et mettons en œuvre les techniques de ModernBERT. À court terme, nous pouvons mettre en œuvre les améliorations simples décrites dans l'article ModernBERT - en particulier l'intégration de plus de données liées au code et l'adoption d'un tokenizer adapté au code. Des changements plus complexes, comme le passage à une architecture profonde et fine ou l'amorçage de grands modèles à partir de plus petits, nécessiteront de construire des modèles de base à partir de zéro - une initiative à moyen terme.

Bien que l'efficacité de ModernBERT soit remarquable, sa limitation au texte seul indique des défis futurs. Alors que les modèles d'embedding multimodaux gagnent en popularité, notre prochain défi est de développer des modèles de recherche fondamentaux plus intelligents, plus rapides et plus capables qui peuvent gérer les entrées pour des applications multimodales. Ces applications exigent des fenêtres de contexte encore plus longues - un défi d'efficacité qui reste à résoudre.

tagConclusion

Tout au long de cet article, nous avons exploré comment ModernBERT fait progresser les modèles de la famille BERT grâce à trois innovations clés : son architecture profonde et fine, son tokenizer optimisé et sa mise à l'échelle efficace utilisant le weight tiling. Ces améliorations permettent à ModernBERT de fournir des performances exceptionnelles dans une taille relativement compacte, surpassant à la fois RoBERTa-large et jina-XLM-RoBERTa dans diverses tâches. ModernBERT démontre que les améliorations architecturales peuvent avoir plus d'importance que la taille des paramètres, ouvrant la voie à des modèles plus efficaces. Son utilisation réussie du weight tiling montre comment la mise à l'échelle progressive peut réduire les coûts d'entraînement tout en préservant ou même en améliorant les performances. De plus, son vocabulaire compact et ses optimisations ciblées suggèrent des opportunités croissantes pour les SLM spécialisés dans des environnements aux ressources limitées.

Catégories:
Blog technique
rss_feed

En savoir plus
mars 11, 2026 • 7 minutes lues
Bootstrapping d'embeddings audio à partir de LLM multimodaux
Han Xiao
Abstract illustration of a sound wave or heartbeat, formed by blue, orange, and gray dots on a white background.
mars 06, 2026 • 6 minutes lues
Identifier les modèles d'embeddings à partir de valeurs numériques brutes
Han Xiao
Fingerprint illustration made from numbers, showcasing digital and high-tech design on a light background.
septembre 09, 2025 • 11 minutes lues
Les Embeddings multimodaux dans Llama.cpp et GGUF
Andrei Ungureanu
Alex C-G
Cartoon llama in the center of a white background, emitting laser-like beams from its eyes. The illustration creates a playfu
Des bureaux
location_on
Sunnyvale, Californie
710 Lakeway Dr, Ste 200, Sunnyvale, CA 94085, États-Unis
location_on
Berlin, Allemagne
Prinzessinnenstraße 19-20, 10969 Berlin, Allemagne
Fondation Recherche
Lecteur
Intégrations
Reclasseur
Obtenir la clé API Jina
Limite de taux
Statut de l'API
Entreprise
À propos de nous
Contacter le service commercial
Rédaction
Programme de stage
Télécharger le logo Jina
open_in_new
Télécharger le logo Elastic
open_in_new
Termes
Sécurité
termes et conditions
Confidentialité
Gérer les cookies
email
Jina AI par Elastic © 2020-2026.