Skip to main content
OpenCV 5LLMVLM

OpenCV 5 apprend à exécuter des LLMs et VLMs en interne

OpenCV 5 permet désormais d'exécuter des LLMs et VLMs directement dans son module DNN grâce aux graphes ONNX, à la tokenisation native et au cache KV. Pour les entreprises, cela simplifie et accélère l'intégration de l'IA dans les pipelines locaux de vision par ordinateur, tout en réduisant la dépendance aux API externes et en améliorant la sécurité des données.

Contexte technique

Je me suis plongé dans OpenCV 5 non par curiosité, mais parce que ce genre de choses impacte directement la pratique : l'intégration et l'automatisation de l'IA en périphérie peuvent désormais être montées sans couche supplémentaire de runtimes et d'API séparés. Et c'est là qu'OpenCV m'a vraiment surpris.

Le principal changement n'est pas dans un communiqué tape-à-l'œil, mais dans le moteur DNN. Il a été reconstruit autour d'un graphe d'opérations typé avec inférence de forme, pliage de constantes et fusion. Grâce à cela, la couverture des opérateurs ONNX est passée d'environ 22 % dans la branche 4.x à plus de 80 %, ce qui ouvre la porte aux modèles transformers modernes avec des formes dynamiques.

Ensuite vient la partie la plus intéressante. OpenCV 5 peut exécuter des LLMs et VLMs via l'API Net familière, et non via un framework de chat séparé. L'idée est à peu près la suivante : charger le modèle, fournir l'entrée, obtenir l'inférence, sauf que désormais il ne s'agit plus seulement d'un détecteur ou d'une segmentation, mais de Qwen 2.5, Gemma 3, PaliGemma et autres.

Pour l'autorégression, ils ont ajouté une tokenisation native et un cache KV. Sans cela, toute tentative d'exécuter un LLM à l'intérieur d'une bibliothèque CV classique ressemblerait à une démonstration étrange, pas à une voie viable. On voit déjà que l'équipe ne vise pas le battage médiatique, mais un pipeline d'inférence solide.

Mais il y a une mise en garde importante sur laquelle je me suis arrêté : ce n'est pas un remplacement universel ni un environnement pour les systèmes agentiques. D'après les documents actuels, la compilation doit être faite avec WITH_ONNXRUNTIME=ON, ce qui signifie qu'il y a toujours une dépendance à ONNX Runtime. Simplement, elle est désormais intégrée dans un flux OpenCV plus unifié, et pour de nombreux scénarios, cela simplifie grandement l'architecture.

Ce que cela change pour les entreprises et l'automatisation

Je vois trois conséquences directes. Premièrement : les pipelines de vision locaux obtiennent une compréhension contextuelle des images sans solliciter d'API externes. Pour les données privées, l'industrie et la médecine, c'est très attractif.

Deuxièmement : le développement de solutions IA pour les caméras, terminaux, robots et scénarios embarqués devient plus simple sur toute la pile. Moins de zoo logiciel, moins de points de défaillance, une maintenance plus rapide.

Troisièmement : les équipes qui ont déjà OpenCV en production en sortiront gagnantes. Celles qui supposeront que n'importe quel LLM fonctionnera magiquement à l'intérieur de la bibliothèque sans sélectionner le modèle ONNX approprié, compiler et tester sur le matériel, perdront.

Je suis constamment confronté à ces interfaces : un modèle semble tourner, puis il se heurte à des limites de mémoire, de latence ou à un prétraitement incorrect. Si vous envisagez une automatisation par IA sur de la vidéo, des documents ou du contrôle visuel, vous pouvez l'apporter sereinement à Nahornyi AI Lab, et avec Vadym Nahornyi, nous concevrons une architecture IA pour votre processus réel, pas pour une jolie diapositive.

Nous avons précédemment examiné le pattern UX Code Map, qui accélère la navigation dans le code grâce à une injection précise de contexte IA. Cette approche résonne avec les nouvelles capacités d'OpenCV 5, où les LLMs et VLMs sont intégrés directement dans le moteur de vision par ordinateur.

Partager cet article