Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

TensorRT

Scopri come TensorRT i modelli di deep learning per NVIDIA . Impara a esportare Ultralytics su TensorRT ottenere inferenze ad alta velocità e bassa latenza.

TensorRT un kit di sviluppo software (SDK) per l'inferenza di deep learning ad alte prestazioni sviluppato da NVIDIA. È progettato per ottimizzare i modelli di reti neurali per l'implementazione, offrendo una bassa latenza di inferenza e un throughput elevato per le applicazioni di deep learning. Agendo come un compilatore di ottimizzazione, TensorRT le reti addestrate da framework popolari come PyTorch e TensorFlow le ristruttura per eseguirle in modo efficiente sulleGPU NVIDIA . Questa capacità è fondamentale per l'esecuzione di modelli di IA complessi in ambienti di produzione in cui la velocità e l'efficienza sono fondamentali.

Come TensorRT i modelli

La funzione principale di TensorRT di convertire una rete neurale addestrata in un "motore" ottimizzato e specificamente messo a punto per l'hardware di destinazione. Ciò è possibile grazie a diverse tecniche avanzate:

  • Fusione dei livelli: l'ottimizzatore combina più livelli di una rete neurale in un unico kernel, riducendo il sovraccarico di accesso alla memoria e migliorando la velocità di esecuzione.
  • Calibrazione di precisione: TensorRT modalità di precisione ridotta, come la precisione mista (FP16) e la quantizzazione intera (INT8). Riducendo il numero di bit utilizzati per rappresentare i numeri, spesso con una perdita minima di precisione, gli sviluppatori possono accelerare significativamente le operazioni matematiche e ridurre l'utilizzo della memoria. Si tratta di una forma di quantizzazione del modello.
  • Ottimizzazione automatica del kernel: il software seleziona automaticamente i livelli di dati e gli algoritmi migliori per GPU specifica GPU utilizzata, garantendo il massimo utilizzo delle capacità di elaborazione parallela dell'hardware tramite CUDA.

Applicazioni nel mondo reale

Grazie alla sua capacità di elaborare enormi quantità di dati con un ritardo minimo, TensorRT ampiamente adottato nei settori che si basano sulla visione artificiale e su complesse attività di intelligenza artificiale in cui la tempistica è fondamentale.

  1. Sistemi autonomi: nel campo dell' intelligenza artificiale nel settore automobilistico, le auto a guida autonoma devono elaborare i feed video provenienti da più telecamere per detect istantaneamente detect , segnali stradali e ostacoli. Utilizzando TensorRT, i modelli di percezione come le reti di rilevamento degli oggetti possono analizzare i fotogrammi in millisecondi, consentendo al sistema di controllo del veicolo di prendere decisioni critiche per la sicurezza senza ritardi.
  2. Automazione industriale: le fabbriche moderne utilizzano l'IA nella produzione per l'ispezione ottica automatizzata . Telecamere ad alta velocità catturano immagini dei prodotti sulle linee di assemblaggio e modelli TensorRT identificano difetti o anomalie in tempo reale. Ciò garantisce che il controllo qualità sia al passo con gli ambienti di produzione ad alta velocità , spesso implementando dispositivi IA edge come la piattaforma NVIDIA direttamente in fabbrica.

Utilizzo di TensorRT Ultralytics YOLO

L'integrazione di TensorRT nel flusso di lavoro è semplice con i moderni strumenti di IA. Il ultralytics Il pacchetto fornisce un metodo semplice per convertire PyTorch standard in TensorRT . Ciò consente agli utenti di sfruttare l' architettura all'avanguardia di Ultralytics YOLO26 con l' accelerazione hardware delle NVIDIA . Per i team che desiderano gestire i propri set di dati e le pipeline di formazione prima dell'esportazione, il Piattaforma Ultralytics offre un ambiente completo per preparare modelli per un'implementazione così performante.

L'esempio seguente mostra come esportare un modello YOLO26 in un file TensorRT (.engine) e utilizzarlo per inferenza in tempo reale:

from ultralytics import YOLO

# Load the latest stable YOLO26 model (nano size)
model = YOLO("yolo26n.pt")

# Export the model to TensorRT format (creates 'yolo26n.engine')
# This step optimizes the computational graph for your specific GPU
model.export(format="engine")

# Load the optimized TensorRT engine for high-speed inference
trt_model = YOLO("yolo26n.engine")

# Run inference on an image source
results = trt_model("https://ultralytics.com/images/bus.jpg")

TensorRT . ONNX . Framework di addestramento

È importante distinguere TensorRT altri termini spesso utilizzati nel contesto dell'implementazione dei modelli:

  • Rispetto aTensorFlow: framework come PyTorch progettati principalmente per l'addestramento dei modelli e la ricerca, offrendo flessibilità e facilità di debug. TensorRT un motore di inferenza progettato esclusivamente per eseguire i modelli addestrati il più rapidamente possibile. Non viene utilizzato per l' addestramento.
  • Vs. ONNX: Il ONNX (Open Neural Network Exchange) funge da ponte intermedio tra i framework. Mentre ONNX l'interoperabilità (ad esempio, spostando un modello da PyTorch un'altra piattaforma), TensorRT sull'ottimizzazione specifica dell'hardware. Spesso, un modello viene ONNX convertito in ONNX e poi analizzato da TensorRT generare il motore finale.

Per gli sviluppatori che mirano a massimizzare le prestazioni dei propri agenti AI o sistemi di visione, comprendere la transizione da un framework di formazione a un runtime ottimizzato come TensorRT un passo fondamentale nel MLOps professionale .

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora