A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 3, 08:00 UTC
[Misc] add humming to dependencies (#42540)
Signed-off-by: Jinzhen Lin <jinzhen.ljz@antgroup.com>
Jinzhen Lin committed
May 19, 2026 at 23:36 UTC
8200fbe1ac73f00a46b1cdd6c4c93bdaf2c33022
3 files changed
+16
-14
requirements/cuda.txt
+4
-1
@@ -25,4 +25,7 @@ nvidia-cutlass-dsl[cu13]==4.5.1
25
quack-kernels>=0.3.3
26
27
# Tokenspeed_MLA for faster mla with spec decode
28
-tokenspeed-mla==0.1.2
\ No newline at end of file
28
+tokenspeed-mla==0.1.2
29
+
30
+# Humming kernels for quantization gemm
31
+humming-kernels[cu13]==0.1.0
setup.py
+2
@@ -973,6 +973,8 @@ def get_requirements() -> list[str]:
973
if "nvidia-cutlass-dsl[cu13]" in req and cuda_major == "12":
974
# [cu13] extra is the default; strip it on CUDA 12 builds.
975
req = req.replace("nvidia-cutlass-dsl[cu13]", "nvidia-cutlass-dsl")
976
+ if "humming-kernels[cu13]" in req and cuda_major == "12":
977
+ req = req.replace("humming-kernels[cu13]", "humming-kernels[cu12]")
978
modified_requirements.append(req)
979
requirements = modified_requirements
980
elif _is_hip():
vllm/model_executor/layers/quantization/humming.py
+10
-13
@@ -43,12 +43,9 @@ from vllm.model_executor.parameter import (
43
RowvLLMParameter,
44
)
45
from vllm.model_executor.utils import set_weight_attrs
46
+from vllm.platforms import current_platform
47
47
-if TYPE_CHECKING:
48
- from vllm.model_executor.models.utils import WeightsMapper
49
-
50
-
51
-try:
48
+if current_platform.is_cuda():
49
from humming.dtypes import DataType
50
from humming.layer import HummingMethod
51
from humming.schema import (
@@ -65,16 +62,17 @@ try:
62
HummingIndexedExperts,
63
get_humming_moe_gemm_type,
64
)
68
-except ModuleNotFoundError:
69
- HummingMethod = None
65
71
-
72
-def assert_humming_available():
73
- assert HummingMethod is not None, (
74
- "humming is not available, please run "
75
- "'pip install git+https://github.com/inclusionAI/humming' to install it."
66
+if TYPE_CHECKING:
67
+ from humming.schema import (
68
+ BaseInputSchema,
69
+ BaseWeightSchema,
70
+ HummingInputSchema,
71
+ HummingWeightSchema,
72
)
73
74
+ from vllm.model_executor.models.utils import WeightsMapper
75
+
76
77
def prepare_padded_shape(shape, x):
78
padded_shape = math.ceil(shape / x) * x
@@ -186,7 +184,6 @@ class HummingConfig(QuantizationConfig):
184
packed_modules_mapping: dict[str, list[str]] = {}
185
186
def __init__(self, full_config: dict[str, Any] | None = None):
189
- assert_humming_available()
187
self.full_config: dict[str, Any] = full_config or {}
188
189
@classmethod