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, 13:30 UTC
[Bugfix] Fix Mistral3 spatial merge error (#17270)
Signed-off-by: mgoin <mgoin64@gmail.com>
Michael Goin committed
Apr 27, 2025 at 20:40 UTC
cb3f2d8d10ffa13f19e15c8122763aa11fc02e4d
2 files changed
+5
-3
vllm/model_executor/models/mistral3.py
+3
@@ -272,6 +272,9 @@ class Mistral3MultiModalProcessor(
272
273
vision_config = hf_config.vision_config
274
assert isinstance(vision_config, PixtralVisionConfig)
275
+ # Need to sneak in spatial_merge_size for Mistral3
276
+ vision_config.spatial_merge_size = getattr(hf_config,
277
+ "spatial_merge_size", 1)
278
encoder_info = PixtralHFEncoderInfo(vision_config)
279
280
def get_replacement(item_idx: int):
vllm/model_executor/models/pixtral.py
+2
-3
@@ -911,9 +911,8 @@ class PixtralHFEncoderInfo(VisionEncoderInfo[PixtralVisionConfig]):
911
return self.vision_config.image_size
912
913
def get_patch_size(self) -> int:
914
- spatial_merge_size = getattr(self.vision_config, "spatial_merge_size",
915
- 1)
916
- return (self.vision_config.patch_size * spatial_merge_size)
914
+ return (self.vision_config.patch_size *
915
+ self.vision_config.spatial_merge_size)
916
917
def get_patch_grid_length(self) -> int:
918
image_size, patch_size = self.get_image_size(), self.get_patch_size()