Esportazione e implementazione di Axelera AI
Rilascio sperimentale
Si tratta di un'integrazione sperimentale che dimostra l'implementazione sull'hardware Axelera Metis. L'integrazione completa è prevista entro febbraio 2026 con esportazione del modello senza necessità di hardware Axelera e installazione standard di pip.
Ultralytics con Axelera AI per consentire un'inferenza ad alte prestazioni ed efficiente dal punto di vista energetico sui dispositivi Edge AI. Esporta e distribuisci YOLO Ultralytics YOLO direttamente su Metis® AIPU utilizzando Voyager SDK.
Axelera AI fornisce un'accelerazione hardware dedicata per la visione artificiale all'avanguardia, utilizzando un'architettura di flusso di dati proprietaria e un sistema di elaborazione in memoria per fornire fino a 856 TOPS con un 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 di hardware Axelera è ottimizzata per eseguire Ultralytics YOLO11 e le versioni legacy con un'elevata efficienza FPS per watt.
Schede Acceleratrici
Queste schede consentono l'accelerazione dell'IA nei dispositivi host esistenti, facilitando i brownfield deployments.
| Prodotto | Fattore di forma | Calcolo | Prestazioni (INT8) | Applicazione di destinazione |
|---|---|---|---|---|
| Metis PCIe x4 | PCIe Gen3 x16 | 4x AIPU Metis | 856 TOPS | Video analisi ad alta densità, smart cities |
| Metis PCIe x1 | PCIe Gen3 x1 | 1x Metis AIPU | 214 TOPS | PC industriali, gestione delle code al dettaglio |
| Metis M.2 | M.2 2280 M-Key | 1x Metis AIPU | 214 TOPS | Droni, robotica, dispositivi medici portatili |
| Metis M.2 MAX | M.2 2280 | 1x Metis AIPU | 214 TOPS | Ambienti 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 rilevamento degli oggetti possono essere esportati nel formato Axelera. Sono in fase di integrazione ulteriori attività:
| Task | Stato |
|---|---|
| Rilevamento di oggetti | ✅ Supportato |
| Stima della posa | Prossimamente |
| Segmentazione | Prossimamente |
| Riquadri di delimitazione orientati | Prossimamente |
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: Versione 3.10 (3.11 e 3.12 in arrivo)
Installazione di Ultralytics
pip install ultralytics
Per istruzioni dettagliate, consulta la nostra guidaUltralytics . In caso di difficoltà, consulta la nostra guida ai problemi comuni.
Installazione del driver Axelera
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"Aggiungi 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"Installa l'SDK e carica 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
Esporta YOLO tuoi YOLO addestrati utilizzando il comando Ultralytics standard Ultralytics .
Esporta in formato Axelera
from ultralytics import YOLO
# Load a YOLO11 model
model = YOLO("yolo11n.pt")
# Export to Axelera format
model.export(format="axelera") # creates 'yolo11n_axelera_model' directory
yolo export model=yolo11n.pt format=axelera
Argomenti di esportazione
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
format | str | 'axelera' | Formato target per hardware Axelera Metis AIPU |
imgsz | int oppure tuple | 640 | Dimensione immagine per l'input del modello |
int8 | bool | True | Abilita quantizzazione INT8 per AIPU |
data | str | 'coco128.yaml' | Configurazione del set di dati per la calibrazione della quantizzazione |
fraction | float | 1.0 | Frazione del set di dati per la calibrazione (si consigliano 100-400 immagini) |
device | str | None | Dispositivo di esportazione: GPUdevice=0) o CPUdevice=cpu) |
Per tutte le opzioni di esportazione, consultare la documentazione relativa alla modalità di esportazione.
Struttura dell'output
yolo11n_axelera_model/
├── yolo11n.axm # Axelera model file
└── metadata.yaml # Model metadata (classes, image size, etc.)
Esecuzione dell'Inferenza
Caricare il modello esportato con Ultralytics ed eseguire l'inferenza, in modo simile al caricamento di ONNX .
Inferenza con il modello Axelera
from ultralytics import YOLO
# Load the exported Axelera model
model = YOLO("yolo11n_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='yolo11n_axelera_model' source='https://ultralytics.com/images/bus.jpg'
Problema noto
La prima esecuzione dell'inferenza potrebbe generare un'eccezione ImportError. Le esecuzioni successive funzioneranno correttamente. Questo problema verrà risolto in una versione futura.
Prestazioni di Inference
Il Metis AIPU massimizza la produttività riducendo al minimo il consumo energetico.
| Metrica | Metis PCIe x4 | Metis M.2 | Nota |
|---|---|---|---|
| Throughput massimo | 856 TOPS | 214 TOPS | Precisione INT8 |
| FPS di YOLOv5m | ~1539 FPS | ~326 FPS | Input 640x640 |
| FPS di YOLOv5s | N/A | ~827 FPS | Input 640x640 |
| Efficienza | Alta | Molto alta | Ideale per l'alimentazione a batteria |
Benchmark basati sui dati di Axelera AI. Il numero effettivo di FPS dipende dalle dimensioni del modello, dal batching e dalla risoluzione di input.
Applicazioni nel mondo reale
Ultralytics YOLO su hardware Axelera consente soluzioni avanzate di edge computing:
- Smart Retail: Conteggio degli oggetti in tempo reale e analisi heatmap per l'ottimizzazione del negozio.
- Sicurezza industriale: Detect di DPI a bassa latenza in ambienti di produzione.
- Analisi con droni: Rilevamento di oggetti ad alta velocità su UAV per l'agricoltura e la ricerca e il salvataggio.
- Sistemi di traffico: Riconoscimento delle targhe e stima della velocità basati sui bordi.
Flusso di lavoro consigliato
- Addestra il tuo modello utilizzandola modalità Train Ultralytics
- Esportazione al formato Axelera utilizzando
model.export(format="axelera") - Convalida precisione con
yolo valper verificare la perdita minima di quantizzazione - Predizione utilizzando
yolo predictper la validazione qualitativa
Controllo dello stato del dispositivo
Verifica che il tuo dispositivo Axelera funzioni correttamente:
. /opt/axelera/sdk/latest/axelera_activate.sh
axdevice
Per una diagnostica dettagliata, consultare la documentazione AxDevice.
Massime prestazioni
Questa integrazione utilizza una configurazione single-core per garantire la compatibilità. Per le produzioni che richiedono il massimo throughput, l'SDK Axelera Voyager offre:
- Utilizzo multi-core (Metis AIPU quad-core)
- Pipeline di inferenza in streaming
- Inferenza affiancata per telecamere ad alta risoluzione
Consulta il model-zoo per i benchmark FPS o contatta Axelera per assistenza sulla produzione.
Problemi noti
Limiti noti
Compatibilità con PyTorch .9: Il primo
yolo export format=axeleraIl comando potrebbe non funzionare a causa del PyTorch automatico PyTorch alla versione 2.8. Eseguire il comando una seconda volta per ottenere il risultato desiderato.Limiti di alimentazione M.2: i modelli di grandi o grandissime dimensioni potrebbero riscontrare errori di esecuzione sugli acceleratori M.2 a causa dei limiti di alimentazione.
Prima inferenza ImportError: La prima esecuzione dell'inferenza potrebbe generare un'eccezione
ImportError. Le esecuzioni successive funzionano correttamente.
Per assistenza, visita la Comunità Axelera.
FAQ
Quali versioni di YOLO sono supportate su Axelera?
Il Voyager SDK supporta l'esportazione di YOLOv8 e YOLO11 .
Posso implementare modelli personalizzati?
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?
Il Voyager SDK di Axelera quantizza automaticamente i modelli per l'architettura AIPU a precisione mista. Per la maggior parte il rilevamento di oggetti attività, i miglioramenti delle prestazioni (FPS più elevati, consumo energetico inferiore) superano significativamente l'impatto minimo su mAPLa quantizzazione richiede da pochi secondi a diverse ore a seconda delle dimensioni del modello. Esegui yolo val dopo l'esportazione per verificarne l'accuratezza.
Quante immagini di calibrazione devo usare?
Si consiglia di utilizzare da 100 a 400 immagini. Un numero superiore a 400 non offre alcun vantaggio aggiuntivo e aumenta il tempo di quantizzazione. Provare con 100, 200 e 400 immagini per trovare il bilanciamento ottimale.
Dove posso trovare l'SDK Voyager?
L'SDK, i driver e gli strumenti del compilatore sono disponibili tramite l'Axelera Developer Portal.