diff --git a/python/sglang/srt/layers/quantization/fp8_kernel.py b/python/sglang/srt/layers/quantization/fp8_kernel.py index 4a3d1093d..814c2650a 100644 --- a/python/sglang/srt/layers/quantization/fp8_kernel.py +++ b/python/sglang/srt/layers/quantization/fp8_kernel.py @@ -1854,6 +1854,10 @@ if _is_cuda: ): return - @torch.library.register_fake("sgl_kernel::sgl_per_token_quant_fp8") - def _(input, output_q, output_s): - return + # FIXME: for some models, this fake registration will cause NaN outputs. + # So we gate the fake registration with an environment variable for them. + if not get_bool_env_var("SGLANG_DISABLE_SGL_KERNEL_FAKE_REGISTER"): + + @torch.library.register_fake("sgl_kernel::sgl_per_token_quant_fp8") + def _(input, output_q, output_s): + return