انتقل إلى المحتوى

TensorRT تصدير ل YOLOv8 نماذج

يمكن أن يتطلب نشر نماذج رؤية الكمبيوتر في بيئات عالية الأداء تنسيقا يزيد من السرعة والكفاءة. هذا صحيح بشكل خاص عند نشر نموذجك على وحدات معالجة الرسومات NVIDIA.

باستخدام TensorRT تنسيق التصدير ، يمكنك تحسين ملف Ultralytics YOLOv8 نماذج للاستدلال السريع والفعال على أجهزة NVIDIA. سيمنحك هذا الدليل خطوات سهلة المتابعة لعملية التحويل ويساعدك على تحقيق أقصى استفادة من تقنية NVIDIA المتقدمة في مشاريع التعلم العميق الخاصة بك.

TensorRT

TensorRT نظره عامه

TensorRT، التي طورتها NVIDIA، هي مجموعة تطوير برامج متقدمة (SDK) مصممة للاستدلال على التعلم العميق عالي السرعة. إنه مناسب تماما للتطبيقات في الوقت الفعلي مثل اكتشاف الكائنات.

تعمل مجموعة الأدوات هذه على تحسين نماذج التعلم العميق لوحدات معالجة الرسومات NVIDIA وينتج عنها عمليات أسرع وأكثر كفاءة. TensorRT تخضع النماذج TensorRT التحسين ، والذي يتضمن تقنيات مثل اندماج الطبقة ، والمعايرة الدقيقة (INT8 و FP16) ، والديناميكية tensor إدارة الذاكرة والضبط التلقائي ل kernel. تحويل نماذج التعلم العميق إلى TensorRT يسمح التنسيق للمطورين بإدراك إمكانات وحدات معالجة الرسومات NVIDIA بشكل كامل.

TensorRT معروف بتوافقه مع تنسيقات النماذج المختلفة ، بما في ذلك TensorFlow, PyTorchو ONNX، مما يوفر للمطورين حلا مرنا لدمج النماذج وتحسينها من أطر عمل مختلفة. يتيح هذا التنوع نشر النماذج بكفاءة عبر بيئات الأجهزة والبرامج المتنوعة.

الميزات الرئيسية ل TensorRT نماذج

TensorRT تقدم النماذج مجموعة من الميزات الرئيسية التي تساهم في كفاءتها وفعاليتها في استدلال التعلم العميق عالي السرعة:

  • معايرة دقيقة: TensorRT يدعم المعايرة الدقيقة، مما يسمح بضبط النماذج بدقة لمتطلبات دقة محددة. يتضمن ذلك دعم تنسيقات الدقة المنخفضة مثل INT8 و FP16 ، والتي يمكن أن تعزز سرعة الاستدلال مع الحفاظ على مستويات دقة مقبولة.

  • طبقة الانصهار: ال TensorRT تتضمن عملية التحسين اندماج الطبقة ، حيث يتم دمج طبقات متعددة من الشبكة العصبية في عملية واحدة. هذا يقلل من الحمل الحسابي ويحسن سرعة الاستدلال عن طريق تقليل الوصول إلى الذاكرة والحوسبة.

TensorRT طبقة الانصهار

  • دينامي Tensor إدارة الذاكرة: TensorRT يدير بكفاءة tensor استخدام الذاكرة أثناء الاستدلال ، مما يقلل من حمل الذاكرة ويحسن تخصيص الذاكرة. ينتج عن هذا استخدام ذاكرة GPU أكثر كفاءة.

  • ضبط النواة التلقائي: TensorRT يطبق ضبط kernel التلقائي لتحديد نواة GPU الأكثر تحسينا لكل طبقة من النموذج. يضمن هذا النهج التكيفي أن يستفيد النموذج بشكل كامل من القوة الحسابية لوحدة معالجة الرسومات.

خيارات النشر في TensorRT

قبل أن ننظر إلى رمز التصدير YOLOv8 نماذج إلى TensorRT التنسيق ، دعونا نفهم أين TensorRT عادة ما تستخدم النماذج.

TensorRT يوفر العديد من خيارات النشر، وكل خيار يوازن بين سهولة التكامل وتحسين الأداء والمرونة بشكل مختلف:

  • النشر داخل TensorFlowتتكامل هذه الطريقة: TensorRT إلى TensorFlow، مما يسمح بتشغيل النماذج المحسنة بطريقة مألوفة TensorFlow وسط. إنه مفيد للنماذج التي تحتوي على مزيج من الطبقات المدعومة وغير المدعومة ، مثل TF-TRT يمكن التعامل مع هذه بكفاءة.

TensorRT نظره عامه

  • مستقل TensorRT واجهة برمجة تطبيقات وقت التشغيل: توفر تحكما دقيقا ، وهو مثالي للتطبيقات ذات الأداء الحرج. إنه أكثر تعقيدا ولكنه يسمح بالتنفيذ المخصص للمشغلين غير المدعومين.

  • نفيديا Triton خادم الاستدلال: خيار يدعم النماذج من أطر عمل مختلفة. مناسب بشكل خاص للاستدلال السحابي أو الحافة ، فهو يوفر ميزات مثل تنفيذ النموذج المتزامن وتحليل النموذج.

تصدير YOLOv8 نماذج ل TensorRT

يمكنك تحسين كفاءة التنفيذ وتحسين الأداء عن طريق التحويل YOLOv8 نماذج ل TensorRT تنسيق.

تركيب

لتثبيت الحزمة المطلوبة ، قم بتشغيل:

تركيب

# Install the required package for YOLOv8
pip install ultralytics

للحصول على إرشادات مفصلة وأفضل الممارسات المتعلقة بعملية التثبيت ، تحقق من YOLOv8 دليل التثبيت. أثناء تثبيت الحزم المطلوبة ل YOLOv8، إذا واجهت أي صعوبات، فاستشر دليل المشكلات الشائعة للحصول على حلول ونصائح.

استخدام

قبل الغوص في تعليمات الاستخدام ، تأكد من إطلاعك على نطاق YOLOv8 النماذج التي تقدمها Ultralytics. سيساعدك هذا في اختيار النموذج الأنسب لمتطلبات مشروعك.

استخدام

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO('yolov8n.pt')

# Export the model to TensorRT format
model.export(format='engine')  # creates 'yolov8n.engine'

# Load the exported TensorRT model
tensorrt_model = YOLO('yolov8n.engine')

# Run inference
results = tensorrt_model('https://ultralytics.com/images/bus.jpg')
# Export a YOLOv8n PyTorch model to TensorRT format
yolo export model=yolov8n.pt format=engine  # creates 'yolov8n.engine''

# Run inference with the exported model
yolo predict model=yolov8n.engine source='https://ultralytics.com/images/bus.jpg'

لمزيد من التفاصيل حول عملية التصدير ، قم بزيارة Ultralytics صفحة التوثيق الخاصة بالتصدير.

نشر التصدير YOLOv8 TensorRT نماذج

بعد أن نجحت في تصدير Ultralytics YOLOv8 نماذج ل TensorRT ، أنت الآن جاهز لنشرها. للحصول على إرشادات متعمقة حول نشر TensorRT النماذج في إعدادات مختلفة ، ألق نظرة على الموارد التالية:

ملخص

في هذا الدليل ، ركزنا على التحويل Ultralytics YOLOv8 نماذج إلى نفيديا TensorRT تنسيق النموذج. خطوة التحويل هذه ضرورية لتحسين كفاءة وسرعة YOLOv8 النماذج، مما يجعلها أكثر فعالية وملاءمة لبيئات النشر المتنوعة.

لمزيد من المعلومات حول تفاصيل الاستخدام ، ألق نظرة على TensorRT الوثائق الرسمية.

إذا كنت مهتما بالمزيد Ultralytics YOLOv8 عمليات التكامل ، توفر صفحة دليل التكامل الخاصة بنا مجموعة واسعة من الموارد والرؤى الإعلامية.



تم إنشاؤه في 2024-01-28, اخر تحديث 2024-01-28
المؤلفون: أبيرامي فينا (1)

التعليقات