{"record":{"id":"72fcaf08a47a71ab","repo":"sgl-project/sglang","slug":"humming-quantization-requires-humming-kernels-p","errorCode":null,"errorMessage":"Humming quantization requires `humming-kernels`. Please install it to use `--quantization humming`.","messagePattern":"Humming quantization requires `humming-kernels`\\. Please install it to use `--quantization humming`\\.","errorType":"exception","errorClass":"ImportError","httpStatus":null,"severity":"error","filePath":"python/sglang/srt/layers/quantization/humming.py","lineNumber":80,"sourceCode":"        from humming.dtypes import DataType as _DataType\n        from humming.layer import HummingMethod as _HummingMethod\n        from humming.schema import BaseInputSchema as _BaseInputSchema\n        from humming.schema import BaseWeightSchema as _BaseWeightSchema\n        from humming.schema import HummingInputSchema as _HummingInputSchema\n        from humming.schema import HummingWeightSchema as _HummingWeightSchema\n        from humming.utils.weight import quantize_weight as _quantize_weight\n    except ImportError as err:\n        if isinstance(err, ModuleNotFoundError) and err.name == \"humming\":\n            message = (\n                \"Humming quantization requires `humming-kernels`. \"\n                \"Please install it to use `--quantization humming`.\"\n            )\n        else:\n            message = (\n                \"Failed to import Humming quantization dependencies from \"\n                f\"`humming-kernels`: {err}\"\n            )\n        raise ImportError(message) from err\n\n    DataType = _DataType\n    HummingMethod = _HummingMethod\n    BaseInputSchema = _BaseInputSchema\n    BaseWeightSchema = _BaseWeightSchema\n    HummingInputSchema = _HummingInputSchema\n    HummingWeightSchema = _HummingWeightSchema\n    quantize_weight = _quantize_weight\n\n\ndef prepare_padded_shape(shape, x):\n    padded_shape = math.ceil(shape / x) * x\n    return padded_shape, padded_shape - shape\n\n\ndef prepare_param(tensor, name, extra_attrs):\n    extra_attrs = extra_attrs.copy()\n    scale_type = extra_attrs.pop(\"scale_type\", None)","sourceCodeStart":62,"sourceCodeEnd":98,"githubUrl":"https://github.com/sgl-project/sglang/blob/0132848349585cfe6aae51c4941cbae872505f8a/python/sglang/srt/layers/quantization/humming.py#L62-L98","documentation":"The Humming (W4A8/FP8) quantization path lazily imports `humming-kernels`; if the `humming` package is missing (ModuleNotFoundError) or its internal imports fail, _lazy_import_humming raises ImportError telling you to install humming-kernels to use --quantization humming.","triggerScenarios":"Starting SGLang with --quantization humming (or loading a model whose quant_method is humming) without the humming-kernels wheel installed, or with an incompatible/broken version of it.","commonSituations":"GPU image that doesn't bundle humming-kernels; version mismatch where humming is installed but its dtypes/layer/schema submodules fail to import; CI environments missing optional dependencies.","solutions":["pip install humming-kernels (matching the version required by your sglang release)","If already installed, upgrade/downgrade it to a compatible version and retry","Verify with python -c \"import humming.dtypes, humming.layer, humming.schema\" that all submodules import cleanly","If not intending to use Humming, remove --quantization humming or use a checkpoint with a different quant method"],"exampleFix":"# before\npython -m sglang.launch_server --model humming-model --quantization humming  # ImportError\n\n# after\npip install humming-kernels\npython -m sglang.launch_server --model humming-model --quantization humming","handlingStrategy":"try-catch","validationCode":"try:\n    import humming.dtypes, humming.layer, humming.schema  # noqa\n    humming_available = True\nexcept ImportError:\n    humming_available = False\nif args.quantization == \"humming\" and not humming_available:\n    raise SystemExit(\"pip install humming-kernels before using --quantization humming\")","typeGuard":"def humming_ready() -> bool:\n    try:\n        import humming.layer  # noqa: F401\n        return True\n    except ImportError:\n        return False","tryCatchPattern":"try:\n    from sglang.srt.layers.quantization.humming import HummingConfig\nexcept ImportError as e:\n    if \"humming-kernels\" in str(e):\n        sys.exit(\"Install humming-kernels: pip install humming-kernels\")\n    raise","preventionTips":["Bake humming-kernels into Docker images used for humming models","Gate --quantization humming behind an import check at startup","Pin a compatible humming-kernels version in requirements"],"tags":["humming","quantization","missing-dependency","import-error","installation"],"backgroundTag":"missing-optional-dependency","analyzedSha":"0132848349585cfe6aae51c4941cbae872505f8a","analyzedAt":"2026-08-28T05:10:05.995Z","schemaVersion":2},"datasetVersion":"2026-08-28T06:17:29.519Z"}