Analisi comparativa delle opzioni di distribuzione di YOLO26#
YOLO26 supporta più di 20 opzioni di distribuzione, ciascuna ottimizzata per un runtime, un target hardware o una piattaforma differenti, da PyTorch e ONNX a TensorRT, OpenVINO, CoreML e formati dedicati per NPU edge. Scegliere quella giusta bilancia velocità di inferenza, vincoli hardware e facilità di integrazione. Questa guida confronta ciascuna opzione per consentirti di scegliere la soluzione più adatta alla tua applicazione, per poi passare alle best practice per la distribuzione dei modelli per distribuirlo in modo affidabile.
Watch: How to Choose the Best Ultralytics YOLO26 Deployment Format for Your Project | TensorRT | OpenVINO 🚀
La distribuzione è la fase del flusso di lavoro del progetto di computer vision in cui un modello addestrato inizia a svolgere lavoro reale, quindi il formato in cui lo esporti ha un impatto diretto su velocità, costi e portabilità.
Come selezionare l'opzione di distribuzione giusta per il tuo modello YOLO26#
Quando è il momento di distribuire il tuo modello YOLO26, selezionare un formato di esportazione adatto è molto importante. Come illustrato nella documentazione di esportazione di Ultralytics YOLO26, la funzione model.export() converte il tuo modello addestrato in una varietà di formati su misura per diversi ambienti e requisiti di prestazioni.
Il formato ideale dipende dal contesto operativo previsto per il tuo modello e dall'hardware.
Per una distribuzione gestita senza esportazione manuale, Ultralytics Platform fornisce endpoint di inferenza pronti all'uso con scalabilità automatica in 42 regioni globali.
Opzioni di distribuzione di YOLO26#
Ecco una breve descrizione di ciascun formato e di quando utilizzarlo. Per la procedura dettagliata di esportazione, consulta la documentazione di esportazione; per i criteri di confronto affiancati, vai direttamente alla tabella di confronto.
- PyTorch (
.pt): Il formato nativo di addestramento e inferenza, che offre la massima flessibilità e accelerazione GPU tramite NVIDIA CUDA o AMD ROCm, ideale per la ricerca e la prototipazione senza alcun passaggio di esportazione richiesto. - TorchScript (
torchscript): Serializza il modello per un runtime C++ senza Python, adatto a sistemi di produzione in cui Python non è disponibile. - ONNX (
onnx): Un formato di interscambio indipendente dal framework con ampio supporto multipiattaforma e hardware tramite ONNX Runtime. - OpenVINO (
openvino): Il toolkit di Intel per l'inferenza ottimizzata su CPU Intel, GPU integrate e NPU, comune nell'IoT e nell'edge computing. - TensorRT (
engine): Il runtime ad alte prestazioni di NVIDIA che offre inferenza GPU di primo livello con ottimizzazione FP16 e INT8. - CoreML (
coreml): Il formato on-device di Apple per iOS, macOS, watchOS e tvOS, che utilizza Apple Neural Engine. - TF SavedModel (
saved_model): Il formato standard di TensorFlow per il serving lato server scalabile con TensorFlow Serving. - TF GraphDef (
pb): Un formato TensorFlow con grafo statico bloccato per ambienti che richiedono un grafo di calcolo fisso. - TF Edge TPU (
edgetpu): Compila i modelli.tfliteper gli acceleratori Google Coral Edge TPU. - LiteRT (
litert): Il runtime on-device di Google (precedentemente TensorFlow Lite) per inferenza su dispositivi mobili, embedded e browser da un singolo modello.tflite, con supporto FP32 e INT8 ed esecuzione in-browser tramite LiteRT.js. - PaddlePaddle (
paddle): Il framework di deep learning di Baidu, popolare in Cina, con un ampio supporto hardware. - MNN (
mnn): Un motore di inferenza leggero e ad alte prestazioni ottimizzato per sistemi ARM e x86-64 mobili ed embedded. - NCNN (
ncnn): Un framework di inferenza leggero e ad alte prestazioni ottimizzato per dispositivi ARM mobili. - Sony IMX500 (
imx): Esportazioni per il sensore di visione intelligente IMX500 di Sony con elaborazione on-chip, come la Raspberry Pi AI Camera. - Rockchip RKNN (
rknn): Prende di mira le NPU Rockchip su schede embedded con quantizzazione FP16 e INT8. - ExecuTorch (
executorch): Il runtime on-device nativo di PyTorch per dispositivi mobili (iOS e Android) e sistemi embedded tramite XNNPACK. - Axelera AI (
axelera): Compila per il Metis AIPU di Axelera (fino a 856 TOPS) tramite PCIe o M.2 per inferenza edge ad alto throughput. - DEEPX (
deepx): Prende di mira l'hardware NPU DEEPX con quantizzazione INT8 per l'inferenza edge embedded. - Qualcomm QNN (
qnn): Inferenza on-device su NPU Snapdragon Hexagon, GPU Adreno e CPU tramite lo stack AI Qualcomm.
L'integrazione con Hailo esporta modelli di rilevamento, segmentazione, segmentazione semantica, stima della profondità, classificazione, posa e OBB di YOLO direttamente in formato Hailo HEF; consulta la sua tabella di compatibilità per i modelli e i target convalidati. L'integrazione con Ambarella segue un flusso di lavoro basato prima su ONNX e compila le esportazioni ONNX nel formato AmbaPB con la toolchain CVflow di Ambarella per SoC CVflow® come il CV72, utilizzando opzionalmente l'addestramento consapevole della compressione SpongeTorch. L'integrazione con Huawei Ascend compila le esportazioni ONNX nel formato offline .om con il compilatore CANN ATC per l'inferenza FP16 su processori Ascend AI.
Confronto delle opzioni di distribuzione#
La seguente tabella riassume le opzioni di distribuzione per i modelli YOLO26 in base ai criteri che solitamente guidano la scelta. Per uno sguardo approfondito su ciascun formato, consulta la documentazione sui formati di esportazione.
| Opzione di deployment | Benchmark delle prestazioni | Compatibilità e integrazione | Supporto della community ed ecosistema | Casi d'uso | Manutenzione e aggiornamenti | Considerazioni sulla sicurezza | Accelerazione hardware |
|---|---|---|---|---|---|---|---|
| PyTorch | Buona flessibilità; potrebbe scendere a compromessi sulle prestazioni grezze | Eccellente con le librerie Python | Risorse estese e community | Ricerca e prototipi | Sviluppo regolare e attivo | Dipendente dall'ambiente di deployment | Supporto CUDA per accelerazione GPU |
| TorchScript | Migliore per la produzione rispetto a PyTorch | Transizione fluida da PyTorch a C++ | Specializzato ma più ristretto rispetto a PyTorch | Settore in cui Python rappresenta un collo di bottiglia | Aggiornamenti coerenti con PyTorch | Sicurezza migliorata senza Python completo | Eredita il supporto CUDA da PyTorch |
| ONNX | Variabile a seconda del runtime | Alta tra diversi framework | Ampio ecosistema, supportato da molte organizzazioni | Flessibilità tra framework ML | Aggiornamenti regolari per nuove operazioni | Garantire pratiche sicure di conversione e deployment | Varie ottimizzazioni hardware |
| OpenVINO | Ottimizzato per hardware Intel | Migliore all'interno dell'ecosistema Intel | Solido nel dominio della computer vision | IoT ed edge con hardware Intel | Aggiornamenti regolari per hardware Intel | Funzionalità robuste per applicazioni sensibili | Su misura per hardware Intel |
| TensorRT | Di alto livello su GPU NVIDIA | Migliore per hardware NVIDIA | Forte network tramite NVIDIA | Inferenza video e immagini in tempo reale | Aggiornamenti frequenti per nuove GPU | Enfasi sulla sicurezza | Progettato per GPU NVIDIA |
| CoreML | Ottimizzato per hardware Apple on-device | Esclusivo per l'ecosistema Apple | Forte supporto Apple e per sviluppatori | ML on-device su prodotti Apple | Aggiornamenti Apple regolari | Focus sulla privacy e sicurezza | Apple neural engine e GPU |
| TF SavedModel | Scalabile in ambienti server | Ampia compatibilità nell'ecosistema TensorFlow | Supporto esteso grazie alla popolarità di TensorFlow | Modelli di serving su larga scala | Aggiornamenti regolari da parte di Google e della community | Funzionalità robuste per l'enterprise | Varie accelerazioni hardware |
| TF GraphDef | Stabile per grafi di calcolo statici | Si integra bene con l'infrastruttura TensorFlow | Risorse per l'ottimizzazione di grafi statici | Scenari che richiedono grafi statici | Aggiornamenti insieme al core di TensorFlow | Pratiche di sicurezza consolidate per TensorFlow | Opzioni di accelerazione per TensorFlow |
| TF Edge TPU | Ottimizzato per l'hardware Edge TPU di Google | Esclusivo per dispositivi Edge TPU | In crescita con le risorse di Google e di terze parti | Dispositivi IoT che richiedono elaborazione in tempo reale | Miglioramenti per il nuovo hardware Edge TPU | Sicurezza IoT robusta di Google | Progettato su misura per Google Coral |
| LiteRT | Velocità ed efficienza su dispositivi mobile, embedded e web | Supporto per mobile, sistemi embedded, edge e browser | Community solida, supportata da Google | App on-device per Android, iOS e web | Ultime funzionalità del runtime on-device | Inferenza sicura on-device e in-browser | Accelerazione GPU, DSP e WebGPU |
| PaddlePaddle | Competitivo, facile da usare e scalabile | Ecosistema Baidu, ampio supporto alle applicazioni | In rapida crescita, specialmente in Cina | Mercato cinese ed elaborazione linguistica | Focus sulle applicazioni AI cinesi | Enfatizza la privacy e la sicurezza dei dati | Inclusi i chip Kunlun di Baidu |
| MNN | Alte prestazioni per dispositivi mobili | Sistemi mobili e embedded ARM e CPU X86-64 | Community ML mobile/embedded | Efficienza dei sistemi mobili | Manutenzione ad alte prestazioni su dispositivi mobili | Vantaggi di sicurezza on-device | Ottimizzazioni per CPU e GPU ARM |
| NCNN | Ottimizzato per dispositivi mobili basati su ARM | Sistemi mobili e embedded ARM | Community ML mobile/embedded di nicchia ma attiva | Efficienza dei sistemi Android e ARM | Manutenzione ad alte prestazioni su ARM | Vantaggi di sicurezza on-device | Ottimizzazioni per CPU e GPU ARM |
| Sony IMX500 | Inferenza sul sensore a bassissimo consumo | Sensore Sony IMX500, Raspberry Pi AI Camera | Ecosistema Sony AITRIOS | Edge AI su videocamera | Aggiornamenti SDK Sony e toolchain MCT | I dati rimangono sul sensore | Acceleratore on-chip Sony IMX500 |
| Rockchip RKNN | Ottimizzato per NPU Rockchip | Schede SoC Rockchip (es. RK3588) | Community di sviluppatori Rockchip | SBC integrati e dispositivi edge | Aggiornamenti Rockchip RKNN-Toolkit | Inferenza locale on-device | NPU Rockchip |
| ExecuTorch | Runtime PyTorch on-device efficiente | iOS, Android, integrato tramite XNNPACK | Supportato dal progetto PyTorch | App mobili e integrate | Mantenuto insieme a PyTorch | L'inferenza on-device mantiene i dati locali | XNNPACK e backend CPU/GPU mobili |
| Axelera AI | Througput molto elevato (fino a 856 TOPS) | Metis AIPU tramite PCIe o M.2 | Axelera Voyager SDK | Inferenza edge ad alto throughput | Aggiornamenti Axelera SDK | Inferenza edge on-premises | Axelera Metis AIPU |
| DEEPX | Inferenza NPU ottimizzata INT8 | Hardware NPU DEEPX | Strumenti per sviluppatori DEEPX (dx_com, dx_engine) | Inferenza edge integrata | Aggiornamenti SDK e runtime DEEPX | Inferenza locale on-device | NPU DEEPX |
| Qualcomm QNN | Inferenza Snapdragon on-device veloce | Snapdragon Hexagon NPU, Adreno GPU, CPU | Ecosistema Qualcomm AI Hub | Dispositivi Snapdragon mobili e edge | Aggiornamenti dello stack Qualcomm AI (QAIRT) | L'inferenza on-device mantiene i dati locali | NPU Snapdragon Hexagon |
Questo confronto ti fornisce una panoramica di alto livello. Per la distribuzione, valuta i requisiti e i vincoli specifici del tuo progetto rispetto a ciascuna opzione e consulta la guida all'integrazione collegata per il formato che sceglierai.
Conclusione#
L'ampia gamma di formati di esportazione di YOLO26 ti consente di adattare un modello a quasi qualsiasi ambiente, da un server GPU cloud a una telecamera edge on-sensor. Una volta scelto un formato, segui le best practice per la distribuzione dei modelli per l'ottimizzazione, la risoluzione dei problemi e la sicurezza, e affidati alla community di Ultralytics quando incontri un ostacolo.
FAQ#
Ultralytics YOLO26 supporta vari formati di deployment, ciascuno progettato per ambienti e piattaforme hardware specifici. I formati chiave includono:
- PyTorch per ricerca e prototipazione, con un'eccellente integrazione Python.
- TorchScript per ambienti di produzione in cui Python non è disponibile.
- ONNX per la compatibilità multipiattaforma e l'accelerazione hardware.
- OpenVINO per prestazioni ottimizzate su hardware Intel.
- TensorRT per l'inferenza ad alta velocità su GPU NVIDIA.
Ciascun formato presenta vantaggi unici. Per una procedura dettagliata, consulta la nostra documentazione sul processo di esportazione.
Per migliorare la velocità di inferenza sulle CPU Intel, puoi eseguire il deployment del tuo modello YOLO26 utilizzando il toolkit OpenVINO di Intel. OpenVINO offre notevoli incrementi delle prestazioni ottimizzando i modelli per sfruttare in modo efficiente l'hardware Intel.
- Converti il tuo modello YOLO26 nel formato OpenVINO utilizzando la funzione
model.export(). - Segui la guida di configurazione dettagliata nella documentazione di esportazione Intel OpenVINO.
Per ulteriori approfondimenti, dai un'occhiata al nostro post del blog.
- Converti il tuo modello YOLO26 nel formato OpenVINO utilizzando la funzione
Sì, i modelli YOLO26 possono essere distribuiti su dispositivi mobili utilizzando LiteRT (precedentemente TensorFlow Lite) e NCNN per Android, e CoreML o LiteRT per iOS. LiteRT è il runtime on-device di Google per dispositivi mobili ed embedded ed esegue lo stesso modello su Android, iOS e sul browser, fornendo un'efficiente inferenza on-device.
Esempio# Export command for NCNN format model.export(format="ncnn")Per ulteriori dettagli sulla distribuzione dei modelli su dispositivi mobili, fai riferimento alla nostra guida all'integrazione di LiteRT.
Quando scegli un formato di deployment per YOLO26, considera i seguenti fattori:
- Prestazioni: Alcuni formati come TensorRT offrono velocità eccezionali sulle GPU NVIDIA, mentre OpenVINO è ottimizzato per l'hardware Intel.
- Compatibilità: ONNX offre un'ampia compatibilità tra diverse piattaforme.
- Facilità di integrazione: Formati come CoreML o LiteRT sono progettati rispettivamente per ecosistemi specifici come iOS e Android.
- Supporto della community: Formati come PyTorch e TensorFlow dispongono di ampie risorse e supporto da parte della community.
Per un'analisi comparativa, fai riferimento alla nostra documentazione sui formati di esportazione.
Per distribuire i modelli YOLO26 in un'applicazione Web, puoi utilizzare LiteRT.js, il runtime Web di LiteRT, che consente di eseguire modelli di machine learning direttamente nel browser e in Node.js. Questo approccio elimina la necessità di un'infrastruttura di backend e offre prestazioni in tempo reale.
- Esporta il modello YOLO26 nel formato LiteRT.
- Integra il modello esportato nella tua applicazione web utilizzando LiteRT.js.
Per istruzioni dettagliate, fai riferimento alla nostra guida all'integrazione di LiteRT.