Skip to content

Commit 43ab8cf

Browse files
authored
[MM][Doc] Add documentation for configurable mm profiling (#26200)
Signed-off-by: wwl2755 <wangwenlong2755@gmail.com>
1 parent de253d6 commit 43ab8cf

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

docs/configuration/conserving_memory.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,46 @@ llm = LLM(model="google/gemma-3-27b-it",
122122
limit_mm_per_prompt={"image": 0})
123123
```
124124

125+
### Configurable options
126+
127+
`limit_mm_per_prompt` also accepts configurable options per modality. In the configurable form, you still specify `count`, and you may optionally provide size hints that control how vLLM profiles and reserves memory for your multi‑modal inputs. This helps you tune memory for the actual media you expect, instead of the model’s absolute maxima.
128+
129+
Configurable options by modality:
130+
131+
- `image`: `{"count": int, "width": int, "height": int}`
132+
- `video`: `{"count": int, "num_frames": int, "width": int, "height": int}`
133+
- `audio`: `{"count": int, "length": int}`
134+
135+
Details could be found in [`ImageDummyOptions`][vllm.config.multimodal.ImageDummyOptions], [`VideoDummyOptions`][vllm.config.multimodal.VideoDummyOptions], and [`AudioDummyOptions`][vllm.config.multimodal.AudioDummyOptions].
136+
137+
Examples:
138+
139+
```python
140+
from vllm import LLM
141+
142+
# Up to 5 images per prompt, profile with 512x512.
143+
# Up to 1 video per prompt, profile with 32 frames at 640x640.
144+
llm = LLM(
145+
model="Qwen/Qwen2.5-VL-3B-Instruct",
146+
limit_mm_per_prompt={
147+
"image": {"count": 5, "width": 512, "height": 512},
148+
"video": {"count": 1, "num_frames": 32, "width": 640, "height": 640},
149+
},
150+
)
151+
```
152+
153+
For backward compatibility, passing an integer works as before and is interpreted as `{"count": <int>}`. For example:
154+
155+
- `limit_mm_per_prompt={"image": 5}` is equivalent to `limit_mm_per_prompt={"image": {"count": 5}}`
156+
- You can mix formats: `limit_mm_per_prompt={"image": 5, "video": {"count": 1, "num_frames": 32, "width": 640, "height": 640}}`
157+
158+
!!! note
159+
- The size hints affect memory profiling only. They shape the dummy inputs used to compute reserved activation sizes. They do not change how inputs are actually processed at inference time.
160+
- If a hint exceeds what the model can accept, vLLM clamps it to the model's effective maximum and may log a warning.
161+
162+
!!! warning
163+
These size hints currently only affect activation memory profiling. Encoder cache size is determined by the actual inputs at runtime and is not limited by these hints.
164+
125165
## Multi-modal processor arguments
126166

127167
For certain models, you can adjust the multi-modal processor arguments to

0 commit comments

Comments
 (0)