Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

TensorRT

Optimisez les modèles d'apprentissage profond avec TensorRT pour une inférence plus rapide et efficace sur les GPU NVIDIA . Obtenez des performances en temps réel avec YOLO et les applications d'IA.

TensorRT is a high-performance deep learning inference software development kit (SDK) developed by NVIDIA. It is designed to optimize neural network models for deployment, delivering low inference latency and high throughput for deep learning applications. By acting as an optimization compiler, TensorRT takes trained networks from popular frameworks like PyTorch and TensorFlow and restructures them to execute efficiently on NVIDIA GPUs. This capability is crucial for running complex AI models in production environments where speed and efficiency are paramount.

How TensorRT Optimizes Models

The core function of TensorRT is to convert a trained neural network into an optimized "engine" specifically tuned for the target hardware. It achieves this through several advanced techniques:

  • Layer Fusion: The optimizer combines multiple layers of a neural network into a single kernel, reducing memory access overhead and improving execution speed.
  • Precision Calibration: TensorRT supports reduced precision modes, such as mixed precision (FP16) and integer quantization (INT8). By reducing the number of bits used to represent numbers—often with minimal accuracy loss—developers can significantly accelerate math operations and reduce memory usage. This is a form of model quantization.
  • Kernel Auto-Tuning: The software automatically selects the best data layers and algorithms for the specific GPU architecture being used, ensuring maximum utilization of the hardware's parallel processing capabilities 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 provides a seamless method to convert standard PyTorch models into TensorRT engines. This allows users to leverage the state-of-the-art architecture of Ultralytics YOLO26 with the hardware acceleration of NVIDIA GPUs. For teams looking to manage their datasets and training pipelines before export, the Plate-forme Ultralytics offers a comprehensive environment to prepare models for such high-performance deployment.

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 vs. ONNX vs. Training Frameworks

It is important to distinguish TensorRT from other terms often heard in the model deployment landscape:

  • Vs. PyTorch/TensorFlow: Frameworks like PyTorch are primarily designed for model training and research, offering flexibility and ease of debugging. TensorRT is an inference engine designed solely for executing trained models as fast as possible. It is not used for training.
  • Vs. ONNX: The ONNX (Open Neural Network Exchange) format acts as an intermediary bridge between frameworks. While ONNX provides interoperability (e.g., moving a model from PyTorch to another platform), TensorRT focuses on hardware-specific optimization. Often, a model is converted to ONNX first, and then parsed by TensorRT to generate the final engine.

For developers aiming to maximize the performance of their AI agents or vision systems, understanding the transition from a training framework to an optimized runtime like TensorRT is a key step in professional MLOps.

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant