Deux nouveaux modèles d'IA, LFM2.5-Encoder-230M et LFM2.5-Encoder-350M, promettent des performances dignes des plus gros modèles tout en restant ultra-rapides sur CPU.

INSTALLATION EN DEUX LIGNES DE CODE

Pour commencer à utiliser ces modèles, il suffit d'installer la bibliothèque transformers avec une seule commande :

pip install -U transformers

Cette bibliothèque permet de charger et d'utiliser facilement les modèles d'intelligence artificielle les plus avancés, comme ceux développés par Liquid AI.

PREMIER TEST : DEVINER LA CAPITALE DE LA FRANCE

Voici comment tester le modèle en quelques lignes de code. Le modèle doit deviner la capitale de la France quand on lui donne une phrase avec un mot masqué :

from transformers import AutoModelForMaskedLM, AutoTokenizer
import torch

model_id = "LiquidAI/LFM2.5-Encoder-230M"  # ou "LiquidAI/LFM2.5-Encoder-350M"
tok = AutoTokenizer.frompretrained(modelid, trustremotecode=True)
mlm = AutoModelForMaskedLM.frompretrained(modelid, trustremotecode=True)

text = f"The capital of France is {tok.mask_token}."
enc = tok(text, return_tensors="pt")
with torch.no_grad():
    logits = mlm(**enc).logits
pos = (enc["inputids"][0] == tok.masktoken_id).nonzero()[0].item()
print([tok.decode([t]).strip() for t in logits[0, pos].topk(5).indices.tolist()])
# -> ['Paris', 'Strasbourg', 'Paris', 'Lyon', 'Versailles']
Le modèle devine correctement « Paris » comme première réponse, suivi de villes françaises comme Strasbourg ou Lyon.

CHARGER UN MODÈLE POUR D'AUTRES TÂCHES

Si vous avez besoin d'un modèle pour des tâches comme la classification ou l'extraction d'informations, vous pouvez charger uniquement la partie « corps » du modèle :

from transformers import AutoModel

body = AutoModel.frompretrained(modelid, trustremotecode=True)

OPTIMISATION POUR LES GPU AVEC FLASH ATTENTION

Pour une exécution encore plus rapide sur les cartes graphiques compatibles, il est possible d'installer Flash Attention 2, une bibliothèque qui accélère les calculs :

pip install flash-attn

UNE PUBLICATION SCIENTIFIQUE POUR LES EXPERTS

Cette avancée est détaillée dans un article scientifique publié en juillet 2026. L'étude explique comment ces encodeurs atteignent des performances comparables aux modèles bien plus lourds, tout en restant légers et rapides :

@article{liquidAI2026Encoders,
  author = {Liquid AI},
  title = {LFM2.5-Encoders: Fast at Long Context, Even on CPU},
  journal = {Liquid AI Blog},
  year = {2026},
  note = {www.liquid.ai/blog/lfm2-5-encoders},
}

DEUX MODÈLES POUR TOUTES LES BESOINS

Liquid AI lance aujourd'hui deux nouveaux modèles sur Hugging Face : LFM2.5-Encoder-230M et LFM2.5-Encoder-350M. Ces modèles offrent une qualité comparable aux modèles bien plus lourds, mais restent rapides même lorsque les textes deviennent très longs. Résultat : vous pouvez exécuter des tâches à l'échelle d'un document entier sur du Matériel classique, y compris un simple CPU.

POURQUOI CRÉER DES ENCODEURS POLYVALENTS ?

Le mois dernier, Liquid AI avait lancé les LFM2.5-Retrievers, spécialisés dans la recherche multilingue. Les nouveaux encodeurs, eux, visent un usage bien plus large. Ils sont pré-entraînés avec un objectif de masquage de mots, ce qui permet de les adapter à de nombreuses tâches : classification, tâches au niveau des tokens, recherche, et bien plus. La recherche n'est qu'une des nombreuses applications possibles d'un encodeur.

LES ENCODEURS, PIÈCES MAÎTRESSES DE L'IA MODERNE

Les encodeurs alimentent de nombreuses applications d'IA en production aujourd'hui : classificateurs, routeurs d'intentions, filtres de sécurité. Ces tâches tournent en continu, souvent sur CPU, et doivent gérer des textes de plus en plus longs. BERT a lancé cette catégorie de modèles, et ModernBERT a récemment repoussé les limites en termes de précision, de vitesse et de longueur de contexte. Les LFM2.5-Encoders représentent l'étape suivante dans l'architecture LFM2, où le coût de calcul augmente lentement même quand les entrées deviennent très longues.

CONSTRUCTION DES ENCODEURS : LA RECETTE SECRÈTE

Les encodeurs sont initialisés à partir des versions décodeuses de leur architecture respective : LFM2.5-230M et LFM2.5-350M. Ensuite, chaque décodeur causal est transformé en encodeur bidirectionnel grâce à quelques modifications simples.

PERFORMANCES : LES CHIFFRES QUI PARLENT

Tous les modèles ont été finement ajustés sur chaque tâche, et les résultats sont présentés dans le tableau ci-dessous. Au total, 17 tâches issues des benchmarks GLUE, SuperGLUE et de la classification multilingue ont été testées.

Les scores affichés correspondent à la moyenne sur cinq graines aléatoires différentes, garantissant la stabilité des résultats. L'ensemble du cadre de test et les données brutes sont open source.

Le LFM2.5-Encoder-350M se classe quatrième parmi les 14 modèles testés. Les trois modèles qui le précèdent sont tous plus lourds, dont un modèle de 3,5 milliards de paramètres, soit près de dix fois sa taille. Le LFM2.5-Encoder-230M surpasse ModernBERT-base et tous les modèles EuroBERT, tout en étant plus petit que la plupart d'entre eux. Les deux modèles obtiennent également des scores bien supérieurs à ceux de nos propres LFM2.5-Retrievers.

VITESSE : LA RÉVOLUTION SUR CPU

Les encodeurs héritent de l'architecture LFM2, connue pour son inférence rapide. Comme les deux encodeurs et ModernBERT supportent un contexte de 8 192 tokens, les mesures de vitesse ont été réalisées sur toute cette plage.

Les encodeurs montrent leur plus grand avantage sur CPU. Sur cette plateforme, le LFM2.5-Encoder-230M est le plus rapide à toutes les longueurs de séquence, même plus rapide que le ModernBERT-base (plus petit) pour les entrées courtes. Avec l'augmentation de la longueur des entrées, le débit de ModernBERT chute brutalement, tandis que nos LFM2.5-Encoders restent performants avant de ralentir légèrement. À 8 192 tokens, ModernBERT-base met plus d'une minute et demie par passage avant, contre environ 28 secondes pour le LFM2.5-Encoder-230M. Cela représente une accélération d'environ 3,7 fois.

Pour les développeurs, cela signifie qu'il est possible de scanner ou de classer un contrat complet, une transcription ou un long fil de discussion de support en moins de 30 secondes sur un CPU de portable.

SUR GPU, MÊME COMBAT AVEC UNE MARGE PLUS RÉDUITE

Sur GPU, une tendance similaire se dessine, mais avec une différence moins marquée. Le ModernBERT-base mène pour les entrées de moins de 1 000 tokens sur un GPU Apple. Nos encodeurs prennent la tête à partir de 2 000 tokens. Cela montre que pour les entrées longues, les LFM2.5-Encoders sont le meilleur choix, et encore plus sur CPU.

DEMOS EN LIGNE : ESSAYEZ SANS INSTALLATION

Plusieurs démos ont été créées à partir des LFM2.5-Encoders finement ajustés. Chacune fonctionne dans un espace Hugging Face fonctionnant uniquement sur CPU :

  • Détection d'entités nommées dans des contrats juridiques
  • Classification d'intentions dans des conversations clients
  • Filtrage de contenu toxique dans des forums

COMMENT UTILISER ET AJUSTER LES LFM2.5-ENCODERS

Les LFM2.5-Encoders sont idéaux pour les tâches d'analyse à haut volume qui tournent en continu, comme la classification, le routage, l'extraction ou le scoring. Ces tâches doivent rester économiques et rapides. Un encodeur finement ajusté est plus petit, plus rapide et bien moins coûteux à exécuter qu'un grand modèle de langage génératif, et il tient sur les CPU que vous possédez déjà.

Vous pouvez démarrer en quelques lignes de code. Chargez un modèle avec transformers, puis utilisez-le directement pour la prédiction de tokens masqués, ou ajoutez votre propre couche de sortie et ajustez-le pour votre tâche spécifique.

CHARGER ET EXÉCUTER LE MODÈLE

Installez d'abord la dernière version de transformers :

pip install -U transformers

Exécutez ensuite une prédiction de token masqué :

from transformers import AutoModelForMaskedLM, AutoTokenizer
import torch

model_id = "LiquidAI/LFM2.5-Encoder-230M"  # ou "LiquidAI/LFM2.5-Encoder-350M"
tok = AutoTokenizer.frompretrained(modelid, trustremotecode=True)
mlm = AutoModelForMaskedLM.frompretrained(modelid, trustremotecode=True)

text = f"The capital of France is {tok.mask_token}."
enc = tok(text, return_tensors="pt")
with torch.no_grad():
    logits = mlm(**enc).logits
pos = (enc["inputids"][0] == tok.masktoken_id).nonzero()[0].item()
print([tok.decode([t]).strip() for t in logits[0, pos].topk(5).indices.tolist()])
# -> ['Paris', 'Strasbourg', 'Paris', 'Lyon', 'Versailles']

ADAPTER LE MODÈLE À VOTRE TÂCHE

Un encodeur de base fournit des représentations polyvalentes, mais pas des sorties spécifiques à une tâche. Il faut donc l'ajuster pour chaque usage. Un tutoriel de finement ajustement explique comment procéder sur de longs documents juridiques avec un contexte de 8 000 tokens.

Pour les tâches en aval comme la classification, la classification de tokens, la régression ou la recherche, chargez le corps de l'encodeur et ajoutez votre propre couche de sortie :

from transformers import AutoModel

body = AutoModel.frompretrained(modelid, trustremotecode=True)

Si votre GPU le permet, utilisez Flash Attention 2 pour une efficacité maximale :

pip install flash-attn

DÉMARRER AVEC LES LFM2.5-ENCODERS

Les deux encodeurs sont disponibles en open-weight sur Hugging Face dès aujourd'hui :

  • LFM2.5-Encoder-230M
  • LFM2.5-Encoder-350M

CITATION : COMMENT RÉFÉRENCER CE TRAVAIL

Si vous utilisez ces modèles, citez l'article de blog officiel :

@article{liquidAI2026Encoders,
  author = {Liquid AI},
  title = {LFM2.5-Encoders: Fast at Long Context, Even on CPU},
  journal = {Liquid AI Blog},
  year = {2026},
  note = {www.liquid.ai/blog/lfm2-5-encoders},
}

LES MODÈLES MENTIONNÉS DANS CET ARTICLE

  • LFM2.5-Encoder-230M
  • LFM2.5-Encoder-350M
  • LFM2.5-Retrievers
  • ModernBERT
  • EuroBERT

LES DÉMOS EN LIGNE MENTIONNÉES

  • Détection d'entités dans des contrats juridiques
  • Classification d'intentions dans des conversations clients
  • Filtrage de contenu toxique dans des forums
  • Linting de politiques internes
  • Détection d'informations personnelles (PII)

LES ARTICLES SCIENTIFIQUES CITÉS

  • GLUE
  • SuperGLUE

LES COLLECTIONS MENTIONNÉES

  • Modèles d'encodeurs pour le traitement du langage

LES COMMUNAUTÉS IMPLIQUÉES

Les discussions autour de cette publication ont impliqué plusieurs contributeurs de la communauté Hugging Face : Fernando Fernandes, Edoardo Mosca, Maxime Labonne et Leonie Monigatti.

UNE QUESTION SANS RÉPONSE : SUR QUEL CPU ?

Les tests de vitesse ont suscité des questions sur le matériel utilisé. Le temps de 28 secondes pour 8 000 tokens a-t-il été mesuré sur un Apple Silicon ou un processeur x86 multi-cœurs ? La réponse est cruciale, car dans la pratique, « scanner un contrat » signifie souvent analyser des dizaines de milliers de documents. Les développeurs attendent également des chemins d'export comme int8 ou ONNX pour des déploiements industriels.

L'AVENIR : VERS DES DÉPLOIEMENTS PLUS RAPIDES ET PLUS LÉGERS

Les retours de la communauté soulignent l'importance de préciser le matériel utilisé pour les benchmarks. Liquid AI pourrait aussi explorer des exports en formats optimisés pour les serveurs, comme int8 ou ONNX, afin de répondre aux besoins des déploiements à grande échelle. Une chose est sûre : ces encodeurs ouvrent la voie à des applications d'IA plus accessibles et plus performantes sur du matériel standard.

Sources :
  • Hugging Face Blog

L'indépendance de CLODCO est votre garantie.

Pour que l'actualité de l'IA reste sans filtre et sans concession, votre soutien est indispensable. Votre contribution est le seul moteur de notre liberté éditoriale.

Soutenir CLODCO