تعرف على كيفية تصدير نماذج Ultralytics YOLO باستخدام تكامل TensorRT للحصول على أداء أسرع وأكثر كفاءة للذكاء الاصطناعي على وحدات معالجة الرسومات NVIDIA للتطبيقات في الوقت الفعلي.

تعرف على كيفية تصدير نماذج Ultralytics YOLO باستخدام تكامل TensorRT للحصول على أداء أسرع وأكثر كفاءة للذكاء الاصطناعي على وحدات معالجة الرسومات NVIDIA للتطبيقات في الوقت الفعلي.
تخيل سيارة ذاتية القيادة تتحرك في شارع مزدحم ولا تملك سوى أجزاء من الثانية لاكتشاف أحد المشاة وهو يخطو من على الرصيف. في الوقت نفسه، قد تحتاج إلى التعرف على إشارة توقف مخفية جزئيًا بفعل شجرة أو الرد بسرعة على مركبة قريبة تنحرف إلى مسارها. في مثل هذه الحالات، تعتبر السرعة والاستجابات في الوقت الفعلي أمرًا بالغ الأهمية.
هذا هو المكان الذي يلعب فيه الذكاء الاصطناعي (AI)، وتحديدًا رؤية الكمبيوتر، وهو فرع من فروع الذكاء الاصطناعي يساعد الآلات على تفسير البيانات المرئية، دورًا رئيسيًا. لكي تعمل حلول رؤية الكمبيوتر بشكل موثوق في البيئات الواقعية، غالبًا ما تحتاج إلى معالجة المعلومات بسرعة، والتعامل مع مهام متعددة في وقت واحد، واستخدام الذاكرة بكفاءة.
إحدى طرق تحقيق ذلك هي من خلال تسريع الأجهزة، باستخدام أجهزة متخصصة مثل وحدات معالجة الرسومات (GPUs) لتشغيل النماذج بشكل أسرع. تُعرف وحدات معالجة الرسومات NVIDIA بشكل خاص بهذه المهام، وذلك بفضل قدرتها على توفير زمن انتقال منخفض وإنتاجية عالية.
مع ذلك، فإن تشغيل نموذج على وحدة معالجة الرسوميات (GPU) كما هو لا يضمن دائمًا الأداء الأمثل. تتطلب نماذج رؤية الذكاء الاصطناعي عادةً تحسينًا للاستفادة الكاملة من قدرات الأجهزة. لتحقيق الأداء الكامل مع أجهزة معينة، نحتاج إلى تجميع النموذج لاستخدام المجموعة المحددة من التعليمات الخاصة بالجهاز.
على سبيل المثال، TensorRT هو تنسيق تصدير ومكتبة تحسين تم تطويرها بواسطة NVIDIA لتحسين الأداء على الأجهزة المتطورة. يستخدم تقنيات متقدمة لتقليل وقت الاستدلال بشكل كبير مع الحفاظ على الدقة.
في هذه المقالة، سنستكشف تكامل TensorRT المدعوم من Ultralytics وسنشرح كيفية تصدير نموذج YOLO11 الخاص بك لنشره بشكل أسرع وأكثر كفاءة على أجهزة NVIDIA. هيا بنا نبدأ!
TensorRT عبارة عن مجموعة أدوات طورتها NVIDIA للمساعدة في تشغيل نماذج الذكاء الاصطناعي بشكل أسرع وأكثر كفاءة على وحدات معالجة الرسومات NVIDIA. إنه مصمم للتطبيقات الواقعية حيث السرعة والأداء مهمان حقًا، مثل السيارات ذاتية القيادة ومراقبة الجودة في التصنيع والمستحضرات الصيدلانية.
يتضمن TensorRT أدوات مثل المحولات البرمجية ومحسنات النماذج التي يمكن أن تعمل خلف الكواليس للتأكد من تشغيل النماذج الخاصة بك بزمن انتقال منخفض ويمكنها التعامل مع إنتاجية أعلى.
يعمل تكامل TensorRT المدعوم من Ultralytics عن طريق تحسين نموذج YOLO الخاص بك ليعمل بشكل أكثر كفاءة على وحدات معالجة الرسومات باستخدام طرق مثل تقليل الدقة. يشير هذا إلى استخدام تنسيقات ذات عدد بتات أقل، مثل الفاصلة العائمة 16 بت (FP16) أو عدد صحيح 8 بت (INT8)، لتمثيل بيانات النموذج، مما يقلل من استخدام الذاكرة ويسرع الحساب مع الحد الأدنى من التأثير على الدقة.
أيضًا، يتم دمج طبقات الشبكة العصبية المتوافقة في نماذج TensorRT المحسّنة لتقليل استخدام الذاكرة، مما يؤدي إلى استدلال أسرع وأكثر كفاءة.
قبل أن نناقش كيف يمكنك تصدير YOLO11 باستخدام تكامل TensorRT، دعنا نلقي نظرة على بعض الميزات الرئيسية لتنسيق نموذج TensorRT:
يُعد تصدير نماذج Ultralytics YOLO مثل Ultralytics YOLO11 إلى تنسيق نموذج TensorRT أمرًا سهلاً. دعنا نمر بالخطوات المتضمنة.
للبدء، يمكنك تثبيت حزمة Ultralytics Python باستخدام مدير الحزم مثل ‘pip.’ يمكن القيام بذلك عن طريق تشغيل الأمر “pip install ultralytics” في موجه الأوامر أو الجهاز الطرفي.
بعد تثبيت حزمة Ultralytics Python بنجاح، يمكنك تدريب واختبار وضبط وتصدير ونشر النماذج لمهام رؤية الكمبيوتر المختلفة، مثل الكشف عن الكائنات والتصنيف وتجزئة المثيلات. أثناء تثبيت الحزمة، إذا واجهت أي صعوبات، يمكنك الرجوع إلى دليل المشكلات الشائعة للحصول على الحلول والنصائح.
في الخطوة التالية، ستحتاج إلى جهاز NVIDIA. استخدم مقتطف التعليمات البرمجية أدناه لتحميل وتصدير YOLOv11 إلى تنسيق نموذج TensorRT. يقوم بتحميل نسخة nano مُدرَّبة مسبقًا من نموذج YOLO11 (yolo11n.pt) وتصديرها كملف محرك TensorRT (yolo11n.engine)، مما يجعلها جاهزة للنشر عبر أجهزة NVIDIA.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="engine")
بعد تحويل النموذج الخاص بك إلى تنسيق TensorRT، يمكنك نشره لمختلف التطبيقات.
يوضح المثال أدناه كيفية تحميل نموذج YOLO11 المصدر (yolo11n.engine) وتشغيل استنتاج باستخدام هذا النموذج. يتضمن الاستنتاج استخدام النموذج المدرب لعمل تنبؤات حول بيانات جديدة. في هذه الحالة، سنستخدم صورة إدخال لكلب لاختبار النموذج.
tensorrt_model = YOLO("yolo11n.engine")
results = tensorrt_model("https://images.pexels.com/photos/1254140/pexels-photo-1254140.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)
عند تشغيل هذا الكود، سيتم حفظ صورة الإخراج التالية في المجلد runs/detect/predict.
تدعم حزمة Ultralytics Python عمليات تكامل متنوعة تسمح بتصدير نماذج YOLO إلى تنسيقات مختلفة مثل TorchScript و CoreML و ONNX و TensorRT. إذن، متى يجب عليك اختيار استخدام تكامل TensorRT؟
فيما يلي بعض العوامل التي تميز تنسيق نموذج TensorRT عن خيارات التكامل الأخرى للتصدير:
يمكن نشر نماذج Ultralytics YOLO المصدرة إلى تنسيق TensorRT عبر مجموعة واسعة من السيناريوهات الواقعية. هذه النماذج المحسّنة مفيدة بشكل خاص عندما يكون الأداء السريع والفعال للذكاء الاصطناعي أمرًا أساسيًا. دعنا نستكشف بعض الأمثلة المثيرة للاهتمام حول كيفية استخدامها.
لا تزال مجموعة واسعة من المهام في متاجر البيع بالتجزئة، مثل مسح الرموز الشريطية أو وزن المنتجات أو تغليف العناصر، تتم يدويًا بواسطة الموظفين. ومع ذلك، فإن الاعتماد فقط على الموظفين يمكن أن يبطئ العمليات ويؤدي إلى إحباط العملاء، خاصة عند الخروج. فالصفوف الطويلة غير مريحة لكل من المتسوقين وأصحاب المتاجر. تعتبر عدادات الدفع الذاتي الذكية حلاً رائعًا لهذه المشكلة.
تستخدم هذه العدادات رؤية الحاسوب ووحدات معالجة الرسومات لتسريع العملية، مما يساعد على تقليل أوقات الانتظار. تمكن رؤية الحاسوب هذه الأنظمة من رؤية وفهم بيئتها من خلال مهام مثل الكشف عن الكائنات. يمكن للنماذج المتقدمة مثل YOLO11، عند تحسينها بأدوات مثل TensorRT، أن تعمل بشكل أسرع بكثير على أجهزة GPU.
تعتبر هذه النماذج المصدرة مناسبة تمامًا لإعدادات البيع بالتجزئة الذكية باستخدام أجهزة أجهزة مدمجة ولكنها قوية مثل NVIDIA Jetson Nano، المصممة خصيصًا لتطبيقات الذكاء الاصطناعي المتطورة.
يمكن تدريب نموذج رؤية حاسوبية مثل YOLO11 بشكل مخصص لاكتشاف المنتجات المعيبة في الصناعة التحويلية. بمجرد التدريب، يمكن تصدير النموذج إلى تنسيق TensorRT للنشر في المرافق المجهزة بأنظمة ذكاء اصطناعي عالية الأداء.
أثناء تحرك المنتجات على طول سيور النقل، تلتقط الكاميرات الصور، ويقوم نموذج YOLO11، الذي يعمل بتنسيق TensorRT، بتحليلها في الوقت الفعلي لاكتشاف العيوب. يتيح هذا الإعداد للشركات اكتشاف المشكلات بسرعة ودقة، مما يقلل الأخطاء ويحسن الكفاءة.
وبالمثل، تستخدم صناعات مثل المستحضرات الصيدلانية هذه الأنواع من الأنظمة لتحديد العيوب في التعبئة الطبية. في الواقع، من المتوقع أن ينمو السوق العالمي لأنظمة الكشف الذكي عن العيوب إلى 5 مليارات دولار بحلول عام 2026.
في حين أن تكامل TensorRT يجلب العديد من المزايا، مثل سرعات الاستدلال الأسرع وتقليل زمن الوصول، إليك بعض القيود التي يجب وضعها في الاعتبار:
إن تصدير نماذج Ultralytics YOLO إلى تنسيق TensorRT يجعلها تعمل بشكل أسرع وأكثر كفاءة، مما يجعلها مثالية للمهام في الوقت الفعلي مثل اكتشاف العيوب في المصانع، وتشغيل أنظمة الدفع الذكية، أو مراقبة المناطق الحضرية المزدحمة.
يساعد هذا التحسين النماذج على الأداء بشكل أفضل على وحدات معالجة الرسومات NVIDIA عن طريق تسريع التنبؤات وتقليل استخدام الذاكرة والطاقة. على الرغم من وجود بعض القيود، إلا أن تعزيز الأداء يجعل تكامل TensorRT خيارًا رائعًا لأي شخص يقوم ببناء أنظمة رؤية كمبيوتر عالية السرعة على أجهزة NVIDIA.
هل تريد معرفة المزيد عن الذكاء الاصطناعي؟ استكشف مستودع GitHub الخاص بنا، وتواصل مع مجتمعنا، وتحقق من خيارات الترخيص الخاصة بنا لبدء مشروع الرؤية الحاسوبية الخاص بك. تعرف على المزيد حول الابتكارات مثل الذكاء الاصطناعي في التصنيع و الرؤية الحاسوبية في صناعة الخدمات اللوجستية على صفحات الحلول الخاصة بنا.