FP4
Scopri come la quantizzazione FP4 comprime i modelli AI, riduce l'uso della memoria e accelera l'inferenza. Confronta i formati NVFP4, MXFP4, FP8, INT4 e FP16.
FP4 è una famiglia di formati in virgola mobile a 4 bit utilizzati per comprimere e accelerare i modelli di intelligenza artificiale tramite la quantizzazione del modello. Tipicamente rappresenta ogni valore con un bit di segno, due bit di esponente e un bit di mantissa, chiamato E2M1. Rispetto a FP16, FP4 può ridurre notevolmente il traffico di memoria e lo spazio di archiviazione, aiutando le GPU supportate a elaborare modelli di grandi dimensioni più velocemente. Il formato a bassa precisione NVFP4 di NVIDIA è un'implementazione importante progettata per l'hardware di generazione Blackwell. (developer.nvidia.com)
Link to this sectionCome funziona FP4#
Con soli 16 possibili pattern di bit, il formato FP4 standard non può rappresentare accuratamente l'ampia gamma di valori presenti nelle reti neurali. Le implementazioni moderne dividono quindi i tensori in piccoli blocchi e memorizzano una scala condivisa per ciascun blocco. Lo schema di quantizzazione NVFP4 di NVIDIA, ad esempio, utilizza blocchi di 16 valori E2M1, mentre la specifica aperta OCP Microscaling Formats definisce MXFP4 con metadati di microscaling.
Durante il calcolo, un motore di inferenza quantizza i valori a precisione più elevata, esegue le operazioni di matrice supportate in FP4 e restituisce i risultati a una precisione maggiore quando necessario. L'attuale supporto all'inferenza TorchAO NVFP4 utilizza la quantizzazione dinamica delle attivazioni e il doppio scaling per pesi e attivazioni. (docs.nvidia.com)
Link to this sectionConfronto tra FP4 e formati correlati#
- FP16 o mezza precisione: Offre una gamma numerica molto più ampia ed è generalmente più facile da implementare, ma utilizza quattro volte più bit per valore.
- FP8: Di solito fornisce una precisione e una stabilità di addestramento migliori rispetto a FP4, richiedendo circa il doppio dello spazio di archiviazione.
- BF16: Comunemente usato per l'addestramento poiché il suo ampio intervallo di esponenti riduce il rischio di overflow. Lo studio del 2025 FP4 All the Way ha mostrato che un addestramento FP4 accuratamente scalato può avvicinarsi alle prestazioni di BF16.
- INT4: Utilizza livelli interi invece di esponenti in virgola mobile. FP4 può rappresentare i valori su diverse grandezze in modo più naturale, mentre INT4 può funzionare bene per la compressione dei soli pesi.
- NVFP4 contro MXFP4: NVFP4 utilizza blocchi più piccoli e scale a precisione più elevata, migliorando in genere la precisione a fronte di un modesto costo in termini di metadati.
FP4 può anche riferirsi a un socket per processore AMD FP4 non correlato. Nell'IA, FP4 indica l'aritmetica in virgola mobile a quattro bit, non il vecchio pacchetto CPU per laptop.
Link to this sectionApplicazioni nel mondo reale#
-
Inferenza di immagini generative: NVIDIA ha dimostrato la generazione di immagini FP4 su GPU RTX serie 50, riducendo l'uso della memoria e accelerando i carichi di lavoro di diffusione utilizzati nell'IA generativa.
-
Addestramento e distribuzione di modelli di grandi dimensioni: I sistemi Blackwell hanno utilizzato NVFP4 nell'addestramento MLPerf per migliorare il throughput dei modelli linguistici di grandi dimensioni. FP4 può allo stesso modo avvantaggiare i futuri sistemi di computer vision limitati dalla memoria che richiedono inferenza in tempo reale. (developer.nvidia.com)
Link to this sectionUtilizzo efficace di FP4#
A luglio 2026, le operazioni matriciali FP4 accelerate dall'hardware richiedono GPU NVIDIA Blackwell o superiori; l'H100 è basato su architettura Hopper e non fornisce accelerazione FP4 nativa. Dovresti confermare la compatibilità tramite la matrice di supporto hardware TensorRT, convalidare la precisione dopo la conversione e prendere in considerazione l'addestramento consapevole della quantizzazione utilizzando il flusso di lavoro TorchAO QAT quando la quantizzazione post-addestramento causa un degrado eccessivo. (docs.nvidia.com)
Ultralytics fornisce attualmente l'esportazione FP16 e INT8 pronta per la produzione per YOLO26. Questo flusso di lavoro comparabile crea un motore TensorRT ottimizzato:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
engine = model.export(format="engine", quantize=16)
results = YOLO(engine).predict("https://ultralytics.com/images/bus.jpg")L'integrazione Ultralytics TensorRT spiega le opzioni di precisione supportate, mentre la modalità benchmark YOLO ti aiuta a confrontare precisione e latenza. Per l'implementazione sperimentale di FP4, segui le best practice di precisione TensorRT-RTX e le tecniche specifiche del formato come Micro-Rotated GPTQ, poiché FP4 non è automaticamente più preciso o veloce di un flusso di lavoro INT4 o FP8 ben ottimizzato.






