Vai al contenuto

Esportazione e Distribuzione Axelera AI

Ultralytics collabora con Axelera AI per abilitare inferenze ad alte prestazioni ed efficienti dal punto di vista energetico su dispositivi Edge AI. Esporta e distribuisci i modelli Ultralytics YOLO direttamente sulla Metis® AIPU utilizzando il Voyager SDK.

Ecosistema di implementazione edge Axelera AI per YOLO

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

Selezione dell'Hardware Giusto

Axelera AI offre vari fattori di forma per adattarsi a diverse limitazioni di implementazione. Il grafico sottostante aiuta a identificare l'hardware ottimale per la tua implementazione YOLO di Ultralytics.

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/"

Portfolio hardware

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

Schede Acceleratrici

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

ProdottoFattore di formaCalcoloPrestazioni (INT8)Applicazione di destinazione
Metis PCIe x4PCIe Gen3 x164x AIPU Metis856 TOPSVideo analisi ad alta densità, smart cities
Metis PCIe x1PCIe Gen3 x11x Metis AIPU214 TOPSPC industriali, gestione delle code al dettaglio
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 la Metis AIPU.

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

Attività supportate

Le seguenti operazioni sono supportate dai modelli YOLOv8, YOLO11 e YOLO26.

TaskYOLOv8YOLO11YOLO26
Rilevamento di oggetti
Stima della posa
Segmentazione⚠️ Solo SDK Voyager
Bounding Box Orientate
Classificazione

Nota

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

Installazione

Requisiti di Piattaforma

L'esportazione nel formato Axelera richiede:

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

Installazione di Ultralytics

pip install ultralytics

Per istruzioni dettagliate, consultare la nostra guida all'installazione di Ultralytics. In caso di difficoltà, consultare la nostra guida ai problemi comuni.

Installazione Driver Axelera

  1. Aggiungere 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. Aggiungere il repository ad apt:

    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"
    
  3. Installare l'SDK e caricare il driver:

    sudo apt update
    sudo apt install -y metis-dkms=1.4.16
    sudo modprobe metis
    

Esportazione di modelli YOLO in Axelera

Esportare i modelli YOLO addestrati utilizzando il comando di esportazione standard di Ultralytics.

Esporta in formato 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
yolo export model=yolo26n.pt format=axelera

La prima esportazione potrebbe non andare a buon fine dopo l'aggiornamento delle dipendenze

Il compilatore Axelera richiede numpy<2. Se il tuo ambiente dispone di numpy>=2, il primo yolo export Il sistema eseguirà automaticamente il downgrade, ma l'esportazione non andrà a buon fine a causa dello stato non aggiornato del modulo. Basta eseguire nuovamente lo stesso comando di esportazione: al secondo tentativo funzionerà.

Argomenti di esportazione

ArgomentoTipoPredefinitoDescrizione
formatstr'axelera'Formato di destinazione per l'hardware AIPU Axelera Metis
imgszint oppure tuple640Dimensione dell'immagine per l'input del modello
int8boolTrueAbilitare la quantizzazione INT8 per AIPU
datastr'coco128.yaml'Configurazione del dataset per la calibrazione della quantizzazione
fractionfloat1.0Frazione del dataset per la calibrazione (si raccomandano 100-400 immagini)
devicestrNoneDispositivo di esportazione: GPU (device=0) o CPU (device=cpu)

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

Struttura dell'output

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

Esecuzione dell'Inferenza

Caricare il modello esportato con l'API Ultralytics ed eseguire l'inferenza, in modo simile al caricamento dei modelli ONNX.

Inferenza con modello 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
yolo predict model='yolo26n_axelera_model' source='https://ultralytics.com/images/bus.jpg'

Benchmark di Axelera AI

L'AIPU Metis massimizza il throughput riducendo al minimo il consumo energetico.

ModelloMetis PCIe FPS (fotogrammi al secondo)Metis M.2 FPS (fotogrammi al secondo)
YOLOv8n847771
YOLO11n746574
YOLO26n648.6484.9

Benchmark basati sui dati di Axelera AI. Gli FPS effettivi dipendono dalla dimensione del modello, dal batching e dalla risoluzione dell'input.

Applicazioni nel mondo reale

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

  1. Addestrare il modello utilizzando la Modalità di addestramento di Ultralytics
  2. Esportazione al formato Axelera utilizzando model.export(format="axelera")
  3. Convalida precisione con yolo val per verificare la perdita minima di quantizzazione
  4. Predizione utilizzando yolo predict per la validazione qualitativa
  5. Distribuisci per una pipeline end-to-end ad alte prestazioni senza PyTorch — vedi il Esempi YOLO SDK YOLO Voyager per Python componibili che utilizzano axelera-rt

Controllo dello Stato del Dispositivo

Verificare il corretto funzionamento del dispositivo Axelera:

# 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, consultare la documentazione di AxDevice.

Massime Prestazioni

Questa integrazione utilizza una configurazione single-core per compatibilità. Per la produzione che richiede il massimo throughput, l' Axelera Voyager SDK offre:

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

Consultare il model-zoo per i benchmark FPS o contattare Axelera per il supporto alla produzione.

Problemi Noti

Limitazioni Note

  • Limitazioni di alimentazione M.2: Modelli grandi o extra-grandi potrebbero riscontrare errori di runtime sugli acceleratori M.2 a causa di vincoli di alimentazione.

Per supporto, visitare la Axelera Community.

FAQ

Quali versioni di YOLO sono supportate su Axelera?

L'SDK di Voyager supporta l'esportazione di YOLOv8, YOLO11e YOLO26. Consulta la sezione Attività supportate per verificare la disponibilità delle attività per ciascun modello.

È possibile distribuire modelli addestrati su misura?

Sì. Qualsiasi modello addestrato utilizzando la Modalità di addestramento Ultralytics può essere esportato nel formato Axelera, a condizione che utilizzi livelli e operazioni supportati.

In che modo la quantizzazione INT8 influisce sull'accuratezza?

L'Axelera Voyager SDK quantizza automaticamente i modelli per l'architettura AIPU a precisione mista. Per la maggior parte dei il rilevamento di oggetti compiti, i guadagni in termini di prestazioni (FPS più elevati, minor consumo energetico) superano significativamente l'impatto minimo su mAP. La quantizzazione richiede da pochi secondi a diverse ore a seconda delle dimensioni del modello. Eseguire yolo val dopo l'esportazione per verificarne l'accuratezza.

Quante immagini di calibrazione dovrei usare?

Raccomandiamo da 100 a 400 immagini. Più di 400 non offrono alcun beneficio aggiuntivo e aumentano il tempo di quantizzazione. Sperimenta con 100, 200 e 400 immagini per trovare l'equilibrio ottimale.

Dove posso trovare l'SDK Voyager?

L'SDK, i driver e gli strumenti del compilatore sono disponibili tramite l'Axelera Developer Portal.



📅 Creato 4 mesi fa ✏️ Aggiornato 2 giorni fa
glenn-jocherlakshanthadpderrengerambitious-octopusonuralpszr

Commenti