Open Source · Fiche projet

MiniCPM-OCR : un lecteur de documents ouvert, livré avec son contrôleur

OpenBMB publie sous Apache 2.0 deux petits modèles : l'un convertit scans et PDF en texte structuré, l'autre note de 0 à 1 la fiabilité du résultat. L'idée est utile pour savoir quelles pages relire. Reste une limite de taille pour un usage en France : seuls le chinois et l'anglais sont annoncés.

Par Kayzen AI · · 3 min de lecture

Photo d'illustration : Old Colonial Commission Archive in Hakodate Japan01n
Image : Old Colonial Commission Archive in Hakodate Japan01n — 663highland, CC BY 2.5, via Wikimedia Commons

La reconnaissance de caractères (OCR) sert à transformer une facture scannée ou un PDF en texte exploitable. Le problème habituel n'est pas tant l'erreur que l'erreur invisible : un chiffre mal lu dans un tableau passe inaperçu. Le projet MiniCPM-OCR, ouvert le 27 octobre 2026 par OpenBMB, s'attaque à ce point précis.

Deux modèles, deux rôles

  • MiniCPM-OCR 1.0, 1,3 milliard de paramètres. Il lit le texte, les tableaux, les formules, les graphiques et les tampons, et sait extraire des informations clés. Le dépôt cite les scans, les photos, les pages courbées ou de travers.
  • MiniCPM-OCR Jev, 2 milliards de paramètres. Il ne lit rien : il juge. Pour une lecture donnée, il renvoie un score de justesse entre 0 et 1.

Code, documentation et poids sont sous licence Apache 2.0, donc utilisables commercialement.

Comment cela fonctionne

Le traitement se fait en deux temps. Un premier modèle, PP-DocLayoutV3, découpe la page en zones. Chaque zone est ensuite envoyée au modèle de lecture avec une consigne adaptée (texte, tableau ou formule).

Les poids existent en plusieurs formats, dont GGUF, et le projet indique la compatibilité avec vLLM, SGLang, llama.cpp et Ollama. L'installation passe par un paquet Python :

pip install "minicpm-ocr[all]"

Une image Docker officielle est disponible depuis le 5 novembre. Elle demande Linux x86-64, une carte NVIDIA, un pilote compatible CUDA 12.9 et le NVIDIA Container Toolkit. Le projet propose aussi une lecture hors ligne sur iOS, seule plateforme mobile prise en charge pour l'instant.

Les chiffres annoncés

Ils viennent du projet lui-même :

  • 93,68 sur Real5-OmniDocBench et 54,7 sur OCRBench v2 pour le modèle de lecture, présentés comme les meilleurs scores du moment ;
  • 1,2 page par seconde, mesuré sur une carte RTX 5090, soit environ 1,49 fois la vitesse de PaddleOCR-VL-1.6 selon l'éditeur ;
  • pour Jev, un score de 93,6 sur le banc d'essai maison JevOCRBench.

La fiche précise elle-même que les scores de bancs d'essai différents ne se comparent pas entre eux, et que le débit dépend du contenu des pages et du matériel.

Les limites

  • Les langues. Seuls le chinois et l'anglais sont annoncés. Rien n'est dit du français, des accents ou des documents administratifs européens.
  • La mémoire. Aucun besoin en mémoire graphique n'est indiqué. La seule référence matérielle est une carte haut de gamme.
  • Le contrôleur n'est pas un oracle. Le dépôt recommande de fixer le seuil de relecture seulement après l'avoir vérifié sur un petit lot de documents réels. Et le banc d'essai qui évalue Jev a été conçu par la même équipe.
  • La jeunesse du projet. Trois versions du kit de développement en deux semaines : l'outil bouge encore.

Notre lecture

L'idée d'un score de fiabilité par page est la partie la plus intéressante pour un cabinet comptable ou un service administratif : elle permet de n'envoyer en relecture humaine que les pages douteuses, au lieu de tout vérifier ou de ne rien vérifier.

Mais l'absence du français parmi les langues annoncées interdit de s'y fier sans essai. Avant toute décision, il faut tester sur une cinquantaine de vos propres documents, compter les erreurs, et regarder si les scores de Jev désignent bien les pages fautives. Si vous traitez surtout des pièces en anglais, le projet mérite d'être essayé dès maintenant.

Sources

  1. OpenBMB — dépôt GitHub MiniCPM-OCR (README) — source primaire
  2. Hugging Face — fiche du modèle openbmb/MiniCPM-OCR-1.0