Ultralytics YOLO27:

Axelera AI ile Dışa Aktarma ve Dağıtım#

Ultralytics, yüksek performanslı ve enerji tasarruflu çıkarımı Edge AI cihazlarında mümkün kılmak için Axelera AI ile iş ortaklığı yapar. Ultralytics YOLO models modellerini Voyager SDK kullanarak doğrudan Metis® AIPU'ya dışa aktar ve dağıt.

YOLO için Axelera AI uç dağıtım ekosistemi

Axelera AI, özel bir veri akışı mimarisi ve bellek içi hesaplama kullanarak düşük güç tüketimiyle 856 TOPS değerine kadar ulaşan, uçta bilgisayarlı görü için özel donanım hızlandırması sağlar.

Doğru Donanımı Seçme#

Axelera AI, farklı dağıtım kısıtlarına uygun çeşitli form faktörleri sunar. Aşağıdaki grafik, Ultralytics YOLO dağıtımın için en uygun donanımı belirlemene yardımcı olur.

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

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

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

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

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

    classDef start fill:#4CAF50,color:#fff
    classDef proc fill:#2196F3,color:#fff
    classDef decide fill:#FF9800,color:#fff
    classDef out fill:#9C27B0,color:#fff

Donanım Portföyü#

Axelera donanım ürün ailesi, Ultralytics YOLO26 ve eski sürümleri watt başına yüksek FPS verimliliğiyle çalıştıracak şekilde optimize edilmiştir.

Hızlandırıcı Kartları#

Bu kartlar, mevcut ana cihazlarda AI hızlandırmasını etkinleştirerek brownfield dağıtımlarını kolaylaştırır.

ÜrünForm FaktörüHesaplamaPerformans (INT8)Hedef Uygulama
Metis PCIe x4PCIe Gen3 x164x Metis AIPU856 TOPSYüksek yoğunluklu video analitiği, akıllı şehirler
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPSEndüstriyel PC'ler, perakende kuyruk yönetimi
Metis M.2M.2 2280 M-Key1x Metis AIPU214 TOPSDronlar, robotik, taşınabilir tıbbi cihazlar
Metis M.2 MAXM.2 22801x Metis AIPU214 TOPSGelişmiş termal yönetim gerektiren ortamlar

Entegre Sistemler#

Anahtar teslim çözümler için Axelera, Metis AIPU için önceden doğrulanmış sistemler sunmak üzere üreticilerle iş birliği yapar.

  • Metis Compute Board: Metis AIPU'yu Rockchip RK3588 ARM CPU ile birleştiren bağımsız bir uç cihaz.
  • İş istasyonları: Dell (Precision 3460XE) ve Lenovo (ThinkStation P360 Ultra) tarafından sunulan kurumsal kule tipi bilgisayarlar.
  • Endüstriyel PC'ler: Üretim otomasyonu için tasarlanmış, Advantech ve Aetina tarafından sunulan dayanıklı sistemler.

Desteklenen Görevler#

Derinlik tahmini desteklenmiyor: derinlik kafası, Metis AIPU derleyicisinin alt seviyeye çeviremediği operatörler üretir. YOLO26 örnek bölütleme de Ultralytics export tarafından desteklenmez, ancak aşağıda açıklandığı gibi Voyager SDK aracılığıyla yine de dağıtılabilir. YOLO26 anlamsal bölütleme desteklenmektedir.

GörevYOLOv8YOLO11YOLO26
Algılama
Segmentasyon
Semantik
Derinlik
Sınıflandırma
Poz
OBB
Not

YOLO26 örnek bölütleme, Ultralytics export komutu aracılığıyla henüz desteklenmemektedir. yolo26-seg ihtiyacı olan kullanıcılar, kullanıcı alanı geçici çözümü sağlayan deploy.py kullanarak Voyager SDK üzerinden dağıtım yapabilir. Yerel derleyici desteği gelecekteki bir sürüme eklenecektir.

Kurulum#

Platform Gereksinimleri

Axelera formatına dışa aktarma şunları gerektirir:

  • İşletim Sistemi: Yalnızca Linux (Ubuntu 22.04/24.04 önerilir)
  • Donanım: Axelera AI hızlandırıcısı (Metis cihazları)
  • Python: 3.10, 3.11, 3.12 ve 3.13 sürümleri
  • PyTorch: torch>=2.8,<2.13
  • Voyager SDK: 1.8.0; dışa aktarma bu geliştirme kiti sürümünü kurar ve çıkarım bu çalışma zamanı sürümünü kurar
  • Metis çekirdek sürücüsü: metis-dkms 1.6.2 veya daha yenisi, pip paketinden ayrı olarak kurulur
  • Sistem bağımlılığı: sudo apt install libgl1 (OpenCV tarafından gereklidir, pip aracılığıyla dahil edilmez)

Ultralytics Kurulumu#

pip install ultralytics

Ayrıntılı talimatlar için Ultralytics Kurulum kılavuzumuza bak. Sorunlarla karşılaşırsan Yaygın Sorunlar kılavuzumuza başvur.

Axelera Sürücü Kurulumu#

  1. Axelera depo anahtarını ekle:

    sudo sh -c "curl -fsSL https://software.axelera.ai/artifactory/api/security/keypair/axelera/public | gpg --dearmor -o /etc/apt/keyrings/axelera.gpg"
  2. Depoyu apt'ye ekle:

    Kullanılan işletim sistemiyle eşleşen uygun parçacığı aşağıdan seç.

    # 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. Sürücüyü kur ve yükle. SDK 1.8, metis-dkms 1.6.2 veya daha yenisini gerektirir, bu nedenle en yenisi burada kurulur:

    sudo apt update
    sudo apt install -y metis-dkms
    sudo modprobe metis
Çekirdek sürücüsünü SDK ile eşzamanlı tut

Çekirdek sürücüsü Python SDK paketlerinden ayrı olarak kurulur, bu nedenle SDK'yı güncelledikten sonra sürücüyü de o SDK'nın minimum sürümüne (SDK 1.8 için 1.6.2) yükseltmelisin. Kurulum sırasında hiçbir şey bunu kontrol etmez ve minimum sürümün altındaki bir sürücü cihazı kullanılamaz durumda bırakır: axdevice, gereken sürümü bildirir ve cihazı açamaz.

[libaxldev.c:285] Found kernel driver version 1.5.5, but at least version 1.6.2 is required. Please update the kernel driver
ERROR: AXR_ERROR_CONNECTION_ERROR: Failed to open device metis-0:4:0

Ayrıca bkz. Step 3: Install the Metis kernel driver. Ubuntu üzerinde zaten daha eski bir SDK çalıştırıyorsan, sürücüyü güncelle ve çekirdek modülünü yeniden yükle (yeniden başlatma gerekmez):

sudo apt update
sudo apt install -y metis-dkms
sudo rmmod metis
sudo modprobe metis

Ardından cihazın algılandığını doğrulamak için axdevice komutunu yeniden çalıştır.

İlk çalıştırmada SDK otomatik olarak indirilir

Axelera modeliyle gerçekleştirilen ilk yolo export format=axelera veya yolo predict çalıştırması, Axelera SDK paketlerini otomatik olarak indirip yükler. Bağlantı hızına bağlı olarak bu işlem birkaç dakika sürebilir ve indirme sırasında ilerleme gösterilmez. Önceden manuel olarak yüklemek için:

pip install axelera-devkit==1.8.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
pip install axelera-rt==1.8.0 --extra-index-url https://software.axelera.ai/artifactory/api/pypi/axelera-pypi/simple
Bir SDK yükseltmesi, mevcut dışa aktarılan modelleri geçersiz kılar

SDK 1.8, derlenmiş .axm model biçimi sürümünü yükseltir, bu nedenle daha eski bir SDK tarafından üretilen _axelera_model dizinleri yükleme sırasında reddedilir. Yükseltmeden sonra her modeli yeniden dışa aktar:

Error: Unsupported model version: 4.0, expected at least 5.0
Please re-deploy or re-download the model.

YOLO Modellerini Axelera'ya Dışa Aktarma#

Axelera formatı Dışa Aktarma, Tahmin ve Doğrulama modlarını destekler. Çıkarım ve doğrulama, Axelera Metis AIPU donanımında çalışır. Modelini dışa aktar, ardından çıkarım çalıştırmak veya doğruluğunu doğrulamak için dışa aktarılan modeli yükle.

Dışa aktarma
from ultralytics import YOLO

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

# Export the model to Axelera format
model.export(format="axelera")  # creates 'yolo26n_axelera_model'
Tahmin
from ultralytics import YOLO

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

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Doğrula
from ultralytics import YOLO

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

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

Dışa Aktarma Bağımsız Değişkenleri#

Bağımsız değişkenTürVarsayılanAçıklama
formatstr'axelera'Axelera Metis AIPU donanımı için hedef format.
imgszint veya tuple640Model girdisi için görüntü boyutu.
batch*int1Dışa aktarma modelinin toplu çıkarım boyutunu veya dışa aktarılan modelin predict modunda eşzamanlı olarak işleyeceği maksimum görüntü sayısını belirtir.
quantizeint veya str8/autoNiceleme hassasiyeti. Axelera AIPU için 8 (INT8) gereklidir ve otomatik olarak etkinleştirilir. Kullanımdan kaldırılan half/int8 işaretlerinin yerini alır. INT8 niceleme bölümüne bak.
datastrNoneNiceleme veri kümesi YAML'ı; sınıflandırma için bunun yerine veri kümesi dizini veya yerleşik veri kümesi adı kullanılır. Belirtilmezse Ultralytics göreve özgü bir niceleme veri kümesi seçer.
fractionfloat, int veya list1.0Oran, görüntü sayısı veya [train, val, test] oranları/sayıları olarak niceleme alt kümesi. İki öğeli listeler test değerini tam bırakırken 0 bunu atlar (100-400 görüntü önerilir).
devicestrNoneDışa aktarma cihazı: GPU (device=0) veya CPU (device=cpu).

* batch>1 ile çıkarım, Voyager SDK 1.8.0 veya daha yenisini gerektirir; modeller tek bir görüntü için derlenir.

Tüm dışa aktarma seçenekleri için Dışa Aktarma Modu belgelerine bak.

Çıktı Yapısı#

yolo26n_axelera_model/
├── yolo26n.axm                  # Axelera model file
├── compiler_config_final.toml  # Compiler configuration used for the build
└── metadata.yaml               # Model metadata (classes, image size, etc.)

Axelera AI Karşılaştırmaları#

Metis AIPU, enerji tüketimini en aza indirirken aktarım hızını en üst düzeye çıkarır.

ModelMetis PCIe FPS (saniye başına kare)Metis M.2 FPS (saniye başına kare)
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

Karşılaştırmalar Axelera AI verilerine dayanır. Gerçek FPS; model boyutuna, toplu işlemeye ve giriş çözünürlüğüne bağlıdır.

Bunlar, Voyager SDK'nın akış boru hattı kullanılarak 720p video dosyası üzerinden model zoo tarafından ölçülen ana bilgisayar aktarım hızı rakamlarıdır. Tek bir predict çağrısı bunun yerine farklı bir miktar olan görüntü başına gecikmeyi bildirir.

Gerçek Dünya Uygulamaları#

Axelera donanımında Ultralytics YOLO, gelişmiş uç bilişim çözümlerini mümkün kılar:

Önerilen İş Akışı#

  1. Modelini Ultralytics Eğitim Modu ile Eğit
  2. model.export(format="axelera") kullanarak Axelera formatına Dışa Aktar
  3. Niceleme kaybının en aza indirildiğini doğrulamak için yolo val ile doğruluğu Doğrula
  4. Nitel doğrulama için yolo predict kullanarak Tahmin Et
  5. PyTorch bağımlılığı olmadan yüksek performanslı uçtan uca bir işlem hattına Dağıtaxelera-rt kullanan birleştirilebilir Python işlem hatları için Voyager SDK üzerinde YOLO örneklerine bak

Cihaz Durumu Denetimi#

Axelera cihazının düzgün çalıştığını doğrula:

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

Ayrıntılı tanılama için AxDevice belgelerine bak.

Maksimum Performans#

Modeller tek bir görüntü için derlenir. Predict işlevine birkaç görüntü geçirmek, bunları Axelera zamanlayıcısı (Voyager SDK 1.8 veya daha yenisi) üzerinden yönlendirir, böylece batch>1 doğru şekilde çalışır, ancak tek bir cihazda uçtan uca ölçüldüğünde batch=1 değerinden daha hızlı değildir:

yolo predict model=yolo26n_axelera_model source=path/to/images batch=8

Maksimum aktarım hızı gerektiren üretim için Axelera Voyager SDK şunları sunar:

  • İşlem aşamasında birkaç kare tutan akış çıkarım boru hatları
  • Tek bir modeli birkaç çekirdek üzerinde derleme
  • Daha yüksek çözünürlüklü kameralar için döşemeli çıkarım

FPS karşılaştırmaları için model-zoo sayfasına bakabilir veya üretim desteği için Axelera ile iletişime geçebilirsin.

Bilinen Sorunlar#

Bilinen Sınırlamalar
  • M.2 güç sınırlamaları: Büyük veya çok büyük modeller, güç kaynağı kısıtlamaları nedeniyle M.2 hızlandırıcılarda çalışma zamanı hatalarıyla karşılaşabilir.

Destek için Axelera Community sayfasını ziyaret et.

SSS#

  • Voyager SDK, YOLOv8, YOLO11 ve YOLO26 modellerinin dışa aktarılmasını destekler. Model bazında görev kullanılabilirliği için Desteklenen Görevler sayfasına bak.

  • Evet. Ultralytics Train Mode kullanılarak eğitilen tüm modeller, desteklenen katmanları ve işlemleri kullanmaları koşuluyla Axelera biçimine aktarılabilir.

  • Axelera'nın Voyager SDK'sı, modelleri karma hassasiyetli AIPU mimarisi için otomatik olarak nicelemeye tabi tutar. Çoğu nesne tespiti görevinde performans kazanımları (daha yüksek FPS, daha düşük güç tüketimi), mAP üzerindeki minimum etkiden önemli ölçüde daha ağır basar. Niceleme, model boyutuna bağlı olarak birkaç saniyeden birkaç saate kadar sürebilir. Doğruluğu doğrulamak için dışa aktarma işleminden sonra yolo val komutunu çalıştır.

  • 100 ila 400 görüntü kullanmanı öneririz. 400'den fazlası ek bir fayda sağlamaz ve niceleme süresini artırır. En uygun dengeyi bulmak için 100, 200 ve 400 görüntüyle denemeler yap.

  • SDK, sürücüler ve derleyici araçları Axelera Developer Portal üzerinden kullanılabilir.

Yorumlar