Contexte et objectifs

Hugging Face a présenté en avril le modèle DharmaOCR‑LITE v1.1, un réseau de 2 milliards de paramètres dédié à l’OCR et à l’extraction de champs. L’objectif est de dépasser les API LLM de pointe sur des tâches de remplissage de schémas, tout en réduisant drastiquement les coûts d’inférence. Le besoin identifié provient des flux d’entreprise où l’on ne veut pas le texte complet d’une page, mais uniquement des valeurs précises – par exemple le nom du fournisseur, le numéro de facture ou la date d’examen – prêtes à être insérées dans une base de données.

Architecture du modèle

Le modèle de base repose sur DharmaOCR‑LITE v1.1, optimisé par fine‑tuning supervisé et DPO pour la reconnaissance de texte. Sur ce checkpoint, les développeurs ont ajouté un adaptateur LoRA entraîné sur 43 384 exemples couvrant deux modes de requête : « open », où aucune structure n’est fournie, et « schema‑directed », où chaque champ attendu est explicitement décrit (type string, number ou boolean). Les données d’entraînement sont réparties en trois flux : documents anglais multi‑domaines, documents brésiliens en portugais, et un petit lot multilingue (européen et asiatique). Chaque exemple est annoté au niveau du champ, ce qui permet au modèle de reconnaître des paires label‑valeur, des tables avec en‑tête, ou des cases à cocher, sans nécessiter de fine‑tuning par type de document.

Évaluation et performances

Le benchmark interne porte sur 546 documents répartis en trois scénarios de requête, soit 1 638 cas au total. La métrique principale est le F1 au niveau du champ, pondéré par la similarité de Levenshtein des valeurs et par le taux de réponses JSON valides. Comparé à quatre configurations de LLM de pointe, l’écart de qualité varie de 1,8 point (Claude Opus 5) à 9,3 points (GPT‑5.6 Luna). En termes de coût, l’inférence sur un GPU Nvidia L40S à 2,24 $ / heure se traduit par des dépenses 6 à 147 fois inférieures à celles des API facturées à la tokenisation.

Sur les jeux de données publics SROIE et FUNSD, non utilisés pendant l’entraînement, le modèle atteint des résultats remarquables : pour un reçu SROIE contenant 18 champs, chaque champ est renvoyé correctement, les champs absents sont retournés comme null, et les valeurs monétaires sont exactes à la centime près. Sur un formulaire FUNSD, les 12 champs booléens sont identifiés avec précision ; la case cochée est marquée true et les 11 autres false, même en présence d’une écriture manuscrite de mauvaise qualité.

Implications et limites

Le modèle montre que l’extraction de champs structurés peut être réalisée avec un SSLM auto‑hébergé, éliminant la dépendance aux services cloud et aux frais de tokenisation. Cependant, la performance dépend du matériel (GPU L40S) et du volume d’inférence ; des latences plus strictes ou des déploiements sur des GPU moins puissants augmenteront le coût horaire. De plus, le jeu d’entraînement, bien que multi‑domaines, reste centré sur l’anglais et le portugais, ce qui peut limiter la précision sur des langues rares ou des formats de document très spécialisés non représentés dans les trois flux. Enfin, le benchmark se base sur un F1 pondéré, mais ne mesure pas explicitement la robustesse face à des documents fortement dégradés ou à des champs très ambigus, ce qui reste un axe d’amélioration pour les futures itérations.