TensorRT
Explora como o TensorRT otimiza modelos de deep learning para GPUs NVIDIA. Aprende a exportar o Ultralytics YOLO26 para TensorRT e obter inferência de baixa latência e alta velocidade.
TensorRT é um kit de desenvolvimento de software (SDK) de inferência de deep learning de alto desempenho, desenvolvido pela NVIDIA. Foi concebido para otimizar modelos de redes neurais para implementação, proporcionando baixa latência de inferência e alto débito para aplicações de deep learning. Atuando como um compilador de otimização, o TensorRT recebe redes treinadas de frameworks populares como PyTorch e TensorFlow e reestrutura-as para serem executadas com eficiência em GPUs NVIDIA. Esta capacidade é crucial para executar modelos complexos de IA em ambientes de produção onde a velocidade e a eficiência são fundamentais.
Como o TensorRT otimiza modelos#
A função principal do TensorRT é converter uma rede neural treinada num "motor" otimizado, especificamente ajustado ao hardware de destino. Isto é conseguido através de várias técnicas avançadas:
- Fusão de camadas: o otimizador combina várias camadas de uma rede neural num único kernel, reduzindo a sobrecarga do acesso à memória e melhorando a velocidade de execução.
- Calibração de precisão: o TensorRT suporta modos de precisão reduzida, como precisão mista (FP16) e quantização de inteiros (INT8). Ao reduzir o número de bits utilizados para representar números — frequentemente com uma perda mínima de precisão —, os programadores podem acelerar significativamente as operações matemáticas e reduzir a utilização de memória. Esta é uma forma de quantização de modelos.
- Ajuste automático de kernels: o software seleciona automaticamente as melhores camadas de dados e algoritmos para a arquitetura específica da GPU utilizada, garantindo a máxima utilização das capacidades de processamento paralelo do hardware através do CUDA.
Aplicações no mundo real#
Devido à sua capacidade de processar enormes quantidades de dados com um atraso mínimo, o TensorRT é amplamente adotado em setores que dependem de visão computacional e de tarefas complexas de IA nas quais o tempo é crítico.
-
Sistemas autónomos: no âmbito da IA no setor automóvel, os carros autónomos têm de processar fluxos de vídeo de várias câmaras para detetar instantaneamente peões, sinais e obstáculos. Com o TensorRT, os modelos de perceção, como as redes de deteção de objetos, podem analisar frames em milissegundos, permitindo que o sistema de controlo do veículo tome decisões críticas para a segurança sem atrasos.
-
Automação industrial: as fábricas modernas utilizam IA na indústria transformadora para a inspeção ótica automatizada. Câmaras de alta velocidade captam imagens dos produtos nas linhas de montagem, e os modelos otimizados pelo TensorRT identificam defeitos ou anomalias em tempo real. Isto garante que o controlo de qualidade acompanha ambientes de produção de alta velocidade, recorrendo frequentemente à implementação em dispositivos de IA de edge, como a plataforma NVIDIA Jetson, diretamente no chão de fábrica.
Utilizar o TensorRT com o Ultralytics YOLO#
A integração do TensorRT no teu fluxo de trabalho é simples com as ferramentas modernas de IA. O pacote ultralytics disponibiliza um método simples para converter modelos PyTorch padrão em motores TensorRT. Isto permite aos utilizadores tirar partido da arquitetura de última geração do Ultralytics YOLO26 com a aceleração de hardware das GPUs NVIDIA. Para as equipas que pretendem gerir os seus conjuntos de dados e pipelines de treino antes da exportação, a Ultralytics Platform oferece um ambiente abrangente para preparar modelos para uma implementação de alto desempenho deste tipo.
O exemplo seguinte demonstra como exportar um modelo Ultralytics YOLO26 para um ficheiro de motor TensorRT (.engine) e utilizá-lo para inferência em tempo real:
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. frameworks de treino#
É importante distinguir o TensorRT de outros termos frequentemente utilizados no contexto da implementação de modelos:
- Vs. PyTorch/TensorFlow: frameworks como o PyTorch foram concebidos principalmente para o treino de modelos e a investigação, oferecendo flexibilidade e facilidade de depuração. O TensorRT é um motor de inferência concebido exclusivamente para executar modelos treinados com a maior rapidez possível. Não é utilizado para treino.
- Vs. ONNX: o formato ONNX (Intercâmbio de Redes Neurais Abertas) funciona como uma ponte intermediária entre frameworks. Enquanto o ONNX proporciona interoperabilidade (por exemplo, ao transferir um modelo do PyTorch para outra plataforma), o TensorRT concentra-se na otimização específica do hardware. Frequentemente, um modelo é primeiro convertido para ONNX e, em seguida, analisado pelo TensorRT para gerar o motor final.
Para os programadores que pretendem maximizar o desempenho dos seus agentes de IA ou sistemas de visão, compreender a transição de um framework de treino para um runtime otimizado como o TensorRT é um passo fundamental nas MLOps profissionais.









