Meet YOLO26: next-gen vision AI.

Link to this sectionتصدير CoreML لنماذج YOLO26#

يتطلب نشر نماذج الرؤية الحاسوبية على أجهزة Apple مثل أجهزة iPhone وMac تنسيقاً يضمن أداءً سلساً.



Watch: How to Export Ultralytics YOLO26 to CoreML for 2x Fast Inference on Apple Devices 🚀

يسمح لك تنسيق تصدير CoreML بتحسين نماذج Ultralytics YOLO26 الخاصة بك لـ كشف الأشياء بكفاءة في تطبيقات iOS وmacOS. في هذا الدليل، سنرشدك خلال خطوات تحويل نماذجك إلى تنسيق CoreML، مما يسهل على نماذجك العمل بشكل جيد على أجهزة Apple.

Link to this sectionCoreML#

Apple CoreML deployment pipeline

CoreML هو إطار عمل تعلم الآلة الأساسي من Apple الذي يعتمد على Accelerate وBNNS وMetal Performance Shaders. يوفر تنسيق نموذج تعلم آلة يتكامل بسلاسة في تطبيقات iOS ويدعم مهام مثل تحليل الصور، ومعالجة اللغات الطبيعية، وتحويل الصوت إلى نص، وتحليل الصوت.

يمكن للتطبيقات الاستفادة من Core ML دون الحاجة إلى اتصال بالشبكة أو إجراء استدعاءات API لأن إطار عمل Core ML يعمل باستخدام الحوسبة على الجهاز نفسه. وهذا يعني أنه يمكن تنفيذ استنتاج النموذج محلياً على جهاز المستخدم.

Link to this sectionالميزات الرئيسية لنماذج CoreML#

يوفر إطار عمل CoreML من Apple ميزات قوية لتعلم الآلة على الجهاز. إليك الميزات الرئيسية التي تجعل من CoreML أداة قوية للمطورين:

  • دعم شامل للنماذج: يقوم بتحويل وتشغيل النماذج من أطر عمل شائعة مثل TensorFlow، وPyTorch، وscikit-learn، وXGBoost، وLibSVM.

CoreML supported deep learning frameworks

  • تعلم الآلة على الجهاز: يضمن خصوصية البيانات والمعالجة السريعة من خلال تنفيذ النماذج مباشرة على جهاز المستخدم، مما يلغي الحاجة إلى الاتصال بالشبكة.

  • الأداء والتحسين: يستخدم وحدة المعالجة المركزية (CPU)، ووحدة معالجة الرسوميات (GPU)، والمحرك العصبي (Neural Engine) للجهاز للحصول على أداء مثالي مع أقل استهلاك للطاقة والذاكرة. يوفر أدوات لضغط النماذج وتحسينها مع الحفاظ على الدقة.

  • سهولة التكامل: يوفر تنسيقاً موحداً لأنواع النماذج المختلفة وAPI سهل الاستخدام للتكامل السلس في التطبيقات. يدعم المهام الخاصة بالمجال من خلال أطر عمل مثل Vision وNatural Language.

  • ميزات متقدمة: يتضمن قدرات تدريب على الجهاز لتجارب مخصصة، وتنبؤات غير متزامنة لتجارب تعلم آلة تفاعلية، وأدوات لفحص النماذج والتحقق من صحتها.

Link to this sectionخيارات نشر CoreML#

قبل أن نلقي نظرة على كود تصدير نماذج YOLO26 إلى تنسيق CoreML، دعنا نفهم أين تُستخدم نماذج CoreML عادةً.

يوفر CoreML خيارات نشر متنوعة لنماذج تعلم الآلة، بما في ذلك:

  • النشر على الجهاز: تدمج هذه الطريقة نماذج CoreML مباشرة في تطبيق iOS الخاص بك. إنها مفيدة بشكل خاص لضمان زمن وصول منخفض، وخصوصية محسنة (نظراً لأن البيانات تظل على الجهاز)، ووظائف دون اتصال بالإنترنت. ومع ذلك، قد يكون هذا النهج محدوداً بقدرات أجهزة الجهاز، خاصة بالنسبة للنماذج الأكبر والأكثر تعقيداً، ويمكن تنفيذه بالطريقتين التاليتين:

    • النماذج المضمنة: يتم تضمين هذه النماذج في حزمة التطبيق ويمكن الوصول إليها فوراً. وهي مثالية للنماذج الصغيرة التي لا تتطلب تحديثات متكررة.

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

  • النشر المستند إلى السحابة: تتم استضافة نماذج CoreML على خوادم ويتم الوصول إليها بواسطة تطبيق iOS من خلال طلبات API. هذا الخيار القابل للتوسع والمرن يتيح تحديثات سهلة للنماذج دون الحاجة إلى مراجعة التطبيقات. إنه مثالي للنماذج المعقدة أو التطبيقات واسعة النطاق التي تتطلب تحديثات منتظمة. ومع ذلك، فإنه يتطلب اتصالاً بالإنترنت وقد يطرح مشكلات تتعلق بزمن الوصول والأمان.

Link to this sectionتصدير نماذج YOLO26 إلى CoreML#

يُمكّن تصدير YOLO26 إلى CoreML من تحقيق أداء تعلم آلة محسّن على الجهاز ضمن نظام Apple البيئي، مما يوفر مزايا من حيث الكفاءة والأمان والتكامل السلس مع منصات iOS وmacOS وwatchOS وtvOS.

Link to this sectionالتثبيت#

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

التثبيت
# Install the required package for YOLO26
pip install ultralytics

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

Link to this sectionالاستخدام#

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

يدعم تنسيق CoreML أوضاع التصدير، والتنبؤ، والتحقق. يتم تشغيل الاستنتاج والتحقق باستخدام CoreML على نظام macOS فقط. قم بتصدير نموذجك، ثم قم بتحميل النموذج المُصدّر لتشغيل الاستنتاج أو التحقق من دقته.

التصدير
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to CoreML format
model.export(format="coreml")  # creates 'yolo26n.mlpackage'
التنبؤ
from ultralytics import YOLO

# Load the exported CoreML model
model = YOLO("yolo26n.mlpackage")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
التحقق
from ultralytics import YOLO

# Load the exported CoreML model
model = YOLO("yolo26n.mlpackage")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionوسائط التصدير#

الوسيط (Argument)النوع (Type)الافتراضي (Default)الوصف (Description)
formatstr'coreml'التنسيق المستهدف للنموذج المُصدّر، والذي يحدد التوافق مع بيئات النشر المختلفة.
imgszint أو tuple640Desired image size for the model input. Can be an integer for square images or a tuple (height, width) for specific dimensions.
dynamicboolFalseيسمح بأحجام إدخال ديناميكية، مما يعزز المرونة في التعامل مع أبعاد الصور المتغيرة.
halfboolFalseيُمكّن تكميم FP16 (الدقة النصفية)، مما يقلل من حجم النموذج وربما يسرع الاستنتاج على الأجهزة المدعومة.
int8boolFalseيُفعّل تكميم INT8، مما يزيد من ضغط النموذج وتسريع الاستنتاج مع فقدان أدنى في الدقة، بشكل أساسي للأجهزة الطرفية.
nmsboolFalseيضيف خاصية كبت غير الحد الأقصى (NMS)، وهو أمر ضروري لمعالجة ما بعد الكشف بدقة وكفاءة.
batchint1يحدد حجم استنتاج الدفعة للنموذج المُصدّر أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المُصدّر في وقت واحد في وضع التنبؤ predict.
devicestrNoneيحدد الجهاز للتصدير: وحدة معالجة الرسوميات (device=0)، وحدة المعالجة المركزية (device=cpu)، أو MPS لمعالجات Apple silicon (device=mps).
نصيحة

يرجى التأكد من استخدام جهاز macOS أو x86 Linux عند التصدير إلى CoreML.

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

Link to this sectionنشر نماذج YOLO26 CoreML المُصدّرة#

بعد تصدير نماذج Ultralytics YOLO26 بنجاح إلى CoreML، تصبح المرحلة الحاسمة التالية هي نشر هذه النماذج بفعالية. للحصول على إرشادات مفصلة حول نشر نماذج CoreML في بيئات مختلفة، تحقق من هذه الموارد:

  • CoreML Tools: يتضمن هذا الدليل تعليمات وأمثلة لتحويل النماذج من TensorFlow وPyTorch ومكتبات أخرى إلى Core ML.

  • ML and Vision: مجموعة من مقاطع الفيديو الشاملة التي تغطي جوانب مختلفة من استخدام وتنفيذ نماذج CoreML.

  • دمج نموذج Core ML في تطبيقك: دليل شامل حول دمج نموذج CoreML في تطبيق iOS، يوضح الخطوات بدءاً من إعداد النموذج وصولاً إلى تنفيذه في التطبيق لمختلف الوظائف.

Link to this sectionملخص#

في هذا الدليل، استعرضنا كيفية تصدير نماذج Ultralytics YOLO26 إلى تنسيق CoreML. باتباع الخطوات الموضحة في هذا الدليل، يمكنك ضمان أقصى قدر من التوافق والأداء عند تصدير نماذج YOLO26 إلى CoreML.

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

أيضاً، إذا كنت ترغب في معرفة المزيد عن عمليات تكامل Ultralytics YOLO26 الأخرى، فقم بزيارة صفحة دليل التكامل الخاصة بنا. ستجد الكثير من الموارد والرؤى القيمة هناك.

Link to this sectionالأسئلة الشائعة (FAQ)#

Link to this sectionكيف يمكنني تصدير نماذج YOLO26 إلى تنسيق CoreML؟#

لتصدير نماذج Ultralytics YOLO26 الخاصة بك إلى تنسيق CoreML، ستحتاج أولاً إلى التأكد من تثبيت حزمة ultralytics. يمكنك تثبيتها باستخدام:

التثبيت
pip install ultralytics

بعد ذلك، يمكنك تصدير النموذج باستخدام أوامر Python أو CLI التالية:

الاستخدام
from ultralytics import YOLO

model = YOLO("yolo26n.pt")
model.export(format="coreml")

لمزيد من التفاصيل، راجع قسم تصدير نماذج YOLO26 إلى CoreML من توثيقنا.

Link to this sectionما هي فوائد استخدام CoreML لنشر نماذج YOLO26؟#

يوفر CoreML العديد من المزايا لنشر نماذج Ultralytics YOLO26 على أجهزة Apple:

  • المعالجة على الجهاز: تتيح استنتاج النموذج محلياً على الأجهزة، مما يضمن خصوصية البيانات ويقلل من زمن الوصول.
  • تحسين الأداء: يستفيد من الإمكانات الكاملة للمعالج المركزي (CPU)، ومعالج الرسوميات (GPU)، والمحرك العصبي للجهاز، مما يحسن السرعة والكفاءة.
  • سهولة التكامل: يوفر تجربة تكامل سلسة مع أنظمة Apple البيئية، بما في ذلك iOS وmacOS وwatchOS وtvOS.
  • تعدد الاستخدامات: يدعم مجموعة واسعة من مهام تعلم الآلة مثل تحليل الصور، ومعالجة الصوت، ومعالجة اللغات الطبيعية باستخدام إطار عمل CoreML.

لمزيد من التفاصيل حول دمج نموذج CoreML الخاص بك في تطبيق iOS، تحقق من الدليل حول دمج نموذج Core ML في تطبيقك.

Link to this sectionما هي خيارات النشر لنماذج YOLO26 المُصدّرة إلى CoreML؟#

بمجرد تصدير نموذج YOLO26 الخاص بك إلى تنسيق CoreML، لديك خيارات نشر متعددة:

  1. النشر على الجهاز: دمج نماذج CoreML مباشرة في تطبيقك لتعزيز الخصوصية والوظائف دون اتصال بالإنترنت. يمكن القيام بذلك كـ:

    • النماذج المضمنة: يتم تضمينها في حزمة التطبيق ويمكن الوصول إليها فوراً.
    • النماذج التي يتم تنزيلها: يتم جلبها من خادم حسب الحاجة، مما يجعل حجم حزمة التطبيق أصغر.
  2. النشر المستند إلى السحابة: استضافة نماذج CoreML على خوادم والوصول إليها عبر طلبات API. يدعم هذا النهج تحديثات أسهل ويمكنه التعامل مع نماذج أكثر تعقيداً.

للحصول على إرشادات مفصلة حول نشر نماذج CoreML، راجع خيارات نشر CoreML.

Link to this sectionكيف يضمن CoreML أداءً مُحسّناً لنماذج YOLO26؟#

يضمن CoreML أداءً مُحسّناً لنماذج Ultralytics YOLO26 من خلال استخدام تقنيات تحسين متنوعة:

  • تسريع العتاد: يستخدم وحدة المعالجة المركزية، ووحدة معالجة الرسوميات، والمحرك العصبي للجهاز للحوسبة الفعالة.
  • ضغط النموذج: يوفر أدوات لضغط النماذج لتقليل بصمتها دون المساس بالدقة.
  • الاستنتاج التكيفي: يعدّل الاستنتاج بناءً على قدرات الجهاز للحفاظ على توازن بين السرعة والأداء.

لمزيد من المعلومات حول تحسين الأداء، قم بزيارة التوثيق الرسمي لـ CoreML.

Link to this sectionهل يمكنني تشغيل الاستنتاج مباشرة باستخدام نموذج CoreML المُصدّر؟#

نعم، يمكنك تشغيل الاستنتاج مباشرة باستخدام نموذج CoreML المُصدّر. فيما يلي الأوامر لـ Python وCLI:

تشغيل الاستنتاج
from ultralytics import YOLO

coreml_model = YOLO("yolo26n.mlpackage")
results = coreml_model("https://ultralytics.com/images/bus.jpg")

لمزيد من المعلومات، راجع قسم الاستخدام من دليل تصدير CoreML.

التعليقات