Vai al contenuto

Esportazione e Distribuzione Axelera AI

Rilascio Sperimentale

Questa è un'integrazione sperimentale che dimostra la distribuzione sull'hardware Axelera Metis. L'integrazione completa è prevista entro febbraio 2026 con l'esportazione del modello senza richiedere hardware Axelera e installazione pip standard.

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

Attualmente, i modelli di Object Detection possono essere esportati nel formato Axelera. Ulteriori task sono in fase di integrazione:

TaskStato
Rilevamento di oggetti✅ Supportato
Stima della posaProssimamente
SegmentazioneProssimamente
Bounding Box OrientateProssimamente

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: Versione 3.10 (3.11 e 3.12 in arrivo)

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 axelera-voyager-sdk-base
    sudo modprobe metis
    yes | sudo /opt/axelera/sdk/latest/axelera_fix_groups.sh $USER
    

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

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'

Problema noto

La prima esecuzione dell'inferenza potrebbe generare un ImportError. Le esecuzioni successive funzioneranno correttamente. Questo problema verrà risolto in una futura release.

Prestazioni di Inference

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

MetricaMetis PCIe x4Metis M.2Nota
Throughput massimo856 TOPS214 TOPSPrecisione INT8
FPS di YOLOv5m~1539 FPS~326 FPSInput 640x640
FPS di YOLOv5sN/A~827 FPSInput 640x640
EfficienzaAltaMolto altaIdeale per l'alimentazione a batteria

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

Controllo dello Stato del Dispositivo

Verificare il corretto funzionamento del dispositivo Axelera:

. /opt/axelera/sdk/latest/axelera_activate.sh
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

  • Compatibilità con PyTorch 2.9: Il primo yolo export format=axelera comando potrebbe fallire a causa del downgrade automatico di PyTorch alla versione 2.8. Eseguire il comando una seconda volta per avere successo.

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

  • ImportError alla prima inferenza: La prima esecuzione dell'inferenza potrebbe generare un ImportError. Le esecuzioni successive funzionano correttamente.

Per supporto, visitare la Axelera Community.

FAQ

Quali versioni di YOLO sono supportate su Axelera?

Il Voyager SDK supporta l'esportazione dei modelli YOLOv8 e YOLO26.

È 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 2 mesi fa ✏️ Aggiornato 7 giorni fa
glenn-jocherpderrengerambitious-octopusonuralpszr

Commenti