Open Source · Actualité

Docling : dix versions en trois semaines, avec des garde-fous contre les fichiers piégés

L'outil libre de conversion de documents pour l'IA a enchaîné les versions 2.142.1 à 2.150.0 entre le 23 octobre et le 10 novembre. Au programme : des limites face aux fichiers anormaux, un OCR qui remplace les couches de texte défectueuses des PDF et de nouveaux formats d'entrée.

Par Kayzen AI · · 3 min de lecture

Photo d'illustration : Kurzweil scanner 01
Image : Kurzweil scanner 01 — Joe Mabel, CC BY-SA 3.0, via Wikimedia Commons

Avant de faire répondre une IA à partir de vos documents, il faut transformer PDF, fichiers Word, tableurs et courriels en texte propre et structuré. C'est le rôle de Docling, un outil sous licence MIT né chez IBM Research à Zurich et hébergé par la fondation LF AI & Data. Son rythme de publication est soutenu : dix versions sont parues entre le 23 octobre et le 10 novembre, de la 2.142.1 à la 2.150.0. Voici ce qu'il faut en retenir.

Des limites face aux fichiers anormaux

La version 2.142.1 du 23 octobre ne contient que des correctifs, dont plusieurs posent des bornes :

  • la taille décompressée des éléments contenus dans les fichiers DOCX, XLSX et EPUB est plafonnée ;
  • les images sont décodées à la demande, avec une limite sur le nombre de pixels ;
  • les plages de cellules fusionnées et de liens des classeurs Excel sont bornées au chargement ;
  • le rendu de dessins TikZ dans les fichiers LaTeX n'est plus effectué que sur des entrées déclarées de confiance.

Les notes ne parlent ni de faille ni d'avis de sécurité. Mais ce type de limite est précisément ce qui évite qu'un fichier anormal, par exemple une archive minuscule qui se déploie en plusieurs gigaoctets, ne sature un serveur. C'est notre interprétation, pas une qualification de l'éditeur.

Des PDF mieux lus

  • Couche de texte défectueuse. Certains PDF contiennent un texte caché inexploitable. Depuis la 2.144.0, Docling peut le remplacer par une reconnaissance de caractères (OCR).
  • Pages mal orientées. La 2.145.0 détecte l'orientation des pages avec le moteur RapidOCR.
  • Exposants et indices. La 2.148.0 les repère d'après la taille et la position des caractères.
  • Images intégrées. La 2.149.0 permet de les extraire, sur option.
  • Titres. Une option --heading-hierarchy apparaît en 2.144.0 pour la hiérarchie des titres.

De nouvelles entrées

  • les archives ZIP mêlant plusieurs formats (2.143.0) ;
  • les fichiers de calendrier iCalendar, en .ics (2.148.0) ;
  • les rapports financiers au format iXBRL (2.150.0) ;
  • les images placées dans les cellules d'un classeur Excel (2.146.0).

Côté modèles, plusieurs préréglages s'ajoutent pour confier la lecture des pages à un modèle de vision : LightOnOCR-3, Unlimited-OCR 2, MiniCPM-OCR et une lecture en plusieurs passes avec Nemotron 3.5. La transcription audio gagne un fonctionnement hors ligne pour certains préréglages, et la prise en charge de mlx-audio.

Les points d'attention

  • La ligne de commande a été remaniée dans la 2.149.0, pour la rendre plus intuitive selon les notes. Aucune rupture n'est signalée, mais un script qui appelle Docling en ligne de commande mérite un essai avant mise à jour.
  • Le résultat peut changer d'une version à l'autre. Des dizaines de correctifs modifient le texte produit : le texte masqué des fichiers Word n'est plus exporté par défaut, les formats monétaires, pourcentages et dates d'Excel sont conservés, l'ordre de lecture est ajusté dans certains cas. Une base documentaire indexée avec une version et complétée avec une autre ne sera pas tout à fait homogène.
  • Les licences des modèles sont distinctes. Le README précise que la licence MIT couvre le code ; chaque modèle d'OCR ou de vision a ses propres conditions.
  • Aucun chiffre de qualité n'accompagne ces versions : ni taux d'erreur ni comparaison entre moteurs.

Notre lecture

Pour une petite structure qui alimente un assistant avec ses propres documents, deux réflexes suffisent. D'abord, fixer le numéro de version de Docling dans le projet, plutôt que d'installer la dernière en date à chaque déploiement, et noter la version utilisée pour chaque indexation. Ensuite, si l'outil reçoit des fichiers venus de l'extérieur (pièces jointes de clients, candidatures, appels d'offres), passer au minimum à la 2.142.1 pour bénéficier des nouvelles limites. Avant toute montée de version, reconvertissez une dizaine de documents représentatifs et comparez le résultat à l'œil : c'est le seul test qui vaille sur vos propres fichiers.

Sources

  1. Docling — liste des versions (GitHub) — source primaire
  2. Docling — v2.142.1 (notes de version GitHub)
  3. GitHub — docling-project/docling (README)