تصدير ونشر نماذج Axelera AI

تعقد Ultralytics شراكة مع Axelera AI لتمكين الاستدلال عالي الأداء والموفر للطاقة على أجهزة Edge AI. قم بتصدير ونشر نماذج Ultralytics YOLO مباشرة إلى Metis® AIPU باستخدام Voyager SDK.

النظام البيئي لنشر Axelera AI على الحافة لنموذج YOLO

توفر Axelera AI تسريعاً مخصصاً للأجهزة من أجل computer vision على الحافة، باستخدام بنية تدفق بيانات خاصة وin-memory computing لتقديم ما يصل إلى 856 TOPS مع استهلاك منخفض للطاقة.

اختيار الجهاز المناسب

تقدم Axelera AI عوامل شكل متنوعة لتناسب قيود النشر المختلفة. يساعدك الجدول أدناه في تحديد الأجهزة المثلى لنشر Ultralytics YOLO الخاص بك.

graph TD
    A[Start: Select Deployment Target] --> B{Device Type?}
    B -->|Edge Server / Workstation| C{Throughput Needs?}
    B -->|Embedded / Robotics| D{Space Constraints?}
    B -->|Standalone / R&D| E[Dev Kits & Systems]

    C -->|Max Density <br> 30+ Streams| F[**Metis PCIe x4**<br>856 TOPS]
    C -->|Standard PC <br> Low Profile| G[**Metis PCIe x1**<br>214 TOPS]

    D -->|Drones & Handhelds| H[**Metis M.2**<br>2280 M-Key]
    D -->|High Performance Embedded| I[**Metis M.2 MAX**<br>Extended Thermal]

    E -->|ARM-based All-in-One| J[**Metis Compute Board**<br>RK3588 + AIPU]
    E -->|Prototyping| K[**Arduino Portenta x8**<br>Integration Kit]

    click F "https://store.axelera.ai/"
    click G "https://store.axelera.ai/"
    click H "https://store.axelera.ai/"
    click J "https://store.axelera.ai/"

محفظة الأجهزة

تم تحسين مجموعة أجهزة Axelera لتشغيل Ultralytics YOLO26 والإصدارات القديمة بكفاءة عالية في عدد الإطارات في الثانية لكل واط.

بطاقات التسريع

تُمكن هذه البطاقات تسريع الذكاء الاصطناعي في الأجهزة المضيفة الموجودة، مما يسهل brownfield deployments.

المنتجعامل الشكلالحوسبةالأداء (INT8)التطبيق المستهدف
Metis PCIe x4PCIe Gen3 x164x Metis AIPUs856 TOPSvideo analytics عالية الكثافة، المدن الذكية
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPSأجهزة الكمبيوتر الصناعية، queue management في تجارة التجزئة
Metis M.2M.2 2280 M-Key1x Metis AIPU214 TOPSDrones، الروبوتات، الأجهزة الطبية المحمولة
Metis M.2 MAXM.2 22801x Metis AIPU214 TOPSالبيئات التي تتطلب إدارة حرارية متقدمة

الأنظمة المتكاملة

بالنسبة للحلول الجاهزة، تعقد Axelera شراكة مع الشركات المصنعة لتوفير أنظمة تم التحقق منها مسبقاً لـ Metis AIPU.

  • لوحة حوسبة Metis: جهاز حافة مستقل يجمع بين Metis AIPU وCPU من نوع Rockchip RK3588 ARM.
  • محطات العمل: أبراج المؤسسات من Dell (Precision 3460XE) وLenovo (ThinkStation P360 Ultra).
  • أجهزة الكمبيوتر الصناعية: أنظمة متينة من Advantech وAetina مصممة لـ manufacturing automation.

المهام المدعومة

المهام التالية مدعومة عبر نماذج YOLOv8 وYOLO11 وYOLO26.

المهمةYOLOv8YOLO11YOLO26
Object Detection
تقدير الوضع
Segmentation⚠️ Voyager SDK فقط
Oriented Bounding Boxes
Classification
ملاحظة

تجزئة YOLO26 غير مدعومة بعد من خلال أمر export في Ultralytics. يمكن للمستخدمين الذين يحتاجون إلى YOLO26-seg النشر عبر Voyager SDK باستخدام deploy.py، والذي يوفر حلاً بديلاً في مساحة المستخدم. ستتم إضافة دعم المترجم الأصلي في إصدار مستقبلي.

التثبيت

متطلبات المنصة

يتطلب التصدير إلى تنسيق Axelera ما يلي:

  • نظام التشغيل: Linux فقط (يوصى بـ Ubuntu 22.04/24.04)
  • الأجهزة: مسرع Axelera AI (أجهزة Metis)
  • Python: الإصدارات 3.10 و3.11 و3.12
  • اعتماد النظام: sudo apt install libgl1 (مطلوب بواسطة OpenCV، غير مضمن عبر pip)

تثبيت Ultralytics

pip install ultralytics

للحصول على تعليمات مفصلة، راجع دليل تثبيت Ultralytics. إذا واجهت صعوبات، فاستشر دليل المشكلات الشائعة.

تثبيت برنامج تشغيل Axelera

  1. أضف مفتاح مستودع Axelera:

    sudo sh -c "curl -fsSL https://software.axelera.ai/artifactory/api/security/keypair/axelera/public | gpg --dearmor -o /etc/apt/keyrings/axelera.gpg"
  2. أضف المستودع إلى apt:

    اختر المقتطف المناسب من أدناه ليتوافق مع نظام التشغيل المستخدم.

    # Ubuntu 22.04
    sudo sh -c "echo 'deb [signed-by=/etc/apt/keyrings/axelera.gpg] https://software.axelera.ai/artifactory/axelera-apt-source ubuntu22 main' > /etc/apt/sources.list.d/axelera.list"
    # Ubuntu 24.04
    sudo sh -c "echo 'deb [signed-by=/etc/apt/keyrings/axelera.gpg] https://software.axelera.ai/artifactory/axelera-apt-source ubuntu24 main' > /etc/apt/sources.list.d/axelera.list"
  3. قم بتثبيت SDK وتحميل برنامج التشغيل:

    sudo apt update
    sudo apt install -y metis-dkms=1.4.16
    sudo modprobe metis
التشغيل الأول يقوم بتنزيل SDK تلقائياً

أول yolo export format=axelera أو yolo predict باستخدام نموذج Axelera سيقوم تلقائياً بتنزيل وتثبيت حزم Axelera SDK. قد يستغرق هذا عدة دقائق اعتماداً على سرعة اتصالك، ولا يظهر أي تقدم أثناء التنزيل. للتثبيت يدوياً مسبقاً:

pip install axelera-devkit==1.6.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
pip install axelera-rt==1.6.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple

تصدير نماذج YOLO إلى Axelera

قم بتصدير نماذج YOLO المدربة الخاصة بك باستخدام أمر التصدير القياسي لـ Ultralytics.

تصدير إلى تنسيق Axelera
from ultralytics import YOLO

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

# Export to Axelera format
model.export(format="axelera")  # creates 'yolo26n_axelera_model' directory
قد يفشل التصدير الأول بعد تحديث الاعتمادية

يتطلب مترجم Axelera numpy<2. إذا كانت بيئتك تحتوي على numpy>=2، فسيقوم أول yolo export بخفض إصدارها تلقائياً ولكن التصدير سيفشل بسبب حالة الوحدة القديمة. ببساطة قم بتشغيل نفس أمر التصدير مرة أخرى — سينجح في المحاولة الثانية.

وسائط التصدير

المعاملالنوعالافتراضيالوصف
formatstr'axelera'التنسيق المستهدف لأجهزة Axelera Metis AIPU.
imgszint أو tuple640حجم الصورة لمدخلات النموذج.
batchint1يحدد حجم استدلال دفعة النموذج المصدر أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المصدر في وقت واحد في وضع predict.
int8boolTrueتمكين INT8 quantization لـ AIPU.
datastr'coco128.yaml'تكوين Dataset لمعايرة التكميم.
fractionfloat1.0جزء من مجموعة البيانات للمعايرة (يوصى بـ 100-400 صورة).
devicestrNoneجهاز التصدير: GPU (device=0) أو CPU (device=cpu).

للاطلاع على جميع خيارات التصدير، راجع وثائق وضع التصدير.

هيكل المخرجات

yolo26n_axelera_model/
├── yolo26n.axm              # Axelera model file
└── metadata.yaml            # Model metadata (classes, image size, etc.)

تشغيل الاستنتاج

قم بتحميل النموذج المصدر باستخدام Ultralytics API وقم بتشغيل الاستدلال، على غرار تحميل نماذج ONNX.

الاستدلال باستخدام نموذج Axelera
from ultralytics import YOLO

# Load the exported Axelera model
model = YOLO("yolo26n_axelera_model")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")

# Process results
for r in results:
    print(f"Detected {len(r.boxes)} objects")
    r.show()  # Display results

مقاييس Axelera AI

يعمل Metis AIPU على زيادة الإنتاجية مع تقليل استهلاك الطاقة.

النموذجMetis PCIe FPS (إطار في الثانية)Metis M.2 FPS (إطار في الثانية)
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

تستند المقاييس إلى بيانات Axelera AI. تعتمد سرعة الإطارات الفعلية على حجم النموذج، التجميع، ودقة المدخلات.

تطبيقات العالم الحقيقي

يُمكن Ultralytics YOLO على أجهزة Axelera حلول حوسبة حافة متقدمة:

سير العمل الموصى به

  1. قم بتدريب نموذجك باستخدام وضع التدريب من Ultralytics
  2. قم بالتصدير إلى تنسيق Axelera باستخدام model.export(format="axelera")
  3. تحقق من الدقة باستخدام yolo val للتأكد من الحد الأدنى من فقدان التكميم
  4. تنبأ باستخدام yolo predict للتحقق النوعي
  5. انشر إلى خط أنابيب عالي الأداء من طرف إلى طرف بدون اعتمادية PyTorch — راجع أمثلة YOLO على Voyager SDK لخطوط أنابيب Python القابلة للتركيب باستخدام axelera-rt

فحص صحة الجهاز

تحقق من أن جهاز Axelera الخاص بك يعمل بشكل صحيح:

# if axdevice cannot be found, please run at least one inference (see above) to ensure the required packages are installed
axdevice

للحصول على تشخيصات مفصلة، راجع وثائق AxDevice.

أقصى أداء

يستخدم هذا التكامل تهيئة أحادية النواة لضمان التوافق. للإنتاج الذي يتطلب أقصى قدر من الإنتاجية، يوفر Axelera Voyager SDK ما يلي:

  • استخدام متعدد النوى (رباعي النوى Metis AIPU)
  • خطوط أنابيب استنتاج متدفقة (Streaming inference pipelines)
  • الاستنتاج المبلط (Tiled inferencing) للكاميرات ذات الدقة الأعلى

راجع model-zoo لمعرفة معايير الأداء FPS أو تواصل مع Axelera للحصول على دعم الإنتاج.

مشكلات معروفة

القيود المعروفة
  • قيود طاقة M.2: قد تواجه النماذج الكبيرة أو الكبيرة جداً أخطاء وقت التشغيل على مسرعات M.2 بسبب قيود إمداد الطاقة.

للحصول على الدعم، قم بزيارة مجتمع Axelera.

الأسئلة الشائعة

ما هي إصدارات YOLO المدعومة على Axelera؟

يدعم Voyager SDK تصدير نماذج YOLOv8 وYOLO11 وYOLO26. راجع المهام المدعومة لمعرفة توافر المهام لكل نموذج.

هل يمكنني نشر نماذج مدربة مخصصة؟

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

كيف يؤثر تكميم INT8 على الدقة؟

يقوم Voyager SDK الخاص بـ Axelera بتكميم النماذج تلقائياً لبنية AIPU ذات الدقة المختلطة. بالنسبة لمعظم مهام اكتشاف الكائنات، تفوق مكاسب الأداء (معدل FPS أعلى، استهلاك طاقة أقل) بشكل كبير التأثير البسيط على mAP. يستغرق التكميم من ثوانٍ إلى عدة ساعات اعتماداً على حجم النموذج. قم بتشغيل yolo val بعد التصدير للتحقق من الدقة.

كم عدد صور المعايرة التي يجب أن أستخدمها؟

نوصي بـ 100 إلى 400 صورة. لا توفر الزيادة عن 400 صورة أي فائدة إضافية بل تزيد من وقت التكميم. جرب استخدام 100 و200 و400 صورة لإيجاد التوازن الأمثل.

أين يمكنني العثور على Voyager SDK؟

تتوفر أدوات SDK والمحركات وأدوات المترجم عبر بوابة مطوري Axelera.

التعليقات