YOLO Vision 2026:

Esportazione e distribuzione con Axelera AI#

Ultralytics collabora con Axelera AI per consentire un'inferenza ad alte prestazioni ed elevata efficienza energetica su dispositivi Edge AI. Esporta e distribuisci i modelli Ultralytics YOLO direttamente sul Metis® AIPU utilizzando il Voyager SDK.

Ecosistema di distribuzione edge di Axelera AI per YOLO

Axelera AI fornisce un'accelerazione hardware dedicata per la computer vision all'edge, utilizzando un'architettura dataflow proprietaria e il calcolo in-memory per offrire fino a 856 TOPS con un basso consumo energetico.

Selezionare l'hardware giusto#

Axelera AI offre vari fattori di forma per soddisfare diverse esigenze di distribuzione. Il grafico sottostante ti aiuta a identificare l'hardware ottimale per la tua distribuzione di Ultralytics YOLO.

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

Portfolio hardware#

La gamma di hardware Axelera è ottimizzata per eseguire Ultralytics YOLO26 e le versioni precedenti con un'elevata efficienza in termini di FPS per watt.

Schede acceleratrici#

Queste schede consentono l'accelerazione dell'IA nei dispositivi host esistenti, facilitando le distribuzioni brownfield.

ProdottoFattore di formaCalcoloPrestazioni (INT8)Applicazione target
Metis PCIe x4PCIe Gen3 x164x Metis AIPUs856 TOPSVideoanalisi ad alta densità, smart cities
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPSPC industriali, gestione delle code nel retail
Metis M.2M.2 2280 M-Key1x Metis AIPU214 TOPSDroni, robotica, dispositivi medici portatili
Metis M.2 MAXM.2 22801x Metis AIPU214 TOPSAmbienti che richiedono una gestione termica avanzata

Sistemi integrati#

Per soluzioni chiavi in mano, Axelera collabora con i produttori per fornire sistemi pre-validati per il Metis AIPU.

  • Metis Compute Board: Un dispositivo edge standalone che abbina il Metis AIPU a una CPU ARM Rockchip RK3588.
  • Workstation: Tower aziendali di Dell (Precision 3460XE) e Lenovo (ThinkStation P360 Ultra).
  • PC industriali: Sistemi rinforzati di Advantech e Aetina progettati per l'automazione industriale.

Attività supportate#

La stima della profondità non è supportata: l'head di profondità emette operatori che il compilatore del Metis AIPU non può abbassare. Anche la segmentazione YOLO26 non è supportata da Ultralytics export, ma può comunque essere distribuita tramite il Voyager SDK come descritto di seguito.

CompitoYOLOv8YOLO11YOLO26
Detect
Segment
Semantic
Depth
Classify
Pose
OBB
Nota

La segmentazione YOLO26 non è ancora supportata tramite il comando Ultralytics export. Gli utenti che necessitano di YOLO26-seg possono effettuare il deploy tramite il Voyager SDK utilizzando deploy.py, che fornisce una soluzione alternativa a livello di utente. Il supporto nativo del compilatore verrà aggiunto in una versione futura.

Installazione#

Requisiti della piattaforma

L'esportazione nel formato Axelera richiede:

  • Sistema operativo: Solo Linux (consigliato Ubuntu 22.04/24.04)
  • Hardware: Acceleratore Axelera AI (dispositivi Metis)
  • Python: Versioni 3.10, 3.11, 3.12 e 3.13
  • Dipendenza di sistema: sudo apt install libgl1 (richiesto da OpenCV, non incluso tramite pip)

Installazione di Ultralytics#

pip install ultralytics

Per istruzioni dettagliate, consulta la nostra Guida all'installazione di Ultralytics. In caso di problemi, consulta la nostra Guida ai problemi comuni.

Installazione del driver Axelera#

  1. Aggiungi la chiave del repository 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. Aggiungi il repository ad apt:

    Scegli lo snippet appropriato qui sotto per corrispondere al sistema operativo in uso.

    # 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. Installa l'SDK e carica il driver:

    sudo apt update
    sudo apt install -y metis-dkms=1.5.5
    sudo modprobe metis
Mantieni il driver del kernel sincronizzato con l'SDK

Il driver del kernel viene installato separatamente dai pacchetti Python SDK, quindi dopo l'aggiornamento dell'SDK (ad esempio da 1.6 a 1.7) è necessario installare la versione del driver corrispondente. Un driver non sincronizzato rende il dispositivo non disponibile: axdevice segnala la versione richiesta e non riesce ad aprire il dispositivo.

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

Installa la versione del driver corrispondente al tuo SDK — vedi Passaggio 3: Installa il driver del kernel Metis. Se stai già eseguendo un SDK precedente su Ubuntu, aggiorna il driver e ricarica il modulo del kernel (nessun riavvio richiesto):

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

Quindi esegui nuovamente axdevice per confermare che il dispositivo sia stato rilevato.

Il primo avvio scarica automaticamente l'SDK

Il primo yolo export format=axelera o yolo predict con un modello Axelera scaricherà e installerà automaticamente i pacchetti Axelera SDK. Questa operazione potrebbe richiedere diversi minuti a seconda della velocità della connessione e durante il download non viene mostrato alcun avanzamento. Per installare manualmente in anticipo:

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

Esportazione di modelli YOLO su Axelera#

Il formato Axelera supporta le modalità Export, Predict e Validate. L'inferenza e la convalida vengono eseguite sull'hardware Axelera Metis AIPU. Esporta il tuo modello, quindi carica il modello esportato per eseguire l'inferenza o validarne la precisione.

Esportazione
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'
Previsione
from ultralytics import YOLO

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

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Convalida
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")
La prima esportazione potrebbe fallire dopo l'aggiornamento della dipendenza

Il compilatore Axelera richiede numpy<2. Se il tuo ambiente dispone di numpy>=2, il primo yolo export eseguirà automaticamente il downgrade, ma l'esportazione fallirà a causa dello stato obsoleto del modulo. Esegui nuovamente lo stesso comando di esportazione: riuscirà al secondo tentativo.

Argomenti di esportazione#

ArgomentoTipoPredefinitoDescrizione
formatstr'axelera'Formato target per l'hardware Axelera Metis AIPU.
imgszint o tuple640Dimensioni dell'immagine per l'input del modello.
batchint1Specifica la dimensione dell'inferenza in batch del modello esportato o il numero massimo di immagini che il modello esportato elaborerà contemporaneamente in modalità predict.
quantizeint o str8/autoPrecisione di quantizzazione. 8 (INT8) è obbligatorio e viene abilitato automaticamente per l'AIPU Axelera. Sostituisce i flag deprecati half/int8. Vedi Quantizzazione INT8.
datastrNoneDataset di calibrazione YAML; la classificazione richiede invece una directory di dataset o il nome di un dataset integrato. Se omesso, Ultralytics seleziona un dataset di calibrazione specifico per il task.
fractionfloat, int o list1.0Sottoinsieme di calibrazione come rapporto, conteggio di immagini o rapporti/conteggi [train, val]; un elenco limita train o val, mentre test rimane completo (consigliate 100-400 immagini).
devicestrNoneDispositivo di esportazione: GPU (device=0) o CPU (device=cpu).

Per tutte le opzioni di esportazione, consulta la documentazione della modalità Export.

Struttura dell'output#

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.)

Benchmark di Axelera AI#

Il Metis AIPU massimizza il throughput riducendo al contempo il consumo energetico.

ModelloFPS (frame al secondo) Metis PCIeFPS (frame al secondo) Metis M.2
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

Benchmark basati su dati Axelera AI. Gli FPS effettivi dipendono dalle dimensioni del modello, dal batching e dalla risoluzione dell'input.

Applicazioni nel mondo reale#

Ultralytics YOLO su hardware Axelera abilita soluzioni avanzate di edge computing:

Flusso di lavoro consigliato#

  1. Allena il tuo modello utilizzando la modalità di training di Ultralytics
  2. Esporta nel formato Axelera utilizzando model.export(format="axelera")
  3. Convalida la precisione con yolo val per verificare una perdita di quantizzazione minima
  4. Predici utilizzando yolo predict per la convalida qualitativa
  5. Distribuisci su una pipeline end-to-end ad alte prestazioni senza dipendenze da PyTorch — consulta gli esempi di YOLO su Voyager SDK per pipeline Python componibili che utilizzano axelera-rt

Controllo dello stato del dispositivo#

Verifica che il tuo dispositivo Axelera funzioni correttamente:

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

Per una diagnostica dettagliata, consulta la documentazione di AxDevice.

Massime prestazioni#

Questa integrazione utilizza una configurazione a singolo core per garantire la compatibilità. Per la produzione che richiede la massima produttività, il Voyager SDK di Axelera offre:

  • Utilizzo multi-core (quad-core Metis AIPU)
  • Pipeline di inferenza in streaming
  • Inferenza a riquadri (tiled) per telecamere ad alta risoluzione

Consulta il model-zoo per i benchmark FPS o contatta Axelera per il supporto di produzione.

Problemi noti#

Limitazioni note
  • Limitazioni di alimentazione M.2: I modelli di grandi o extra-grandi dimensioni possono riscontrare errori di runtime sugli acceleratori M.2 a causa dei vincoli dell'alimentatore.

Per supporto, visita la Community di Axelera.

FAQ#

  • Il Voyager SDK supporta l'esportazione di modelli YOLOv8, YOLO11 e YOLO26. Consulta Attività supportate per la disponibilità delle attività per ciascun modello.

  • Sì. Qualsiasi modello addestrato utilizzando la modalità Train di Ultralytics può essere esportato nel formato Axelera, a condizione che utilizzi layer e operazioni supportati.

  • Il Voyager SDK di Axelera quantizza automaticamente i modelli per l'architettura AIPU a precisione mista. Per la maggior parte delle attività di rilevamento di oggetti, i vantaggi in termini di prestazioni (FPS più elevati, minor consumo energetico) superano significativamente il minimo impatto sulla mAP. La quantizzazione richiede da pochi secondi a diverse ore a seconda delle dimensioni del modello. Esegui yolo val dopo l'esportazione per verificare la precisione.

  • Consigliamo da 100 a 400 immagini. Più di 400 non offrono ulteriori vantaggi e aumentano il tempo di quantizzazione. Sperimenta con 100, 200 e 400 immagini per trovare l'equilibrio ottimale.

  • L'SDK, i driver e gli strumenti del compilatore sono disponibili tramite il Portale per sviluppatori di Axelera.

Commenti