Link to this sectionInferenza#
Ultralytics Platform fornisce un'API di inferenza per testare i modelli addestrati. Usa la scheda Predict basata su browser per una convalida rapida o la REST API per l'accesso a livello di programmazione.

Link to this sectionScheda Predici#
Ogni modello include una scheda Predict per l'inferenza basata su browser:
- Naviga verso il tuo modello
- Fai clic sulla scheda Predict
- Carica un'immagine, usa un esempio o apri la tua webcam
- Visualizza istantaneamente le previsioni con sovrapposizioni di bounding box

Link to this sectionMetodi di input#
Il pannello di previsione supporta molteplici metodi di input:
| Metodo | Descrizione |
|---|---|
| Caricamento immagine | Trascina o fai clic per caricare un'immagine |
| Immagini di esempio | Fai clic sugli esempi integrati (immagini del dataset o predefinite) |
| Acquisizione webcam | Feed della telecamera dal vivo con acquisizione di singoli fotogrammi |
graph LR
A[Upload Image] --> D[Auto-Inference]
B[Example Image] --> D
C[Webcam Capture] --> D
D --> E[Results + Overlays]
style D fill:#2196F3,color:#fff
style E fill:#4CAF50,color:#fffLink to this sectionCarica immagine#
Trascina o fai clic per caricare:
- Formati supportati: JPEG, PNG, WebP, AVIF, HEIC, JP2, TIFF, BMP, DNG, MPO
- Dimensione massima: 10MB
- Auto-inferenza: I risultati appaiono automaticamente dopo il caricamento
Il pannello di previsione esegue l'inferenza automaticamente quando carichi un'immagine, selezioni un esempio o acquisisci un fotogramma dalla webcam. Non è necessario fare clic su alcun pulsante.
Link to this sectionImmagini di esempio#
Il pannello di previsione mostra immagini di esempio dal dataset collegato al tuo modello. Se non è collegato alcun dataset, vengono utilizzati esempi predefiniti:
| Immagine | Contenuto |
|---|---|
bus.jpg | Scena stradale con veicoli |
zidane.jpg | Scena sportiva con persone |
Per i modelli OBB, vengono mostrate invece immagini aeree di barche e aeroporti.
Le immagini di esempio sono precaricate al caricamento della pagina, quindi fare clic su un esempio attiva un'inferenza quasi istantanea senza tempi di attesa per il download.
Link to this sectionWebcam#
Fai clic sulla scheda della webcam per avviare un feed della telecamera dal vivo:
- Concedi l'autorizzazione per la fotocamera quando richiesto
- Fai clic sull'anteprima video per acquisire un fotogramma
- L'inferenza viene eseguita automaticamente sul fotogramma acquisito
- Fai clic di nuovo per riavviare la webcam
Link to this sectionVisualizza risultati#
I risultati dell'inferenza mostrano:
- Bounding boxes con etichette di classe come sovrapposizioni SVG
- Punteggi di confidenza per ogni rilevazione
- Colori delle classi dalla tavolozza dei colori del tuo dataset (o dalla tavolozza predefinita di Ultralytics)
- Ripartizione della velocità: Tempo di pre-elaborazione, inferenza, post-elaborazione e rete

Il pannello dei risultati mostra:
| Campo | Descrizione |
|---|---|
| Elenco rilevazioni | Ogni rilevazione con nome della classe e confidenza |
| Statistiche di velocità | Pre-elaborazione, inferenza, post-elaborazione, rete (ms) |
| Risposta JSON | Risposta API grezza in un blocco di codice |
Link to this sectionParametri di inferenza#
Regola il comportamento di rilevamento con i parametri nella sezione comprimibile Parameters:

| Parametro | Intervallo | Predefinito | Descrizione |
|---|---|---|---|
| Confidenza | 0.01 – 1.0 | 0.25 | Soglia minima di confidenza |
| IoU | 0.0 – 0.95 | 0.7 | Soglia NMS IoU |
| Dimensione immagine | 320, 640, 1280 (interruttore UI) | 640 | Dimensione di ridimensionamento dell'input (l'API accetta qualsiasi valore da 32 a 1280) |
La modifica di qualsiasi parametro riesegue automaticamente l'inferenza sull'immagine corrente con un debounce di 500ms. Non c'è bisogno di ricaricare.
Link to this sectionSoglia di confidenza#
Filtra le previsioni in base alla confidenza:
- Più alta (0.5+): Previsioni meno numerose, ma più certe
- Più bassa (0.1-0.25): Più previsioni, presenza di rumore
- Predefinita (0.25): Bilanciata per la maggior parte dei casi d'uso
Link to this sectionSoglia IoU#
Controlla la soppressione dei non massimi (NMS):
- Più alta (0.7+): Consenti più riquadri sovrapposti
- Più bassa (0.3-0.5): Unisci le rilevazioni vicine in modo più aggressivo
- Predefinita (0.7): Comportamento NMS bilanciato per la maggior parte dei casi d'uso
Link to this sectionPrevisione su deployment#
Ogni endpoint dedicato in esecuzione include una scheda Predict direttamente sulla sua scheda di deployment. Questo utilizza il servizio di inferenza specifico del deployment invece del servizio di previsione condiviso, permettendoti di testare l'endpoint distribuito direttamente dal browser.
Link to this sectionREST API#
Accedi all'inferenza a livello di programmazione:
Link to this sectionAutenticazione#
Includi la tua chiave API nelle richieste:
Authorization: Bearer YOUR_API_KEYPer eseguire l'inferenza dai tuoi script, notebook o app, includi una chiave API. Generane una in Settings > API Keys.
Link to this sectionEndpoint#
POST https://platform.ultralytics.com/api/models/{modelId}/predictLink to this sectionRichiesta#
import requests
url = "https://platform.ultralytics.com/api/models/MODEL_ID/predict"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
files = {"file": open("image.jpg", "rb")}
data = {"conf": 0.25, "iou": 0.7, "imgsz": 640}
response = requests.post(url, headers=headers, files=files, data=data)
print(response.json())
Link to this sectionParametri di richiesta#
| Parametro | Tipo | Predefinito | Intervallo | Descrizione |
|---|---|---|---|---|
file | file | - | - | File immagine o video (obbligatorio a meno che non sia impostato source) |
conf | float | 0.25 | 0.01 – 1.0 | Soglia minima di confidenza |
iou | float | 0.7 | 0.0 – 0.95 | Soglia NMS IoU |
imgsz | int | 640 | 32 – 1280 | Dimensione dell'immagine di input in pixel |
normalize | bool | false | - | Restituisci le coordinate del bounding box come 0 – 1 |
decimals | int | 5 | 0 – 10 | Precisione decimale per i valori delle coordinate |
source | stringa | - | - | URL immagine o stringa base64 (alternativa a file) |
Link to this sectionRisposta#
{
"images": [
{
"shape": [1080, 1920],
"results": [
{
"class": 0,
"name": "person",
"confidence": 0.92,
"box": { "x1": 100, "y1": 50, "x2": 300, "y2": 400 }
},
{
"class": 2,
"name": "car",
"confidence": 0.87,
"box": { "x1": 400, "y1": 200, "x2": 600, "y2": 350 }
}
],
"speed": {
"preprocess": 1.2,
"inference": 12.5,
"postprocess": 2.3
}
}
],
"metadata": {
"imageCount": 1,
"functionTimeCall": 0.018,
"model": "model.pt",
"version": {
"ultralytics": "8.x.x",
"torch": "2.6.0",
"torchvision": "0.21.0",
"python": "3.13.0"
}
}
}
Link to this sectionCampi di risposta#
| Campo | Tipo | Descrizione |
|---|---|---|
images | array | Elenco delle immagini elaborate |
images[].shape | array | Dimensioni immagine [altezza, larghezza] |
images[].results | array | Elenco delle rilevazioni |
images[].results[].class | int | Indice della classe (ID intero) |
images[].results[].name | stringa | Nome della classe |
images[].results[].confidence | float | Confidenza della rilevazione (0-1) |
images[].results[].box | oggetto | Coordinate della bounding box |
images[].speed | oggetto | Tempi di elaborazione in millisecondi |
metadata | oggetto | Metadati della richiesta e informazioni sulla versione |
Link to this sectionRisposte specifiche per attività#
Il formato della risposta varia a seconda dell'attività:
{
"class": 0,
"name": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400}
}Link to this sectionFatturazione#
L'inferenza condivisa (la scheda Predict e l'endpoint /api/models/{id}/predict) è inclusa senza costi aggiuntivi in tutti i piani. Non ci sono addebiti per singola richiesta per l'inferenza condivisa.
Per carichi di lavoro di produzione che richiedono un throughput maggiore, distribuisci un dedicated endpoint.
Link to this sectionLimiti di frequenza#
L'inferenza condivisa è limitata a 20 richieste/min per API key. In caso di limitazione, l'API restituisce 429 con un header Retry-After. Consulta il rate limit reference completo per tutte le categorie di endpoint.
Distribuisci un dedicated endpoint per un'inferenza illimitata senza limiti di velocità, throughput prevedibile e risposte coerenti a bassa latenza. Per l'inferenza locale, consulta la guida alla modalità Predict.
Link to this sectionGestione errori#
Risposte di errore comuni:
| Codice | Messaggio | Soluzione |
|---|---|---|
| 400 | Immagine non valida | Controlla il formato del file |
| 401 | Non autorizzato | Verifica l'API key |
| 404 | Modello non trovato | Controlla l'ID del modello |
| 429 | Limite di richieste superato | Attendi e riprova, oppure utilizza un dedicated endpoint per un throughput illimitato |
| 500 | Errore del server | Riprova la richiesta |
| 503 | Servizio non disponibile | Il servizio Predict si sta avviando o non è raggiungibile; attendi brevemente e riprova |
Link to this sectionFAQ#
Link to this sectionPosso eseguire l'inferenza su video?#
Entrambi i metodi di inferenza accettano file video:
- I dedicated endpoints accettano file video direttamente. Formati supportati (fino a 100 MB): ASF, AVI, GIF, M4V, MKV, MOV, MP4, MPEG, MPG, TS, WEBM, WMV. Ogni fotogramma viene elaborato individualmente e i risultati vengono restituiti per fotogramma. Vedi dedicated endpoints per i dettagli.
- L'inferenza condivisa (
/api/models/{id}/predict) utilizza lo stesso servizio di previsione e accetta gli stessi formati video. Tuttavia, la scheda Predict del browser nell'interfaccia utente carica solo immagini — utilizza direttamente la REST API o un dedicated endpoint per i flussi di lavoro video. L'endpoint condiviso è anche limitato a 20 req/min, quindi i dedicated endpoints sono la scelta migliore per carichi di lavoro video intensi.
Link to this sectionCome ottengo l'immagine annotata?#
L'API restituisce previsioni JSON. Per visualizzarle:
- Utilizza le previsioni per disegnare le box localmente
- Utilizza il metodo
plot()di Ultralytics:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model("image.jpg")
results[0].save("annotated.jpg")Consulta la documentazione della modalità Predict per l'API completa dei risultati e le opzioni di visualizzazione.
Link to this sectionQual è la dimensione massima dell'immagine?#
- Limite di caricamento: 10MB
- Consigliato: <5MB per un'inferenza veloce
- Ridimensionamento automatico: le immagini vengono ridimensionate in base al parametro
Image Sizeselezionato
Le immagini di grandi dimensioni vengono ridimensionate automaticamente mantenendo le proporzioni.
Link to this sectionPosso eseguire un'inferenza batch?#
L'API attuale elabora un'immagine per richiesta. Per il batch:
- Invia richieste simultanee
- Utilizza un dedicated endpoint per un throughput maggiore
- Considera l'inferenza locale per grandi batch
import concurrent.futures
import requests
url = "https://predict-abc123.run.app/predict"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
images = ["img1.jpg", "img2.jpg", "img3.jpg"]
def predict(image_path):
with open(image_path, "rb") as f:
return requests.post(url, headers=headers, files={"file": f}).json()
with concurrent.futures.ThreadPoolExecutor(max_workers=4) as executor:
results = list(executor.map(predict, images))