Ultralytics YOLO27:

Monitoraggio#

Ultralytics Platform offre il monitoraggio per gli endpoint distribuiti. Tieni traccia di richieste agli endpoint, latenza, errori e log. Gli endpoint dedicati a pagamento offrono anche statistiche di previsione in tempo reale ed esempi temporanei che puoi ispezionare e salvare nei dataset.

Panoramica delle schede e della mappa del mondo della pagina Deploy di Ultralytics Platform

Dashboard delle distribuzioni#

La pagina Deploy nella barra laterale funge da dashboard di monitoraggio per tutte le tue distribuzioni. Riunisce in un'unica vista la mappa del mondo, le metriche riepilogative e la gestione delle distribuzioni. Consulta Endpoint dedicati per creare e gestire le distribuzioni.

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:#fff

Schede riepilogative#

Le quattro schede riepilogative nella parte superiore della pagina mostrano:

Le quattro schede riepilogative della pagina Deploy di Ultralytics Platform

MetricaDescrizione
Richieste HTTP (24 ore)Richieste HTTP tra gli endpoint, incluse richieste di previsione, monitoraggio e stato
Distribuzioni attiveEndpoint attualmente nello stato Ready
Tasso di errore HTTP (24 ore)Percentuale di risposte con stato 4xx o 5xx, ponderata in base al volume delle richieste
Latenza P95 HTTP (24 ore)Media delle latenze orarie al 95° percentile, ponderata in base al volume

Viene riportata la latenza P95 anziché quella mediana perché i controlli di integrità vengono completati in un paio di millisecondi e altrimenti finirebbero per dominare il quadro della latenza reale dell'inferenza.

Avviso sul tasso di errore

La scheda del tasso di errore viene evidenziata in rosso quando il tasso supera il 5%. Controlla la scheda Logs nelle singole distribuzioni per diagnosticare gli errori.

Mappa del mondo#

La mappa interattiva del mondo mostra:

  • Indicatori regionali per tutte le 42 regioni disponibili
  • Indicatori verdi per le regioni con una distribuzione pronta
  • Indicatori blu animati per le regioni con distribuzioni attive in corso
  • Dimensione dell'indicatore variabile in base allo stato della distribuzione e alla latenza

Fai clic su una regione qualsiasi per aprire la finestra di dialogo New Deployment. La mappa è nascosta sugli schermi di piccole dimensioni.

Mappa del mondo della pagina Deploy di Ultralytics Platform con le regioni distribuite

Elenco delle distribuzioni#

Sotto le schede riepilogative, l'elenco delle distribuzioni mostra tutti gli endpoint nei tuoi progetti. Usa il selettore della modalità di visualizzazione per passare da una modalità all'altra:

VisualizzazioneDescrizione
SchedeSchede di dettaglio complete con metriche, log, codice, previsione e schede di monitoraggio idonee
CompattaGriglia di schede più piccole (da 1 a 4 colonne) con le metriche principali
TabellaDataTable con colonne ordinabili: Nome, Regione, Stato, Richieste, P95, Errori
Aggiornamenti in tempo reale

La dashboard si aggiorna automaticamente e aumenta la frequenza di aggiornamento mentre le distribuzioni si trovano in uno stato transitorio (creating, deploying o stopping). Fai clic sul pulsante di aggiornamento per applicare subito gli aggiornamenti.

Metriche per distribuzione#

Ogni scheda di distribuzione (nella visualizzazione a schede) mostra metriche in tempo reale. La riga delle metriche, il controllo di integrità e le schede Logs, Code e Predict descritte di seguito vengono visualizzati solo mentre la distribuzione è Ready:

Riga delle metriche#

MetricaDescrizione
RichiesteConteggio delle richieste nelle ultime 24 ore
Latenza P95Media delle latenze orarie al 95° percentile (24 ore)
Tasso di errorePercentuale di risposte 4xx e 5xx, mostrata solo quando è superiore a 0

Le metriche si aggiornano automaticamente. Gli endpoint che non hanno servito alcuna richiesta mostrano "Ancora nessun traffico" e le metriche vengono raccolte solo per le distribuzioni nello stato Ready. Nella dashboard delle distribuzioni, le metriche vengono recuperate per le 20 distribuzioni più recenti.

Controllo dello stato#

Le distribuzioni in esecuzione mostrano un indicatore del controllo di integrità:

IndicatoreSignificato
Cuore verdeIntegro — mostra la latenza della risposta
Cuore rossoNon integro — mostra il messaggio di errore
Icona rotanteControllo di integrità in corso

I controlli di integrità vengono ritentati automaticamente mentre l'endpoint non è integro e si interrompono quando l'endpoint risponde. Fai clic sull'icona di aggiornamento per attivare manualmente un controllo di integrità, che funge anche da sistema per riscaldare un endpoint portato a zero prima di inviargli traffico.

Scheda di distribuzione di Ultralytics Platform con controllo di integrità integro e latenza

Tolleranza all'avvio a freddo

La Platform concede al controllo di integrità tempo aggiuntivo e ritenta le connessioni che hanno avuto errori temporanei, così un endpoint con scalabilità a zero ha il tempo di avviarsi. Se la scheda mostra "Avvio del servizio in corso...", aggiornala per rilevare un'istanza che nel frattempo ha completato l'avvio.

Scheda Monitoraggio#

Apri Distribuisci, passa alla vista Schede e seleziona Monitoraggio su un endpoint dedicato a pagamento Pronto. Invia un'immagine tramite la sua scheda Prepredict o l'API dell'endpoint per popolare Esempi temporanei e Statistiche di previsione. Prima della prima immagine elaborata, la scheda mostra Nessuna immagine elaborata.

Idoneità dell'endpoint

Il monitoraggio richiede un endpoint a pagamento fatturato per il tempo di attività che esegue un runtime in grado di monitorare. Un endpoint incluso non ottiene questa scheda solo da un piano workspace a pagamento. Vedi Endpoint dedicati per la configurazione delle risorse. Gli endpoint esistenti non vengono aggiornati automaticamente con ogni rilascio del runtime, quindi un endpoint più vecchio potrebbe mostrare Monitoraggio non disponibile finché il suo runtime non viene aggiornato.

Ultralytics Platform Deployment Monitoring Temporary Examples And Statistics

Dati temporanei

Il monitoraggio è leggero e temporaneo: grafici, statistiche di previsione e immagini di esempio risiedono solo nella memoria dell'istanza di servizio. Possono andare persi quando l'endpoint si spegne, si ferma, si riavvia, viene ridistribuito, cambia risorse o sostituisce il proprio modello. La cronologia non viene ripristinata quando l'endpoint si riavvia. Salva gli esempi utili in un dataset e attendi che il caricamento finisca prima di cambiare l'endpoint.

Esempi temporanei#

La galleria contiene un campione continuo di immagini elaborate con sovrapposizioni di previsione. Apri un'immagine per ispezionare le sue previsioni nel visualizzatore a schermo intero e usa i controlli di visibilità per regolare le sovrapposizioni. La galleria mostra inizialmente fino a 12 esempi; Mostra tutto la espande.

  • Campionamento: Fino a due esempi inizialmente, poi fino a un'immagine aggiuntiva al minuto. L'acquisizione è al meglio delle possibilità; l'inferenza non attende la codifica dell'esempio.
  • Capacità: Al massimo 100 immagini all'interno di un budget di memoria condiviso di 100 MiB per immagini compresse, metadati di previsione e risorse associate. L'interfaccia etichetta questo budget come 100 MB.
  • Sostituzione: Gli esempi più vecchi vengono sostituiti quando viene raggiunto uno dei limiti. Un'immagine potrebbe non essere disponibile mentre la stai visualizzando.
  • Memorizzazione: Gli esempi temporanei rimangono nella memoria dell'endpoint. Il loro salvataggio in un dataset utilizza i limiti normali di memorizzazione ed elaborazione del workspace.

Ultralytics Platform Deployment Monitoring Prediction Viewer

Salva gli esempi in un dataset#

I membri del workspace con autorizzazione di modifica dei contenuti possono salvare esempi in un dataset nel workspace dell'endpoint:

  1. Seleziona singoli esempi usando le loro caselle di controllo o fai clic su Seleziona tutto.
  2. Fai clic su Salva nel dataset.
  3. Scegli un dataset esistente con lo stesso task del modello distribuito. I dataset con origine connessa sono esclusi; crea prima un dataset compatibile se nessuno è disponibile.
  4. Fai clic sul pulsante Salva, che mostra il conteggio delle immagini selezionate, quindi apri il dataset per seguire l'elaborazione.

Le immagini e le previsioni selezionate vengono copiate attraverso il flusso di lavoro standard di caricamento e inserimento del dataset. Si applicano quote normali, mappatura delle classi e gestione dei duplicati. Il salvataggio lascia gli esempi temporanei nella galleria; le immagini del dataset inserite con successo sopravvivono ai riavvii e all'eliminazione dell'endpoint. Rivedi le etichette previste prima di usarle per l'addestramento.

Ultralytics Platform Deployment Monitoring Save Examples To Dataset

Per rimuovere esempi temporanei, usa il controllo cestino al passaggio del mouse su un'immagine o seleziona gli esempi e fai clic sul pulsante cestino di gruppo, quindi conferma Elimina. L'eliminazione degli esempi lascia inalterate le statistiche di previsione aggregate e le immagini già salvate nei dataset.

Statistiche di previsione#

Le statistiche aggregano le immagini elaborate indipendentemente dal campionamento della galleria. L'eliminazione o la sostituzione di un esempio non sottrae il suo contributo. Il sommario mostra immagini, previsioni e immagini senza previsioni per il periodo selezionato; i modelli di profondità mostrano il conteggio delle immagini.

Il selettore di date predefinito è sugli ultimi 30 giorni e accetta intervalli fino a 365 giorni. Le date selezionate usano i confini UTC; i timestamp dei grafici vengono visualizzati nell'ora locale. Intervalli recenti fino a tre giorni utilizzano la cronologia oraria quando l'intero intervallo cade negli ultimi 72 ore; altri intervalli utilizzano la cronologia giornaliera. L'intervallo di date filtra le statistiche, mentre la galleria continua a mostrare gli esempi temporanei correnti.

La cronologia è limitata a 72 bucket orari e 365 bucket giornalieri ed è disponibile solo da quando l'istanza corrente è stata avviata. Un periodo selezionato senza immagini elaborate mostra Nessuna immagine elaborata in questo periodo.

I grafici disponibili dipendono dal task e dalle previsioni raccolte:

GraficoCosa mostra
Previsioni nel tempoTotali di immagini elaborate e previsioni; i modelli di profondità mostrano Immagini nel tempo
Tempo di inferenzaTempo medio di inferenza del modello in millisecondi, escluso l'overhead di rete e di richiesta
Classi principaliConteggio delle previsioni per classe
Previsioni per immagineDistribuzione che include immagini senza previsioni e un intervallo finale 100+; nascosto per classificazione e profondità
Confidenza di previsioneDistribuzione della confidenza e media, quando i punteggi di confidenza sono disponibili
Confidenza nel tempoConfidenza media di previsione per ogni bucket temporale
Dimensioni di previsioneLarghezza e altezza della previsione rispetto all'immagine di input, quando le dimensioni del bounding box sono disponibili
Posizioni di previsioneMappa di calore spaziale delle previsioni, quando i dati di posizione sono disponibili

Ultralytics Platform Deployment Monitoring Prediction Statistics

Ultralytics Platform Deployment Monitoring Confidence And Spatial Statistics

Interpretazione delle statistiche

La confidenza misura la certezza del modello, non la correttezza. Ispeziona gli esempi e confrontali con le etichette revisionate quando valuti l'accuratezza. Il Tempo di inferenza misura l'esecuzione del modello; la Latenza P95 della distribuzione include la gestione delle richieste e può anche riflettere il traffico non di inferenza come i controlli di integrità.

Il monitoraggio si aggiorna circa ogni 2 secondi mentre il suo pannello è aperto e visibile. Il polling si interrompe quando il pannello è fuori dallo schermo o la scheda del browser è nascosta. L'inferenza riuscita tramite la scheda Prepredict della distribuzione attiva anche un aggiornamento delle statistiche.

Log#

Ogni scheda di distribuzione include una scheda Logs per visualizzare le voci recenti del log:

Scheda Logs della scheda di distribuzione di Ultralytics Platform con filtro per gravità

Voci del log#

Ogni voce del log mostra:

CampoDescrizione
GravitàBarra con codifica a colori (vedi sotto)
TimestampOra della richiesta (formato locale)
MessaggioContenuto del log
Informazioni HTTPCodice di stato e latenza (se applicabile)

Ogni voce presenta una barra della gravità con codifica a colori:

LivelloColoreDescrizione
DEBUGGrigioMessaggi di debug
INFOBluRichieste normali
WARNINGAmbraProblemi non critici
ERRORRossoRichieste non riuscite
CRITICALRossoErrori critici

L'API accetta l'intero insieme di gravità dei log come filtro separato da virgole: DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT e EMERGENCY.

L'interfaccia utente mostra le 20 voci più recenti e nasconde quelle vuote. Per impostazione predefinita, l'API restituisce 50 voci per richiesta (massimo 200) e restituisce un nextPageToken per la paginazione a ritroso.

Flusso di debug

Quando analizzi gli errori: fai clic prima su Errors per filtrare le voci ERROR e WARNING, quindi controlla i timestamp e i codici di stato HTTP. Copia i log negli appunti per condividerli con il tuo team.

Esempi di codice#

Ogni scheda di deployment include una scheda Code che mostra codice API pronto all'uso con l'URL dell'endpoint già compilato. Per i proprietari del workspace, viene inserita la chiave API associata al deployment, pronta per essere copiata ed eseguita. I non proprietari visualizzano un segnaposto 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())
Credenziali compilate automaticamente

Quando visualizzi la scheda Code nella piattaforma, l'URL dell'endpoint e, per i proprietari del workspace, la chiave API associata al deployment vengono compilati automaticamente. Consulta Chiavi API per generare una chiave.

Predict del deployment#

La scheda Predict di ogni scheda di deployment fornisce un pannello di previsione inline, la stessa interfaccia della scheda Predict del modello, ma con l'inferenza eseguita tramite l'endpoint del deployment anziché tramite il servizio condiviso. È utile per testare direttamente un endpoint distribuito dal browser. Consulta Inferenza per i dettagli sui parametri e sui formati delle risposte.

Endpoint API#

Ogni deployment è identificato dal proprietario e dal nome del deployment, e ogni route richiede una chiave API. Consulta il riferimento API per i dettagli sull'autenticazione.

Metriche del deployment#

GET /api/deployments/{owner}/{deployment}/metrics?range=24h

SDK Python: client.deployments.metrics(owner, deployment, range="24h")

Restituisce il payload completo delle metriche per un deployment: un blocco summary con il totale delle richieste, il numero e il tasso di errore e la latenza media, P50, P95 e P99, oltre agli array timeSeries per richieste, errori e latenza P50 e P95, utilizzo di CPU e memoria e numero di istanze.

ParametroTipoDescrizione
rangestringIntervallo di tempo: 1h, 6h, 24h, 7d o 30d (valore predefinito 24h)
sparklineboolRestituisce il riepilogo compatto della dashboard invece del payload completo

Con sparkline=true, la risposta è nel formato compatto utilizzato dalle schede di deployment: 24 conteggi orari delle richieste, oltre al totale delle richieste, al tasso di errore e alla latenza media. Questa è la chiamata che viene aggiornata ogni 60 secondi.

Log del deployment#

GET /api/deployments/{owner}/{deployment}/logs?limit=50&severity=ERROR,WARNING

SDK Python: client.deployments.logs(owner, deployment, limit=50, severity="ERROR,WARNING")

Restituisce le voci di log recenti con filtro di gravità e paginazione opzionali.

ParametroTipoDescrizione
limitintNumero massimo di voci da restituire (valore predefinito: 50, massimo: 200)
severitystringFiltro di gravità separato da virgole
pageTokenstringToken di paginazione della risposta precedente

Stato del deployment#

GET /api/deployments/{owner}/{deployment}/health

SDK Python: client.deployments.health(owner, deployment)

Esegue il ping del deployment e restituisce il relativo stato di salute con la latenza misurata di andata e ritorno:

{
    "healthy": true,
    "status": 200,
    "latencyMs": 142
}

Una risposta che indica uno stato non integro omette status quando non è stato possibile raggiungere affatto l'endpoint e aggiunge un messaggio error.

Panoramica della dashboard

I numeri aggregati nella pagina Deploy non sono disponibili tramite un singolo endpoint REST. Ricreali chiamando la route delle metriche per ogni deployment restituito da GET /api/deployments/{owner} (client.deployments.list(owner)).

Ottimizzazione delle prestazioni#

Usa i dati di monitoraggio per ottimizzare i tuoi deployment:

Se la latenza è troppo elevata:

  1. Verifica che le dimensioni del modello siano appropriate
  2. Valuta una regione più vicina
  3. Controlla le dimensioni dell'immagine inviata con ogni richiesta
Riduzione della latenza

Prova un valore imgsz più piccolo e confronta la latenza e la precisione risultanti per il tuo modello. Esegui il deployment in una regione più vicina ai chiamanti per ridurre la latenza di rete.

FAQ#

  • Le statistiche di previsione e gli esempi temporanei durano solo per la durata dell'istanza di servizio, entro i limiti di bucket e galleria descritti sopra. L'arresto, il riavvio, la ridistribuzione, il ridimensionamento o la sostituzione del modello possono cancellarli. Solo gli esempi salvati con successo in un dataset persistono indipendentemente dall'endpoint.

    Le metriche operative e i log hanno finestre di cronologia separate. L'API delle metriche supporta finestre selezionabili da 1 ora a 30 giorni, campionate in modo più grossolano man mano che la finestra cresce — bucket di 1 minuto su 1 ora fino a bucket di 4 ore su 30 giorni. La scheda di distribuzione mostra le 20 voci di log più recenti; l'API dei log può restituire fino a 200 voci per richiesta e supporta la paginazione.

    Le metriche e i log vengono conservati solo finché esiste il deployment, quindi l'eliminazione di un deployment interrompe anche l'accesso alla relativa cronologia. Esporta tutto ciò che vuoi conservare prima di eliminare un endpoint.

  • Sì, la pagina dei deployment mostra tutti gli endpoint con schede di panoramica aggregate. Usa la visualizzazione tabellare per confrontare le prestazioni tra i deployment.

  • No. Le metriche e i controlli dello stato di salute vengono raccolti solo per i deployment nello stato Ready. Un endpoint arrestato conserva la relativa scheda e la finestra della cronologia, ma non mostra dati in tempo reale finché non lo riavvii.

Commenti