@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 2f2fcb31b8
Fork 0

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 15, 03:30 UTC

[Misc] Remove _maybe_ignore_quant_config from GLM4.1v (#20432)

Signed-off-by: zRzRzRzRzRzRzR <2448370773@qq.com>

Yuxuan Zhang committed Jul 4, 2025 at 05:41 UTC 2f2fcb31b81f6025a2cc3cb9fe5b95bd03a5861b
1 file changed +9 -18
vllm/model_executor/models/glm4_1v.py
+9 -18
@@ -55,9 +55,6 @@ from vllm.model_executor.layers.linear import (ColumnParallelLinear,
55 QKVParallelLinear,
56 RowParallelLinear)
57 from vllm.model_executor.layers.quantization import QuantizationConfig
58 -from vllm.model_executor.layers.quantization.gptq import GPTQConfig
59 -from vllm.model_executor.layers.quantization.gptq_marlin import (
60 - GPTQMarlinConfig)
58 from vllm.model_executor.model_loader.weight_utils import default_weight_loader
59 from vllm.model_executor.models.module_mapping import MultiModelKeys
60 from vllm.multimodal import MULTIMODAL_REGISTRY
@@ -179,6 +176,7 @@ class Glm4vVisionMLP(nn.Module):
176 hidden_features: int,
177 bias: bool = False,
178 quant_config: Optional[QuantizationConfig] = None,
179 + prefix: str = "",
180 ):
181 super().__init__()
182 self.gate_up_proj = MergedColumnParallelLinear(
@@ -186,13 +184,12 @@ class Glm4vVisionMLP(nn.Module):
184 output_sizes=[hidden_features] * 2,
185 bias=bias,
186 quant_config=quant_config,
189 - )
190 - self.down_proj = RowParallelLinear(
191 - hidden_features,
192 - in_features,
193 - bias=bias,
194 - quant_config=quant_config,
195 - )
187 + prefix=f"{prefix}.gate_up_proj")
188 + self.down_proj = RowParallelLinear(hidden_features,
189 + in_features,
190 + bias=bias,
191 + quant_config=quant_config,
192 + prefix=f"{prefix}.down_proj")
193 self.act_fn = SiluAndMul()
194
195 def forward(self, x: torch.Tensor):
@@ -407,6 +404,7 @@ class Glm4vVisionBlock(nn.Module):
404 mlp_hidden_dim,
405 bias=False,
406 quant_config=quant_config,
407 + prefix=f"{prefix}.mlp",
408 )
409
410 def forward(
@@ -1278,7 +1276,7 @@ class Glm4vForConditionalGeneration(nn.Module, SupportsMultiModal,
1276 self.visual = Glm4vVisionTransformer(
1277 config.vision_config,
1278 norm_eps=getattr(config, "rms_norm_eps", 1e-5),
1281 - quant_config=self._maybe_ignore_quant_config(quant_config),
1279 + quant_config=quant_config,
1280 prefix=maybe_prefix(prefix, "visual"),
1281 )
1282
@@ -1291,13 +1289,6 @@ class Glm4vForConditionalGeneration(nn.Module, SupportsMultiModal,
1289 self.make_empty_intermediate_tensors = (
1290 self.language_model.make_empty_intermediate_tensors)
1291
1294 - def _maybe_ignore_quant_config(self, quant_config: QuantizationConfig):
1295 - # GPTQ configs do not have a list of ignored modules, however AutoGPTQ
1296 - # seems to avoid vision encoder sections for some models.
1297 - if isinstance(quant_config, (GPTQConfig, GPTQMarlinConfig)):
1298 - return None
1299 - return quant_config
1300 -
1292 def _validate_and_reshape_mm_tensor(self, mm_input: object,
1293 name: str) -> torch.Tensor:
1294 if not isinstance(mm_input, (torch.Tensor, list)):