NeoMME fusionne texte et images dans un unique Transformer bidirectionnel
Hcompany publie NeoMME, un encodeur multimodal multilingue de 260M à 800M paramètres qui traite texte et images dans un seul Transformer, sans tour de vision séparée. Pour la recherche de documents visuels, sa variante Retriever atteint la frontière de Pareto ViDoRe v3 avec un index 255 fois plus compact.
3 septembre 2026. Hcompany publie NeoMME, une famille d’encodeurs multimodaux multilingues de 260M et 800M paramètres, sous licence Apache 2.0. Les checkpoints — dont une variante Retriever dédiée à la recherche de documents visuels — sont disponibles dans Hugging Face Transformers. Pourquoi c’est important : NeoMME abandonne l’architecture à deux tours qui domine le visual RAG depuis des années, et il le fait avec un index 255 fois plus compact que les encodeurs tardifs classiques.
Un seul Transformer pour le texte et les images
La nouveauté architecturale tient en une phrase : NeoMME n’utilise ni tour de vision pré-entraînée séparée, ni décodeur causal. Là où un vision-language model classique extrait les caractéristiques visuelles avec un encodeur type SigLIP2, les projette dans l’espace d’un modèle de langage, puis les fait passer par un décodeur, NeoMME traite tout dans un unique Transformer bidirectionnel.
Concrètement, le texte entre sous forme de token embeddings factorisés, et les images sont découpées en patchs 32×32 non chevauchants projetés par un petit MLP. Les deux flux empruntent le même chemin de calcul. Cette unicité simplifie le pré-entraînement, le fine-tuning, le parallélisme et le serving des deux modalités.
Le contexte est long (16 384 tokens, de quoi couvrir deux images 4K UHD), avec une attention par fenêtres glissantes sur la plupart des couches et une attention globale toutes les six couches. L’empilement moderne — grouped-query attention, normalisation query-key, gated attention, RoPE 2D, MLP en squared-ReLU — reprend les acquis de la lignée ModernBERT et ModernVBERT.
L’apprentissage par texte masqué
NeoMME est entraîné de zéro comme un débruitage par diffusion discrète masquée. Pour chaque exemple textuel, un taux de corruption est tiré uniformément entre 0 et 1, puis chaque token éligible est masqué selon ce taux. Pour les exemples multimodaux, le taux varie entre 0,3 et 1 : les patchs d’image restent visibles pendant que le modèle reconstruit le texte masqué.
C’est là que réside l’astuce. Avec un masquage léger, le modèle peut deviner « chat » dans « Le [MASK] est sur le tapis » sans regarder l’image. Avec un masquage fort, il est contraint d’ancrer sa prédiction dans les patchs visuels, apprenant ainsi des descriptions image-groundées sans signal textuel résiduel. Le tokenizer BPE de 131 000 entrées, entraîné sur du texte multilingue, du code, des mathématiques et des transcriptions d’images, complète l’édifice.
NeoMME-Retriever et le RAG visuel
La déclinaison la plus utile est NeoMME-Retriever, affinée pour la recherche de documents visuels avec l’approche page-image de ColPali. Elle produit en une seule passe avant à la fois des embeddings denses et des embeddings à interaction tardive — les deux familles qui dominent le benchmark ViDoRe.
Les chiffres sont éloquents. À taille d’image identique (2048×2048) sur une NVIDIA L40S, le modèle 260M encode environ 51 pages par seconde, soit deux fois le débit de ColModernVBERT. Le pooling hiérarchique de tokens et la quantification asymétrique font chuter le stockage de l’index à interaction tardive de 1,5 Mo à 6 ko par page — un facteur 255× — tout en conservant plus de 95 % du nDCG@10 de référence.
Les deux tailles se placent sur la frontière de Pareto de ViDoRe v3 en nDCG@10 rapporté à la taille du modèle. Autrement dit : pour un budget mémoire donné, NeoMME offre le meilleur compromis précision/empreinte actuellement publié sur cette tâche.
Dense ou interaction tardive : quel mode choisir
NeoMME-Retriever livre les deux familles d’embeddings en une seule passe, mais elles ne servent pas les mêmes cas. L’embedding dense compresse une page en un vecteur unique : c’est le mode le plus économe à l’indexation et au service, idéal pour la recherche sémantique à grande échelle. L’interaction tardive conserve un vecteur par token et compare page et requête token par token, ce qui améliore la précision sur les documents denses — tableaux, chiffres, mises en page complexes — au prix d’un index plus lourd.
C’est là que la quantification asymétrique change la donne : elle compresse l’index à interaction tardive au point de le rendre pratique pour des corpus entiers, et pas seulement pour des démos. Les 6 ko par page annoncés ramènent le stockage de l’interaction tardive dans la zone de ce qu’on peut héberger sans infrastructure dédiée.
Côté déploiement, le modèle se charge comme n’importe quel encodeur Hugging Face, se fine-tune avec Sentence Transformers, et son contexte de 16 384 tokens absorbe deux pages 4K à la fois. Pour du visual RAG de production, le 260M est le point d’entrée ; le 800M monte en précision quand le corpus l’exige.
Pourquoi ça change la donne face aux VLM
Le raisonnement de Hcompany est simple et décapant : la recherche, la classification et l’étiquetage de tokens ne génèrent pas de texte en autoregression, donc ils n’ont pas besoin d’un décodeur causal ni du surcoût en paramètres et en calcul d’un VLM. Adapter un modèle génératif à ces tâches revient à payer une architecture entière pour une seule étape d’encodage.
NeoMME inverse le rapport : il garde l’expressivité multimodale là où elle compte — la compréhension conjointe texte/image — sans le poids d’un décodeur. Pour le visual RAG à l’échelle, où chaque page d’un corpus doit être encodée puis indexée, cette sobriété se traduit directement en coût d’inférence et en espace disque.
Le mouvement dépasse NeoMME. Après la lignée ModernBERT, qui a montré qu’un encodeur bidirectionnel moderne pouvait rivaliser avec des modèles génératifs sur les tâches de compréhension, NeoMME étend la logique au multimodal. Attendez-vous à voir la même bascule se reproduire : des encodeurs spécialisés reprendront les tâches que les VLM génératifs tenaient par défaut, non par supériorité.
Un modèle ouvert, prêt à l’emploi
Tous les checkpoints sont publiés sous Apache 2.0, dans Hugging Face Transformers, avec un rapport technique et une démo de RAG visuel. C’est un contraste net avec les encodeurs multimodaux embarqués dans des modèles propriétaires : ici, les poids, le code d’inférence et la recette de fine-tuning sont libres. Pour une équipe qui veut auditer ou adapter l’encodeur à ses propres documents, c’est la différence entre une boîte noire et un composant qu’on contrôle de bout en bout.
Verdict
Si vous construisez du RAG visuel sur des documents scannés ou des PDF denses, testez NeoMME-Retriever 260M en remplacement d’un encodeur basé VLM : vous gagnez en débit d’encodage et vous divisez votre index par deux ordres de grandeur, pour une perte de précision inférieure à 5 %.
Si vous servez de l’embedding multimodal à grande échelle, la variante 800M est le bon curseur quand la précision prime et que le 260M ne suffit pas, mais commencez par le petit modèle — il couvre déjà la majorité des cas de recherche de documents.
Si votre charge exige une génération de texte ou un dialogue multimodal, NeoMME n’est pas fait pour ça : restez sur un VLM génératif et réservez NeoMME à l’encodage et à la recherche.