|
8 | 8 |
|
9 | 9 | from vllm.config import (CacheConfig, KVTransferConfig, ModelConfig,
|
10 | 10 | SchedulerConfig, SpeculativeConfig, VllmConfig)
|
11 |
| -from vllm.multimodal.inputs import MultiModalKwargsItem, PlaceholderRange |
| 11 | +from vllm.multimodal.inputs import (MultiModalFeatureSpec, |
| 12 | + MultiModalKwargsItem, PlaceholderRange) |
12 | 13 | from vllm.sampling_params import GuidedDecodingParams, SamplingParams
|
13 | 14 | from vllm.v1.core.sched.output import CachedRequestData, SchedulerOutput
|
14 | 15 | from vllm.v1.core.sched.scheduler import Scheduler
|
@@ -1308,21 +1309,24 @@ def create_requests_with_priority(
|
1308 | 1309 | prompt_logprobs=prompt_logprobs)
|
1309 | 1310 | requests = []
|
1310 | 1311 | for i in range(num_requests):
|
| 1312 | + mm_features = [] |
1311 | 1313 | if mm_positions is not None:
|
1312 | 1314 | mm_position = mm_positions[i]
|
1313 |
| - mm_item = MultiModalKwargsItem.dummy("dummy_m") |
1314 |
| - mm_kwargs = [mm_item] * len(mm_position) |
1315 |
| - else: |
1316 |
| - mm_position = None |
1317 |
| - mm_kwargs = None |
| 1315 | + for j, position in enumerate(mm_position): |
| 1316 | + identifier = f"hash{i}_{j}" |
| 1317 | + mm_feature = MultiModalFeatureSpec( |
| 1318 | + data=MultiModalKwargsItem.dummy("dummy_m"), |
| 1319 | + mm_position=position, |
| 1320 | + identifier=identifier, |
| 1321 | + modality="image") |
| 1322 | + mm_features.append(mm_feature) |
| 1323 | + |
1318 | 1324 | request = Request(
|
1319 | 1325 | request_id=f"{i + starting_idx}",
|
1320 | 1326 | prompt_token_ids=[i + starting_idx] * num_tokens,
|
1321 | 1327 | sampling_params=sampling_params,
|
1322 | 1328 | pooling_params=None,
|
1323 |
| - multi_modal_kwargs=mm_kwargs, |
1324 |
| - multi_modal_placeholders=mm_position, |
1325 |
| - multi_modal_hashes=None, |
| 1329 | + mm_features=mm_features if mm_features else None, |
1326 | 1330 | eos_token_id=EOS_TOKEN_ID,
|
1327 | 1331 | arrival_time=arrival_times[i],
|
1328 | 1332 | priority=priorities[i],
|
@@ -1801,9 +1805,7 @@ def test_schedule_skip_tokenizer_init_structured_output_request():
|
1801 | 1805 | request = Request(
|
1802 | 1806 | request_id="0",
|
1803 | 1807 | prompt_token_ids=[0, 1],
|
1804 |
| - multi_modal_kwargs=None, |
1805 |
| - multi_modal_hashes=None, |
1806 |
| - multi_modal_placeholders=None, |
| 1808 | + mm_features=None, |
1807 | 1809 | sampling_params=sampling_params,
|
1808 | 1810 | pooling_params=None,
|
1809 | 1811 | eos_token_id=EOS_TOKEN_ID,
|
|
0 commit comments