Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

TensorRT

Découvrez comment TensorRT les modèles d'apprentissage profond pour NVIDIA . Apprenez dès aujourd'hui à exporter Ultralytics vers TensorRT d'une inférence à faible latence et haute vitesse.

TensorRT un kit de développement logiciel (SDK) d'inférence d'apprentissage profond haute performance développé par NVIDIA. Il est conçu pour optimiser les modèles de réseaux neuronaux en vue de leur déploiement, offrant une faible latence d'inférence et un débit élevé pour les applications d'apprentissage profond . En agissant comme un compilateur d'optimisation, TensorRT les réseaux entraînés à partir de frameworks populaires tels que PyTorch et TensorFlow les restructure pour qu'ils fonctionnent efficacement surles GPU NVIDIA . Cette capacité est cruciale pour exécuter des modèles d'IA complexes dans des environnements de production où la vitesse et l'efficacité sont primordiales.

Comment TensorRT les modèles

La fonction principale de TensorRT de convertir un réseau neuronal entraîné en un « moteur » optimisé spécialement adapté au matériel cible. Pour ce faire, il utilise plusieurs techniques avancées :

  • Fusion de couches : l'optimiseur combine plusieurs couches d'un réseau neuronal en un seul noyau, ce qui réduit la surcharge d'accès à la mémoire et améliore la vitesse d'exécution.
  • Calibrage de précision : TensorRT les modes de précision réduite, tels que la précision mixte (FP16) et la quantification entière (INT8). En réduisant le nombre de bits utilisés pour représenter les nombres, souvent avec une perte de précision minimale, les développeurs peuvent accélérer considérablement les opérations mathématiques et réduire l'utilisation de la mémoire. Il s'agit d'une forme de quantification de modèle.
  • Réglage automatique du noyau : le logiciel sélectionne automatiquement les meilleures couches de données et les meilleurs algorithmes pour GPU spécifique utilisée, garantissant ainsi une utilisation maximale des capacités de traitement parallèle du matériel via CUDA.

Applications concrètes

En raison de sa capacité à traiter d'énormes quantités de données avec un délai minimal, TensorRT largement adopté dans les secteurs qui s'appuient sur la vision par ordinateur et des tâches d'IA complexes où le timing est essentiel.

  1. Systèmes autonomes : dans le domaine de l' IA automobile, les voitures autonomes doivent traiter les flux vidéo provenant de plusieurs caméras afin de detect instantanément detect , les panneaux de signalisation et les obstacles. Grâce à TensorRT, les modèles de perception tels que les réseaux de détection d'objets peuvent analyser des images en quelques millisecondes, ce qui permet au système de contrôle du véhicule de prendre des décisions critiques pour la sécurité sans aucun décalage.
  2. Automatisation industrielle : les usines modernes utilisent l'IA dans la fabrication pour l'inspection optique automatisée . Des caméras haute vitesse capturent des images des produits sur les chaînes de montage, et des modèles TensorRT identifient les défauts ou les anomalies en temps réel. Cela garantit que le contrôle qualité suit le rythme des environnements de production à haute vitesse , souvent déployés sur des appareils IA de pointe tels que la plateforme NVIDIA directement dans l'usine.

Utilisation de TensorRT Ultralytics YOLO

L'intégration de TensorRT dans votre flux de travail est simple avec les outils d'IA modernes. Les ultralytics package fournit une méthode transparente pour convertir PyTorch standard en TensorRT . Cela permet aux utilisateurs de tirer parti de l' architecture de pointe de Ultralytics YOLO26 avec l' accélération matérielle des NVIDIA . Pour les équipes qui souhaitent gérer leurs ensembles de données et leurs pipelines de formation avant l'exportation, le Plate-forme Ultralytics offre un environnement complet pour préparer des modèles à un déploiement aussi performant.

L'exemple suivant montre comment exporter un modèle YOLO26 vers un fichier TensorRT (.engine) et l'utiliser pour inférence en temps réel:

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 cadres d'entraînement

Il est important de distinguer TensorRT autres termes souvent utilisés dans le domaine du déploiement de modèles:

  • Vs.TensorFlow: les frameworks tels que PyTorch principalement conçus pour la formation et la recherche de modèles et offrent flexibilité et facilité de débogage. TensorRT un moteur d'inférence conçu uniquement pour exécuter les modèles formés aussi rapidement que possible. Il n'est pas utilisé pour la formation.
  • Vs. ONNX: Le ONNX (Open Neural Network Exchange) sert de passerelle entre les frameworks. Alors ONNX l'interopérabilité (par exemple, le transfert d'un modèle de PyTorch une autre plateforme), TensorRT sur l'optimisation spécifique au matériel. Souvent, un modèle est ONNX converti en ONNX , puis analysé par TensorRT générer le moteur final.

Pour les développeurs qui souhaitent optimiser les performances de leurs agents IA ou de leurs systèmes de vision, comprendre la transition d'un cadre de formation vers un environnement d'exécution optimisé tel que TensorRT une étape clé dans le domaine professionnel des MLOps.

Rejoindre la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant