[Bugfix][MiniCPM-V] Fix AssertionError in get_dummy_mm_data when passing VideoDummyOptions to _get_dummy_images (#52122)
Signed-off-by: mayuyuace <qiming1.zhang@intel.com>
Qiming Zhang committed
Aug 13, 2026 at 08:44 UTC
96acd473a7f1b4dd5a8e09752183617d3b82089e
1 file changed
+18
-2
vllm/model_executor/models/minicpmv.py
+18
-2
@@ -44,7 +44,11 @@ from transformers.dynamic_module_utils import (
44
from typing_extensions import TypeVar
45
46
from vllm.config import VllmConfig
47
-from vllm.config.multimodal import BaseDummyOptions
47
+from vllm.config.multimodal import (
48
+ BaseDummyOptions,
49
+ ImageDummyOptions,
50
+ VideoDummyOptions,
51
+)
52
from vllm.inputs import ModalityData, MultiModalDataDict
53
from vllm.model_executor.layers.quantization import QuantizationConfig
54
from vllm.model_executor.layers.resampler import (
@@ -811,6 +815,18 @@ class MiniCPMVDummyInputsBuilder(BaseDummyInputsBuilder[_I]):
815
image_overrides = mm_options.get("image")
816
video_overrides = mm_options.get("video")
817
818
+ # Convert video overrides to image overrides for per-frame image generation,
819
+ # and apply num_frames override to num_video_frames.
820
+ video_frame_overrides: ImageDummyOptions | None = None
821
+ if isinstance(video_overrides, VideoDummyOptions):
822
+ if video_overrides.num_frames:
823
+ num_video_frames = min(num_video_frames, video_overrides.num_frames)
824
+ if video_overrides.width or video_overrides.height:
825
+ video_frame_overrides = ImageDummyOptions(
826
+ width=video_overrides.width,
827
+ height=video_overrides.height,
828
+ )
829
+
830
return {
831
"image": self._get_dummy_images(
832
width=image_width,
@@ -823,7 +839,7 @@ class MiniCPMVDummyInputsBuilder(BaseDummyInputsBuilder[_I]):
839
width=video_width,
840
height=video_height,
841
num_images=num_video_frames,
826
- overrides=video_overrides,
842
+ overrides=video_frame_overrides,
843
)
844
]
845
* num_videos,