From 7cf7cbcd9500028f230deff5d194da2f00a2728b Mon Sep 17 00:00:00 2001 From: tc-mb <157115220+tc-mb@users.noreply.github.com> Date: Tue, 30 Jun 2026 23:12:44 +0800 Subject: [PATCH] [Bugfix] MiniCPM-V 4.6: fix grid rows/cols swap in placeholder generation (#45918) Signed-off-by: tc-mb --- vllm/model_executor/models/minicpmv4_6.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vllm/model_executor/models/minicpmv4_6.py b/vllm/model_executor/models/minicpmv4_6.py index 79ac79d709a..6cdc3624151 100644 --- a/vllm/model_executor/models/minicpmv4_6.py +++ b/vllm/model_executor/models/minicpmv4_6.py @@ -140,7 +140,7 @@ class MiniCPMV4_6MultiModalProcessor(MiniCPMVMultiModalProcessor): per_frame = image_start + video_token * source_tokens + image_end if grids[0] > 0 and grids[1] > 0 and patch_tokens > 0: slice_ph = slice_start + video_token * patch_tokens + slice_end - rows = [slice_ph * grids[0] for _ in range(grids[1])] + rows = [slice_ph * grids[1] for _ in range(grids[0])] per_frame += "\n".join(rows) body = per_frame * num_frames @@ -596,7 +596,7 @@ class MiniCPMV4_6ProcessingInfo(MiniCPMVProcessingInfo): if use_image_id: placeholder = f"{id_start}{image_idx}{id_end}" + placeholder - num_cols, num_rows = grids[0], grids[1] + num_rows, num_cols = grids[0], grids[1] if num_cols > 0 and num_rows > 0 and patch_tokens > 0: slice_ph = slice_start + image_token * patch_tokens + slice_end slices = [slice_ph * num_cols for _ in range(num_rows)]