[Bugfix] MiniCPM-V 4.6: fix grid rows/cols swap in placeholder generation (#45918)
Signed-off-by: tc-mb <tianchi_cai@icloud.com>
tc-mb committed
Jun 30, 2026 at 23:12 UTC
7cf7cbcd9500028f230deff5d194da2f00a2728b
1 file changed
+2
-2
vllm/model_executor/models/minicpmv4_6.py
+2
-2
@@ -140,7 +140,7 @@ class MiniCPMV4_6MultiModalProcessor(MiniCPMVMultiModalProcessor):
140
per_frame = image_start + video_token * source_tokens + image_end
141
if grids[0] > 0 and grids[1] > 0 and patch_tokens > 0:
142
slice_ph = slice_start + video_token * patch_tokens + slice_end
143
- rows = [slice_ph * grids[0] for _ in range(grids[1])]
143
+ rows = [slice_ph * grids[1] for _ in range(grids[0])]
144
per_frame += "\n".join(rows)
145
146
body = per_frame * num_frames
@@ -596,7 +596,7 @@ class MiniCPMV4_6ProcessingInfo(MiniCPMVProcessingInfo):
596
if use_image_id:
597
placeholder = f"{id_start}{image_idx}{id_end}" + placeholder
598
599
- num_cols, num_rows = grids[0], grids[1]
599
+ num_rows, num_cols = grids[0], grids[1]
600
if num_cols > 0 and num_rows > 0 and patch_tokens > 0:
601
slice_ph = slice_start + image_token * patch_tokens + slice_end
602
slices = [slice_ph * num_cols for _ in range(num_rows)]