Surveillance#
Ultralytics Platform fournit un suivi des points de terminaison déployés. Suis les requêtes des points de terminaison, la latence, les erreurs et les journaux. Les points de terminaison dédiés payants fournissent également des statistiques de prédiction en direct et des exemples temporaires que tu peux inspecter et enregistrer dans des jeux de données.

Tableau de bord des déploiements#
La page Deploy dans la barre latérale sert de tableau de bord de surveillance pour tous tes déploiements. Elle regroupe la carte du monde, les métriques récapitulatives et la gestion des déploiements dans une seule vue. Consulte Dedicated Endpoints pour créer et gérer des déploiements.
graph TB
subgraph Dashboard
Map[World Map]:::proc --- Cards[Overview Cards]:::proc
Cards --- List[Deployments List]:::decide
end
subgraph "Per Ready Deployment"
Monitoring[Monitoring Tab: Paid Endpoints]:::out
Metrics[Metrics Row]:::out
Health[Health Check]:::out
Logs[Logs Tab]:::out
Code[Code Tab]:::out
Predict[Predict Tab]:::out
end
List --> Monitoring
List --> Metrics
List --> Health
List --> Logs
List --> Code
List --> Predict
classDef proc fill:#2196F3,color:#fff
classDef decide fill:#FF9800,color:#fff
classDef out fill:#9C27B0,color:#fffCartes récapitulatives#
Quatre cartes récapitulatives en haut de la page affichent :

| Métrique | Description |
|---|---|
| Requêtes HTTP (24h) | Requêtes HTTP sur l'ensemble des points de terminaison, incluant les requêtes de prédiction, de suivi et de santé |
| Déploiements actifs | Endpoints actuellement à l’état Ready |
| Taux d'erreur HTTP (24h) | Part des réponses avec un statut 4xx ou 5xx, pondérée selon le volume de requêtes |
| Latence P95 HTTP (24h) | Moyenne des latences horaires au 95e percentile, pondérée selon le volume |
La latence P95, plutôt que la latence médiane, est affichée, car les vérifications d’état répondent en quelques millisecondes et domineraient sinon la représentation de la latence réelle d’inférence.
La carte du taux d’erreur se colore en rouge lorsque le taux dépasse 5 %. Consulte l’onglet Logs des déploiements individuels pour diagnostiquer les erreurs.
Carte du monde#
La carte du monde interactive affiche :
- Repères régionaux pour les 42 régions disponibles
- Repères verts pour les régions disposant d’un déploiement prêt
- Repères bleus animés pour les régions dont les déploiements sont en cours d’activation
- La taille du repère varie selon l’état du déploiement et la latence
Clique sur une région pour ouvrir la boîte de dialogue New Deployment. La carte est masquée sur les petits écrans.

Liste des déploiements#
Sous les cartes récapitulatives, la liste des déploiements affiche tous les endpoints de tes projets. Utilise le sélecteur de mode d’affichage pour basculer entre :
| Affichage | Description |
|---|---|
| Cartes | Cartes de détails complets avec les onglets de métriques, journaux, code, prédiction et suivi éligible |
| Compact | Grille de cartes plus petites (1 à 4 colonnes) avec les métriques clés |
| Tableau | DataTable avec des colonnes triables : Nom, Région, État, Requêtes, P95, Erreurs |
Le tableau de bord s’actualise automatiquement et se met à jour plus rapidement lorsque les déploiements sont dans un état transitoire (creating, deploying ou stopping). Clique sur le bouton d’actualisation pour obtenir des mises à jour immédiates.
Métriques par déploiement#
Chaque carte de déploiement (en mode cartes) affiche des métriques en temps réel. La ligne des métriques, la vérification d’état et les onglets Logs, Code et Predict décrits ci-dessous apparaissent uniquement lorsque le déploiement est Ready :
Ligne des métriques#
| Métrique | Description |
|---|---|
| Requêtes | Nombre de requêtes sur les dernières 24 heures |
| Latence P95 | Moyenne des latences horaires au 95e percentile (24 h) |
| Taux d’erreur | Part des réponses 4xx et 5xx, affichée uniquement lorsqu’elle est supérieure à 0 |
Les métriques s’actualisent automatiquement. Les endpoints qui n’ont traité aucune requête affichent « No traffic yet », et les métriques sont collectées uniquement pour les déploiements à l’état Ready. Sur le tableau de bord des déploiements, les métriques sont récupérées pour les 20 déploiements les plus récents.
Health Check#
Les déploiements en cours d’exécution affichent un indicateur de vérification d’état :
| Indicateur | Signification |
|---|---|
| Cœur vert | Sain — affiche la latence de réponse |
| Cœur rouge | Non sain — affiche le message d’erreur |
| Icône tournante | Vérification d’état en cours |
Les vérifications d’état réessaient automatiquement tant que l’endpoint n’est pas sain et s’arrêtent dès qu’il répond. Clique sur l’icône d’actualisation pour déclencher manuellement une vérification d’état, ce qui permet également de préchauffer un endpoint mis à l’échelle jusqu’à zéro avant d’envoyer du trafic.

La plateforme accorde davantage de temps à la vérification d’état et réessaie en cas d’échecs de connexion transitoires, afin de laisser le temps à un endpoint mis à l’échelle jusqu’à zéro de démarrer. Si la carte affiche « Service starting up... », actualise-la pour détecter une instance qui a fini de démarrer entre-temps.
Onglet de suivi#
Ouvre Deploy, passe à la vue Cards et sélectionne Monitoring sur un point de terminaison dédié payant qui est Ready. Envoie une image via son onglet Predict ou l'API du point de terminaison pour alimenter Temporary Examples et Prediction Statistics. Avant la première image traitée, l'onglet affiche No images processed.
Le suivi nécessite un point de terminaison payant facturé à la durée de fonctionnement et exécutant un runtime compatible avec le suivi. Un point de terminaison inclus n'obtient pas cet onglet par le seul effet d'un plan d'espace de travail payant. Consulte Dedicated Endpoints pour la configuration des ressources. Les points de terminaison existants ne sont pas mis à jour automatiquement à chaque version du runtime, de sorte qu'un point de terminaison plus ancien peut afficher Monitoring unavailable jusqu'à ce que son runtime soit mis à jour.

Le suivi est léger et temporaire : les graphiques, les statistiques de prédiction et les images d'exemple résident uniquement dans la mémoire de l'instance de service. Ils peuvent être perdus lorsque le point de terminaison s'arrête, s'interrompt, redémarre, se redéploie, change de ressources ou remplace son modèle. L'historique n'est pas restauré lorsque le point de terminaison redémarre. Enregistre les exemples utiles dans un jeu de données et attends la fin de l'ingestion avant de modifier le point de terminaison.
Exemples temporaires#
La galerie contient un échantillon continu d'images traitées avec des superpositions de prédiction. Ouvre une image pour inspecter ses prédictions dans la visionneuse plein écran et utilise les contrôles de visibilité pour ajuster les superpositions. La galerie affiche initialement jusqu'à 12 exemples ; Show all permet de l'étendre.
- Échantillonnage : Jusqu'à deux exemples initialement, puis jusqu'à une image supplémentaire par minute. La capture se fait au mieux ; l'inférence n'attend pas l'encodage de l'exemple.
- Capacité : Au maximum 100 images dans un budget mémoire partagé de 100 Mio pour les images compressées, les métadonnées de prédiction et les ressources associées. L'interface étiquette ce budget comme 100 MB.
- Remplacement : Les exemples plus anciens sont remplacés lorsque l'une ou l'autre des limites est atteinte. Un exemple peut devenir indisponible pendant que tu le consultes.
- Stockage : Les exemples temporaires restent dans la mémoire du point de terminaison. Les enregistrer dans un jeu de données utilise les limites normales de stockage et de traitement de l'espace de travail.

Enregistrer des exemples dans un jeu de données#
Les membres de l'espace de travail disposant de l'autorisation de modification du contenu peuvent enregistrer des exemples dans un jeu de données de l'espace de travail du point de terminaison :
- Sélectionne des exemples individuels à l'aide de leurs cases à cocher, ou clique sur Select all.
- Clique sur Save to dataset.
- Choisis un jeu de données existant ayant la même tâche que le modèle déployé. Les jeux de données à source connectée sont exclus ; crée d'abord un jeu de données compatible si aucun n'est disponible.
- Clique sur le bouton Save, qui indique le nombre d'images sélectionnées, puis ouvre le jeu de données pour suivre le traitement.
Les images et les prédictions sélectionnées sont copiées via le flux de travail standard de téléversement et d'ingestion de jeux de données. Le quota normal, le mappage des classes et la gestion des doublons s'appliquent. L'enregistrement laisse les exemples temporaires dans la galerie ; les images de jeux de données ingérées avec succès survivent aux redémarrages et à la suppression du point de terminaison. Examine les étiquettes prédites avant de les utiliser pour l'entraînement.

Pour supprimer des exemples temporaires, utilise le contrôle de corbeille au survol d'une image ou sélectionne des exemples et clique sur le bouton de suppression en masse, puis confirme Delete. La suppression des exemples laisse inchangés les statistiques de prédiction agrégées et les images déjà enregistrées dans les jeux de données.
Statistiques de prédiction#
Les statistiques agrègent les images traitées indépendamment de l'échantillonnage de la galerie. Supprimer ou remplacer un exemple ne soustrait pas sa contribution. Le résumé affiche les images, les prédictions et les images sans prédiction pour la période sélectionnée ; les modèles de profondeur affichent les comptes d'images.
Le sélecteur de date prend par défaut les derniers 30 days et accepte des plages allant jusqu'à 365 days. Les dates sélectionnées utilisent des limites UTC ; les horodatages des graphiques s'affichent en heure locale. Les plages récentes allant jusqu'à trois jours utilisent un historique horaire lorsque la plage complète tombe dans les dernières 72 heures ; les autres plages utilisent un historique journalier. La plage de dates filtre les statistiques, tandis que la galerie continue d'afficher les exemples temporaires actuels.
L'historique est limité à 72 hourly buckets et 365 daily buckets, et n'est disponible qu'depuis le démarrage de l'instance actuelle. Une période sélectionnée sans images traitées affiche No images processed in this period.
Les graphiques disponibles dépendent de la tâche et des prédictions collectées :
| Graphique | Ce qu'il montre |
|---|---|
| Predictions over Time | Totaux des images traitées et des prédictions ; les modèles de profondeur affichent Images over Time |
| Inference Time | Temps d'inférence moyen du modèle en millisecondes, hors réseau et surcharge des requêtes |
| Classes principales | Comptes de prédictions par classe |
| Predictions per Image | Distribution incluant les images sans prédiction et un intervalle final 100+ ; masqué pour la classification et la profondeur |
| Prediction Confidence | Distribution et moyenne de la confiance, lorsque les scores de confiance sont disponibles |
| Confidence over Time | Confiance moyenne des prédictions pour chaque tranche temporelle |
| Prediction Dimensions | Largeur et hauteur des prédictions par rapport à l'image d'entrée, lorsque les dimensions des boîtes sont disponibles |
| Prediction Locations | Carte de chaleur spatiale des prédictions, lorsque les données de localisation sont disponibles |


La confiance mesure la certitude du modèle, et non son exactitude. Inspecte les exemples et compare-les aux étiquettes examinées lors de l'évaluation de la précision. Inference Time mesure l'exécution du modèle ; le P95 Latency du déploiement inclut le traitement des requêtes et peut également refléter un trafic autre que l'inférence, tel que les vérifications de santé.
Le suivi se rafraîchit toutes les 2 seconds environ lorsque son panneau est ouvert et visible. L'interrogation se met en pause lorsque le panneau est hors écran ou que l'onglet du navigateur est masqué. Une inférence réussie via l'onglet Predict du déploiement déclenche également un rafraîchissement des statistiques.
Journaux#
Chaque carte de déploiement comprend un onglet Logs permettant de consulter les entrées récentes du journal :

Entrées du journal#
Chaque entrée du journal affiche :
| Champ | Description |
|---|---|
| Gravité | Barre colorée (voir ci-dessous) |
| Horodatage | Heure de la requête (format local) |
| Message | Contenu du journal |
| Informations HTTP | Code d’état et latence (le cas échéant) |
Chaque entrée comporte une barre de gravité colorée :
| Niveau | Couleur | Description |
|---|---|---|
| DEBUG | Gris | Messages de débogage |
| INFO | Bleu | Requêtes normales |
| WARNING | Ambre | Problèmes non critiques |
| ERROR | Rouge | Requêtes échouées |
| CRITICAL | Rouge | Échecs critiques |
L’API accepte l’ensemble des niveaux de gravité des journaux comme filtre séparé par des virgules : DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT et EMERGENCY.
L’interface affiche les 20 entrées les plus récentes et masque celles qui sont vides. L’API utilise par défaut 50 entrées par requête (200 au maximum) et renvoie un nextPageToken pour parcourir les entrées antérieures.
Lors de l'analyse des erreurs : clique d'abord sur Erreurs pour filtrer les entrées ERROR et WARNING, puis vérifie les horodatages et les codes d'état HTTP. Copie les journaux dans le presse-papiers pour les partager avec ton équipe.
Exemples de code#
Chaque carte de déploiement comprend un onglet Code affichant du code API prêt à l'emploi, avec l'URL du point de terminaison déjà renseignée. Pour les propriétaires d'espaces de travail, la clé API associée au déploiement est insérée et prête à être copiée et exécutée. Les utilisateurs qui ne sont pas propriétaires voient un espace réservé YOUR_API_KEY :
import requests
# Deployment endpoint
url = "https://YOUR_DEPLOYMENT_URL.run.app/predict"
# Headers with your deployment API key
headers = {"Authorization": "Bearer YOUR_API_KEY"}
# Inference parameters
data = {"conf": 0.25, "iou": 0.7, "imgsz": 640}
# Send image for inference
with open("image.jpg", "rb") as f:
response = requests.post(url, headers=headers, data=data, files={"file": f})
print(response.json())Lorsque tu consultes l'onglet Code sur la plateforme, l'URL du point de terminaison et, pour les propriétaires d'espaces de travail, la clé API associée au déploiement sont renseignées automatiquement. Consulte Clés API pour générer une clé.
Prédiction du déploiement#
L'onglet Predict de chaque carte de déploiement fournit un panneau de prédiction intégré — la même interface que l'onglet Predict du modèle, mais qui exécute l'inférence via le point de terminaison du déploiement plutôt que via le service partagé. Cette fonction est utile pour tester directement un point de terminaison déployé depuis le navigateur. Consulte Inférence pour connaître les détails des paramètres et les formats de réponse.
Points de terminaison API#
Chaque déploiement est identifié par son propriétaire et son nom, et chaque route nécessite une clé API. Consulte la référence de l'API pour les détails de l'authentification.
Métriques du déploiement#
GET /api/deployments/{owner}/{deployment}/metrics?range=24hSDK Python : client.deployments.metrics(owner, deployment, range="24h")
Renvoie la charge utile complète des métriques d'un déploiement : un bloc summary contenant le nombre total de requêtes, le nombre et le taux d'erreurs, ainsi que la latence moyenne, P50, P95 et P99, et des tableaux timeSeries pour les requêtes, les erreurs et les latences P50 et P95, l'utilisation du CPU et de la mémoire, ainsi que le nombre d'instances.
| Paramètre | Type | Description |
|---|---|---|
range | string | Plage temporelle : 1h, 6h, 24h, 7d ou 30d (24h par défaut) |
sparkline | bool | Renvoie le résumé compact du tableau de bord au lieu de la charge utile complète |
Avec sparkline=true, la réponse adopte le format compact utilisé par les cartes de déploiement : 24 nombres de requêtes horaires, ainsi que le nombre total de requêtes, le taux d'erreurs et la latence moyenne. C'est l'appel qui est actualisé toutes les 60 secondes.
Journaux du déploiement#
GET /api/deployments/{owner}/{deployment}/logs?limit=50&severity=ERROR,WARNINGSDK Python : client.deployments.logs(owner, deployment, limit=50, severity="ERROR,WARNING")
Renvoie les entrées de journal récentes avec un filtre de gravité et une pagination facultatifs.
| Paramètre | Type | Description |
|---|---|---|
limit | int | Nombre maximal d'entrées à renvoyer (par défaut : 50, maximum : 200) |
severity | string | Filtre de gravité séparé par des virgules |
pageToken | string | Jeton de pagination provenant de la réponse précédente |
État du déploiement#
GET /api/deployments/{owner}/{deployment}/healthSDK Python : client.deployments.health(owner, deployment)
Envoie une requête ping au déploiement et renvoie son état de santé avec la latence aller-retour mesurée :
{
"healthy": true,
"status": 200,
"latencyMs": 142
}Une réponse indiquant un état dégradé omet status lorsque le point de terminaison est totalement inaccessible, et ajoute un message error.
Les chiffres agrégés de la page Deploy ne sont pas disponibles via un seul point de terminaison REST. Reproduis-les en appelant la route des métriques pour chaque déploiement renvoyé par GET /api/deployments/{owner} (client.deployments.list(owner)).
Optimisation des performances#
Utilise les données de supervision pour optimiser tes déploiements :
Si la latence est trop élevée :
- Vérifie que la taille du modèle est adaptée
- Envisage une région plus proche
- Vérifie la taille de l'image envoyée avec chaque requête
Essaie une valeur imgsz plus petite et compare la latence et la précision obtenues pour ton modèle. Déploie-le dans une région
plus proche des appelants pour réduire la latence réseau.
FAQ#
Les statistiques de prédiction et les exemples temporaires ne durent que le temps de vie de l'instance de service, dans les limites de tranches et de galerie décrites ci-dessus. L'arrêt, le redémarrage, le redéploiement, le redimensionnement ou le remplacement du modèle peuvent les effacer. Seuls les exemples enregistrés avec succès dans un jeu de données persistent indépendamment du point de terminaison.
Les métriques opérationnelles et les journaux ont des fenêtres d'historique distinctes. L'API des métriques prend en charge des fenêtres sélectionnables de 1 heure à 30 jours, échantillonnées de manière plus grossière à mesure que la fenêtre s'élargit — des tranches de 1 minute sur 1 heure jusqu'à des tranches de 4 heures sur 30 jours. La carte de déploiement affiche les 20 entrées de journal les plus récentes ; l'API des journaux peut renvoyer jusqu'à 200 entrées par requête et prend en charge la pagination.
Les métriques et les journaux sont conservés uniquement tant que le déploiement existe ; la suppression d'un déploiement met donc également fin à l'accès à son historique. Exporte tout ce que tu souhaites conserver avant de supprimer un point de terminaison.
Oui, la page des déploiements affiche tous les points de terminaison avec des cartes de vue d'ensemble agrégées. Utilise la vue en tableau pour comparer les performances entre les déploiements.
Non. Les métriques et les contrôles d'état sont collectés uniquement pour les déploiements à l'état Ready. Un point de terminaison arrêté conserve sa carte et sa fenêtre d'historique, mais n'affiche aucun chiffre en temps réel tant que tu ne l'as pas redémarré.