GPT-OSS bruker MXFP4-kvantisering (som MLX nå støtter). Det er to FP4-formater som sirkulerer akkurat nå: MXFP4 og NVFP4 (NV for Nvidia). Fra å se på hvordan GPT-OSS bruker MXFP4, er det noe suboptimalt. Jeg tror NVFP4 vil være det mest brukte formatet i fremtiden. Flere detaljer nedenfor: Begge formatene kvantiserer vekter til 4-bits flyttall (e2 m1) med en unik skala per gruppe. Forskjellen er gruppestørrelsen og hvordan skalaen for hver gruppe er kodet. - MXFP4 bruker en e8m0-skala (fikspunkt, 8-bit) med en gruppestørrelse på 32. Den heves til 2 potens før vekten multipliseres. - NVFP4 bruker en e4m3 (fp8) skala med en gruppestørrelse på 16. Det multipliseres med vekten direkte Skalakodingen i MXFP4 er ganske suboptimal fordi den ikke har representasjoner for mange verdier i området vi trenger. Faktisk, hvis du ser på fordelingen av skalaer for GPT-OSS, er den ekstremt konsentrert rundt bare et par verdier. For eksempel, for det andre MoE-laget jeg ser på, brukes bare 8/256 mulige verdier. (Se handlingen).
17,81K