OCR on-device optimisé avec Core ML : dots.ocr

OCR on-device optimisé avec Core ML : dots.ocr

🗓 19 Mar 2026 · ⏱ 6 min de lecture · 🤖 Généré par IA

Découvre comment dots.ocr dépasse les modèles actuels en OCR grâce au Core ML d'Apple, tout en optimisant la consommation d'énergie.

En 2025, avec les progrès constants du matériel et des modèles, il est désormais possible de faire tourner des modèles d’IA compétitifs directement sur appareil. dots.ocr de RedNote est un modèle OCR de 3 milliards de paramètres qui surpasse Gemini 2.5 Pro dans l’OmniDocBench. Cela ouvre la porte à des applications OCR puissantes et sans compromis sur appreil, offrant aux développeurs des avantages significatifs : ni clés API à trafiquer, ni coûts ou connexions réseau nécessaires.

L’importance de l’accélérateur Neural Engine d’Apple

Apple intègre depuis 2017 un accélérateur d’IA, le Neural Engine, dans chacun de ses appareils. Conçu pour offrir des performances élevées tout en optimisant la consommation d’énergie, le Neural Engine est 12 fois plus efficace énergétiquement que le CPU et 4 fois plus que le GPU, selon des tests internes. Cependant, il n’est exclusivement accessible que via Core ML, le framework fermé d’Apple, posant ainsi des défis aux développeurs logiciels habitués à PyTorch.

Transformation des modèles PyTorch en Core ML

La conversion de PyTorch en Core ML s’effectue en deux étapes cruciales. D’abord, l’exécution du graphe PyTorch est capturée via torch.jit.trace ou torch.export, puis le graphe converti est compilé en un fichier .mlpackage avec coremltools. Le vrai pouvoir de contrôle réside dans la première étape, où l’on paramètre le graphe pour optimiser le modèle Core ML.

💡 À retenir

dots.ocr redéfinit l’OCR sur appareil grâce à son major modèle de 3 milliards de paramètres compatible avec Core ML, optimisant les coûts et la consommation d’énergie.

Exécution et réglage de dots.ocr sur des appareils Apple

dots.ocr repose sur deux composants clés : un encodeur de vision de 1,2 milliard de paramètres basé sur NaViT et un backbone Qwen2.5 de 1,5 milliard. L’encapsulation du processus de conversion en un harness simple permet aux développeurs d’ajuster les unités de calcul utilisées et la précision choisie. Pour l’exécuter, une base de code simple est souvent nécessaire, modifiable à volonté pour répondre aux besoins spécifiques de calculs.

Dépannage et obstacles communs

«Construire un modèle viable minimal avant de régler la précision et migrer vers le Neural Engine est crucial.»

Analyse de conversion de modèle

La conversion sans heurts des modèles est rare ; des bugs surgissent souvent, nécessitant un dépannage minutieux. Par exemple, une erreur de conversion concernant matmul entre int32 et fp32 nécessite d’ajouter une cast pour corriger torch.arange, et ainsi de suite avec d’autres appels problématiques comme repeat_interleave.

Ce parcours montre clairement les complexités à surmonter pour amener un modèle à une exécution optimale sur appareil, emblématique des défis que rencontrent les développeurs.

dots.ocr montre que l’OCR de pointe n’est plus limité aux puissants serveurs. L’intégration efficiente sur appareil avec Core ML est non seulement viable mais indispensable pour les développeurs cherchant à réduire les coûts opérationnels tout en augmentant l’accessibilité utilisateur. Une fois de plus, transformer des limitations apparentes en nouveaux standards d’innovation technique, voilà la vraie essence de progrès.

🔗 Source originaleLire l’article source
Partager : LinkedIn