深圳Yolo 视觉
深圳
立即加入
词汇表

TensorRT

探索 TensorRT 如何为 NVIDIA GPU 优化深度学习模型。立即学习如何将 Ultralytics YOLO26 导出到 TensorRT,以实现低延迟、高速推理。

TensorRT 是由 NVIDIA 开发的高性能深度学习推理软件开发工具包 (SDK)。它旨在优化神经网络模型以进行部署,为深度学习应用提供低推理延迟和高吞吐量。通过充当优化编译器,TensorRT 接收来自 PyTorch 和 TensorFlow 等流行框架的训练好的网络,并对其进行重构,使其在 NVIDIA GPU 上高效执行。此功能对于在速度和效率至关重要的生产环境中运行复杂的 AI 模型至关重要。

TensorRT 如何优化模型

TensorRT的核心功能是将训练好的神经网络转换为针对目标硬件专门优化的“引擎”。它通过以下几种先进技术实现这一目标:

  • 层融合:优化器将神经网络的多个层组合成一个单一的核,减少内存访问开销并提高执行速度。
  • 精度校准:TensorRT支持降低精度模式,例如混合精度(FP16)和整数量化(INT8)。通过减少用于表示数字的位数——通常伴随着最小的精度损失——开发人员可以显著加速数学运算并减少内存使用。这是一种模型量化的形式。
  • 内核自动调优:该软件可自动为所使用的特定 GPU 架构选择最佳数据层和算法,通过 CUDA 确保最大限度地利用硬件的并行处理能力。

实际应用

由于其能够以最小延迟处理海量数据,TensorRT 在依赖于计算机视觉和时间敏感的复杂 AI 任务的行业中被广泛采用。

  1. 自动驾驶系统:汽车 AI 领域,自动驾驶汽车必须即时处理来自多个摄像头的视频流,以 detect 行人、标志和障碍物。使用 TensorRT,像 object detection 网络这样的感知模型可以在毫秒级内分析帧,使车辆的控制系统能够做出无延迟的安全关键决策。
  2. 工业自动化: 现代工厂利用AI 制造进行自动化光学检测。高速摄像头捕捉装配线上产品图像,并且 TensorRT 优化的模型实时识别缺陷或异常。这确保了质量控制能够跟上高速生产环境的步伐,通常直接部署在工厂车间的 边缘 AI 设备上,例如 NVIDIA Jetson 平台。

将 TensorRT 与 Ultralytics YOLO 结合使用

使用现代人工智能工具,将TensorRT 集成到工作流程中非常简单。TensorRT ultralytics 该包提供了一种无缝方法,可将标准 PyTorch 模型转换为 TensorRT 引擎。这使用户能够利用最先进的架构 Ultralytics YOLO26 借助 NVIDIA GPU 的硬件加速。对于希望在导出前管理其数据集和训练管道的团队, Ultralytics 平台 提供了一个全面的环境,用于准备模型以实现此类高性能部署。

以下示例演示了如何将 YOLO26 模型导出为 TensorRT 引擎文件 (.engine) 并将其用于 实时推理:

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 与训练框架

区分TensorRT与模型部署领域中常听到的其他术语至关重要:

  • 对比 PyTorch/TensorFlow:PyTorch 等框架主要用于模型训练和研究,提供灵活性和易于调试的特性。TensorRT 是一种推理引擎,专门设计用于尽可能快地执行已训练的模型。它不用于训练。
  • 对比 ONNX:ONNX(开放神经网络交换)格式充当框架之间的中间桥梁。ONNX 提供互操作性(例如,将模型从 PyTorch 迁移到另一个平台),而 TensorRT 则专注于硬件特定优化。通常,模型会首先转换为 ONNX,然后由 TensorRT 解析以生成最终引擎。

对于旨在最大限度提升其AI 代理或视觉系统性能的开发人员来说,了解从训练框架到像 TensorRT 这样的优化运行时的过渡是专业MLOps的关键一步。

让我们一起共建AI的未来!

开启您的机器学习未来之旅