Surveillance des modèles de vision par ordinateur déployés sur Ultralytics
Découvrez comment surveiller les modèles de vision par ordinateur en production grâce à Ultralytics . Suivez les indicateurs, detect et améliorez la fiabilité.
Découvrez comment surveiller les modèles de vision par ordinateur en production grâce à Ultralytics . Suivez les indicateurs, detect et améliorez la fiabilité.
Tester des modèles de vision par ordinateur destinés à analyser des images et des vidéos n'est pas toujours comparable à leur mise en production. Au cours du développement, ces modèles ou algorithmes sont testés sur des ensembles de données propres et soigneusement préparés, dans des conditions contrôlées et prévisibles.
Une fois déployés, les systèmes deviennent plus dynamiques. Les modèles sont exposés au trafic réel, où le volume des requêtes peut varier, les temps de réponse peuvent changer et des défaillances occasionnelles peuvent survenir.
À ce stade, l'accent est mis sur la fiabilité du système, c'est-à-dire sur la capacité des terminaux à rester disponibles, réactifs et stables dans des conditions changeantes.
C'est pourquoi la surveillance est essentielle. Elle offre une vision claire du comportement des terminaux déployés en production grâce à des indicateurs tels que le volume de requêtes, la latence, les taux d'erreur et l'état général du système.
Pour faciliter cette tâche, il est tout aussi important de disposer des bons outils que d'avoir le modèle lui-même. Récemment, Ultralytics Ultralytics , notre nouvel environnement de bout en bout qui regroupe l'ensemble du processus de vision par ordinateur, depuis les données et l'entraînement jusqu'au déploiement et à la surveillance.

Grâce à la surveillance directement intégrée à ce flux de travail, les utilisateurs peuvent track l'état track , analyser le comportement des requêtes et assurer la fiabilité des systèmes sans avoir recours à des outils distincts. Dans cet article, nous allons voir comment utiliser Ultralytics pour surveiller les points de terminaison des modèles déployés et garantir le bon fonctionnement des systèmes de production. C'est parti !
Dans le cycle de vie d'un modèle d'IA, la surveillance consiste à observer le comportement des systèmes déployés une fois que le modèle est opérationnel et traite des requêtes réelles. Alors que l'entraînement et la validation permettent d'évaluer les performances d'un modèle d'apprentissage automatique (modèle ML) sur des ensembles de données préparés, la surveillance se concentre sur le fonctionnement du point de terminaison déployé dans un environnement de production.
Un aspect essentiel de la surveillance consiste à suivre les indicateurs au niveau du système qui reflètent la fiabilité et la réactivité. Des indicateurs tels que la latence et le temps de disponibilité permettent d'évaluer la capacité du système à traiter les requêtes entrantes. La latence mesure le temps nécessaire pour traiter une requête et renvoyer une réponse, tandis que le temps de disponibilité met en évidence la régularité avec laquelle le point de terminaison reste accessible.
Un autre aspect essentiel est l'observabilité, qui permet de voir comment les requêtes sont traitées. Chaque fois qu'une donnée d'entrée, telle qu'une image ou une image vidéo, est envoyée à un modèle déployé, elle est traitée comme une requête d'inférence.
Les journaux enregistrent ces requêtes ainsi que des informations telles que les horodatages, les temps de réponse et les codes d'état. Ces journaux facilitent le suivi des requêtes, le débogage des problèmes et l'analyse des défaillances lorsqu'elles surviennent. Ils sont particulièrement utiles pour identifier des tendances telles que des erreurs récurrentes, des réponses lentes ou un comportement inattendu du système.
En combinant les métriques et les journaux, la surveillance aide les utilisateurs à comprendre le fonctionnement de leurs systèmes en production et à réagir rapidement aux problèmes dès qu'ils surviennent.
Avant d'aborder la surveillance de la production, voyons d'abord quelle est la différence entre les indicateurs de performance des modèles et les indicateurs système.
En général, la surveillance des modèles s'accompagne de mesures d'évaluation, également appelées « métriques de modèle », telles que la précision, l'exactitude, le rappel et mAP précision moyenne). Ces métriques servent à décrire le comportement du modèle et à évaluer la qualité de ses prédictions, souvent par rapport à des données de production ou à des données d'entrée. Elles peuvent s'avérer particulièrement utiles pour identifier les cas limites ou les valeurs aberrantes dans de nouvelles données.
Cela diffère toutefois de la surveillance d'un système déployé en production. Dans ce contexte, la surveillance porte davantage sur le fonctionnement du système que sur l'évaluation directe des prévisions du modèle.
Au lieu de s'appuyer sur des indicateurs de modèle, la surveillance du déploiement s'appuie sur des signaux au niveau du système, tels que le volume de requêtes, la latence, les taux d'erreur et la disponibilité. Ces indicateurs permettent de voir comment les points de terminaison traitent les données d'entrée, avec quelle régularité ils répondent et comment ils fonctionnent dans les environnements de production.
Examinons maintenant un exemple concret qui met en évidence la nécessité d'un système de surveillance dans les déploiements de vision par ordinateur.
Envisagez une solution de vision artificielle qui utilise l'estimation de la posture, une technique de vision artificielle servant à identifier et à analyser les mouvements du corps humain, afin de surveiller le respect des consignes de sécurité par les ouvriers du bâtiment. Lors du déploiement initial du modèle, un tel système pourrait fonctionner correctement dans des conditions contrôlées, avec une bonne visibilité et dans des scénarios standard.
Cependant, les chantiers de construction réels présentent des difficultés supplémentaires. Le volume des requêtes peut varier au cours de la journée, les conditions du réseau peuvent être instables, et plusieurs caméras ou terminaux peuvent envoyer des données simultanément. Ces facteurs peuvent entraîner des temps de réponse plus longs ou des pannes occasionnelles si le système n'est pas correctement surveillé.

Dans un environnement de production comme celui-ci, il est essentiel de savoir dans quelle mesure le système fonctionne de manière fiable. La surveillance permet de vérifier si les terminaux sont disponibles, à quelle vitesse ils répondent aux requêtes entrantes et avec quelle régularité ils gèrent le trafic au fil du temps.
Par exemple, une augmentation de la latence peut être le signe d'une charge plus importante ou de contraintes au niveau des ressources, tandis qu'une hausse des taux d'erreur peut indiquer des problèmes liés au traitement des requêtes ou à la stabilité du système. Les journaux fournissent davantage de contexte en montrant comment chaque requête est traitée et où les défaillances se produisent.
En surveillant ces signaux, les passionnés d'IA et les scientifiques des données peuvent détecter les problèmes à un stade précoce, résoudre les incidents plus efficacement et garantir que leurs systèmes continuent de fonctionner de manière fiable malgré l'évolution des conditions réelles.
Dans de nombreux workflows d'apprentissage profond, la surveillance est souvent assurée à l'aide d'outils distincts pour la journalisation, les métriques et l'état du système. Cette configuration fragmentée peut compliquer la compréhension du fonctionnement des terminaux déployés en production et ajoute à la complexité de la gestion des déploiements.
Ultralytics simplifie ce processus en intégrant directement la surveillance dans un environnement unifié qui couvre l'ensemble du flux de travail de la vision par ordinateur, depuis l'acquisition et l'annotation des données jusqu'à l'entraînement, le déploiement et la surveillance.
Grâce à cette configuration intégrée, les utilisateurs peuvent track leurs terminaux déployés gèrent le trafic réel sans avoir à mettre en place de systèmes de journalisation externes ni de tableaux de bord supplémentaires. Toutes les informations sont regroupées en un seul endroit, ce qui facilite l'observation du comportement du système et permet de maintenir des déploiements fiables au fil du temps.
Les fonctionnalités de surveillance sont accessibles directement depuis l'onglet « Déploiement ». À partir d'un tableau de bord unique, les utilisateurs peuvent track les indicateurs track , analyser le comportement au niveau des requêtes et visualiser les tendances. Ces visualisations intégrées permettent de mieux comprendre les performances des solutions sans avoir à passer d'un outil à l'autre.
En intégrant la surveillance, le déploiement et la gestion des modèles au sein d'un flux de travail global, la plateforme réduit la complexité. Il est ainsi plus facile de se concentrer sur la gestion des déploiements, l'optimisation des performances du système et le maintien de la fiabilité.
Dans les déploiements en conditions réelles, la surveillance repose sur une visibilité claire du fonctionnement des systèmes à mesure que les conditions évoluent au fil du temps. Elle ne se limite pas au simple suivi de quelques indicateurs, mais implique de comprendre le comportement des terminaux déployés dans différents environnements et de gérer efficacement plusieurs déploiements.
S'inspirant des retours d'expérience de la communauté de l'IA appliquée à la vision, qui ont mis en évidence les défis courants en matière de vision par ordinateur, la Ultralytics intègre plusieurs fonctionnalités qui rendent la surveillance plus pratique et plus évolutive.
Voici un aperçu de certaines de ces fonctionnalités clés :
Nous allons maintenant examiner certaines de ces fonctionnalités plus en détail et voir comment elles peuvent être utilisées pour surveiller les terminaux déployés en production.
Une fois le modèle déployé, la surveillance commence par le suivi des indicateurs clés du système. Si des indicateurs tels que la précision et le rappel sont utiles pendant la phase de développement, la surveillance en production se concentre sur des signaux au niveau du système, comme le temps de réponse et les taux d'erreur, qui fournissent des informations mesurables sur la fiabilité avec laquelle les points de terminaison gèrent le trafic réel.
Ultralytics propose un tableau de bord centralisé qui offre une vue d'ensemble claire de l'activité des terminaux et du comportement du système. Le tableau de bord « Déploiement » comprend notamment quatre indicateurs clés qui montrent comment les terminaux sont utilisés et comment ils répondent aux requêtes entrantes.
Voici un aperçu plus détaillé de ces indicateurs :
En bref, ces indicateurs offrent une vision claire du fonctionnement des terminaux déployés en production. En analysant les habitudes d'utilisation, les équipes et les collaborateurs peuvent comprendre la répartition du trafic, identifier les périodes de pointe et s'assurer que les systèmes restent réactifs et fiables à mesure que l'utilisation augmente.
Si les indicateurs donnent une vue d'ensemble des performances du système, les journaux offrent quant à eux un aperçu plus détaillé de la manière dont les points de terminaison déployés traitent chaque requête. Les journaux enregistrent chaque requête envoyée à un point de terminaison ainsi que la réponse correspondante.
Ils sont utiles pour suivre les incidents, analyser les défaillances et comprendre comment les requêtes sont traitées. Au sein de la Ultralytics , vous pouvez sélectionner n'importe quel déploiement pour consulter ses détails, y compris les journaux.

Une entrée de journal de la plateforme s'affiche sous une forme structurée, ce qui permet de comprendre plus facilement ce qui s'est passé lors de chaque requête. Chaque entrée comporte un niveau de gravité, qui indique l'importance de l'événement, ainsi qu'un horodatage précisant le moment où il s'est produit.
Il contient également un message décrivant l'événement ainsi que des détails liés au protocole HTTP, tels que les codes d'état et la latence. Ces informations permettent de suivre les requêtes, de faciliter le dépannage et de résoudre les problèmes plus efficacement. De plus, les journaux sont classés par niveau de gravité, ce qui permet aux utilisateurs de hiérarchiser les déploiements nécessitant une attention particulière.
La surveillance implique également de comprendre l'état général des terminaux déployés, notamment de vérifier s'ils fonctionnent correctement, s'ils répondent dans les délais et s'ils traitent les requêtes de manière cohérente et sans erreur. La Ultralytics offre une vue d'ensemble claire de l'état de chaque déploiement, ce qui permet de vérifier facilement que les terminaux fonctionnent comme prévu.
La plateforme comprend des indicateurs visuels de santé pour chaque déploiement, affichés sur des fiches de déploiement individuelles.
Par exemple, un voyant vert indique que le point de terminaison fonctionne correctement et répond normalement, tandis qu'un voyant rouge signale des problèmes ou une interruption de service. Une icône tournante indique que le système vérifie activement l'état du déploiement.
En surveillant l'état des terminaux au fil du temps, il est possible de detect à un stade précoce, de maintenir des performances constantes et de garantir une expérience stable pour les applications en production.
La surveillance des modèles ne se limite pas au simple suivi des indicateurs. Elle crée une boucle de rétroaction qui favorise l'amélioration continue au fil du temps. À mesure que les terminaux traitent le trafic réel, des tendances commencent à se dessiner dans les indicateurs et les journaux, pouvant révéler des problèmes tels qu'une latence accrue, des taux d'erreur plus élevés ou un comportement irrégulier du système.
La surveillance met en évidence les points nécessitant une attention particulière. Par exemple, une latence systématiquement élevée peut indiquer la nécessité d'améliorer l'allocation des ressources ou la mise à l'échelle, tandis qu'une augmentation du taux d'erreurs peut signaler des problèmes liés au traitement des requêtes ou à la stabilité du système.
Une fois ces problèmes identifiés, des mesures peuvent être prises pour améliorer la fiabilité. Cela peut impliquer d'adapter l'infrastructure, de faire évoluer les ressources ou de corriger des problèmes liés au traitement des requêtes. Une fois ces modifications apportées, les systèmes peuvent continuer à faire l'objet d'une surveillance afin de vérifier que les performances se sont améliorées.
En associant la surveillance à des améliorations continues, les utilisateurs peuvent maintenir des systèmes fiables à mesure que l'utilisation augmente et que les conditions évoluent.
Pour mieux comprendre l'impact de la surveillance dans un contexte réel, voyons comment elle s'applique à l'automatisation des opérations au sol dans le secteur aérien.
Prenons l'exemple d'un système de vision conçu pour surveiller le chargement et le déchargement des bagages lors des opérations au sol des avions. Dans ce contexte, un modèle de détection d'objets tel que Ultralytics peut être utilisé pour detect des bagages tombent des tapis roulants ou des équipements de manutention.
Au cours des essais et des premières phases de déploiement, le système en temps réel peut fonctionner correctement, en identifiant avec précision les bagages et en réagissant rapidement.
Commencez votre parcours avec l'avenir de l'apprentissage automatique