A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 4, 12:30 UTC
hf_name argument for vllm bench throughput CLI (#41012)
Signed-off-by: Philip Maybank <pmaybank@amd.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
pmaybank committed
Apr 29, 2026 at 13:57 UTC
5b39b268f506150dbab38f6f6c04b7c843e37c07
1 file changed
+45
-7
vllm/benchmarks/throughput.py
+45
-7
@@ -393,29 +393,48 @@ def get_requests(args, tokenizer):
393
elif args.dataset_name == "hf":
394
if args.output_len is not None:
395
sample_kwargs["output_len"] = args.output_len
396
- if args.dataset_path in VisionArenaDataset.SUPPORTED_DATASET_PATHS:
396
+ common_kwargs["hf_name"] = args.hf_name
397
+ if (
398
+ args.dataset_path in VisionArenaDataset.SUPPORTED_DATASET_PATHS
399
+ or args.hf_name in VisionArenaDataset.SUPPORTED_DATASET_PATHS
400
+ ):
401
dataset_cls = VisionArenaDataset
402
common_kwargs["dataset_subset"] = None
403
common_kwargs["dataset_split"] = "train"
404
sample_kwargs["enable_multimodal_chat"] = True
401
- elif args.dataset_path in InstructCoderDataset.SUPPORTED_DATASET_PATHS:
405
+ elif (
406
+ args.dataset_path in InstructCoderDataset.SUPPORTED_DATASET_PATHS
407
+ or args.hf_name in InstructCoderDataset.SUPPORTED_DATASET_PATHS
408
+ ):
409
dataset_cls = InstructCoderDataset
410
common_kwargs["dataset_split"] = "train"
404
- elif args.dataset_path in MultiModalConversationDataset.SUPPORTED_DATASET_PATHS:
411
+ elif (
412
+ args.dataset_path in MultiModalConversationDataset.SUPPORTED_DATASET_PATHS
413
+ or args.hf_name in MultiModalConversationDataset.SUPPORTED_DATASET_PATHS
414
+ ):
415
dataset_cls = MultiModalConversationDataset
416
common_kwargs["dataset_subset"] = args.hf_subset
417
common_kwargs["dataset_split"] = args.hf_split
418
sample_kwargs["enable_multimodal_chat"] = True
409
- elif args.dataset_path in ConversationDataset.SUPPORTED_DATASET_PATHS:
419
+ elif (
420
+ args.dataset_path in ConversationDataset.SUPPORTED_DATASET_PATHS
421
+ or args.hf_name in ConversationDataset.SUPPORTED_DATASET_PATHS
422
+ ):
423
dataset_cls = ConversationDataset
424
common_kwargs["dataset_subset"] = args.hf_subset
425
common_kwargs["dataset_split"] = args.hf_split
426
sample_kwargs["enable_multimodal_chat"] = True
414
- elif args.dataset_path in AIMODataset.SUPPORTED_DATASET_PATHS:
427
+ elif (
428
+ args.dataset_path in AIMODataset.SUPPORTED_DATASET_PATHS
429
+ or args.hf_name in AIMODataset.SUPPORTED_DATASET_PATHS
430
+ ):
431
dataset_cls = AIMODataset
432
common_kwargs["dataset_subset"] = None
433
common_kwargs["dataset_split"] = "train"
418
- elif args.dataset_path in ASRDataset.SUPPORTED_DATASET_PATHS:
434
+ elif (
435
+ args.dataset_path in ASRDataset.SUPPORTED_DATASET_PATHS
436
+ or args.hf_name in ASRDataset.SUPPORTED_DATASET_PATHS
437
+ ):
438
dataset_cls = ASRDataset
439
common_kwargs["dataset_subset"] = args.hf_subset
440
common_kwargs["dataset_split"] = args.hf_split
@@ -557,6 +576,10 @@ def validate_args(args):
576
VisionArenaDataset.SUPPORTED_DATASET_PATHS.keys()
577
| MultiModalConversationDataset.SUPPORTED_DATASET_PATHS
578
| ConversationDataset.SUPPORTED_DATASET_PATHS
579
+ ) or args.hf_name in (
580
+ VisionArenaDataset.SUPPORTED_DATASET_PATHS.keys()
581
+ | MultiModalConversationDataset.SUPPORTED_DATASET_PATHS
582
+ | ConversationDataset.SUPPORTED_DATASET_PATHS
583
):
584
assert args.backend == "vllm-chat", (
585
f"{args.dataset_path} needs to use vllm-chat as the backend."
@@ -565,6 +588,10 @@ def validate_args(args):
588
InstructCoderDataset.SUPPORTED_DATASET_PATHS
589
| AIMODataset.SUPPORTED_DATASET_PATHS
590
| ASRDataset.SUPPORTED_DATASET_PATHS
591
+ ) or args.hf_name in (
592
+ InstructCoderDataset.SUPPORTED_DATASET_PATHS
593
+ | AIMODataset.SUPPORTED_DATASET_PATHS
594
+ | ASRDataset.SUPPORTED_DATASET_PATHS
595
):
596
assert args.backend == "vllm", (
597
f"{args.dataset_path} needs to use vllm as the backend."
@@ -795,7 +822,7 @@ def add_cli_args(parser: argparse.ArgumentParser):
822
"context in a request (default: 0).",
823
)
824
798
- # hf dtaset
825
+ # hf dataset
826
parser.add_argument(
827
"--hf-subset",
828
type=str,
@@ -808,6 +835,17 @@ def add_cli_args(parser: argparse.ArgumentParser):
835
default=None,
836
help="Split of the HF dataset.",
837
)
838
+ parser.add_argument(
839
+ "--hf-name",
840
+ type=str,
841
+ default=None,
842
+ help=(
843
+ "Name of the dataset on HuggingFace "
844
+ "(e.g., 'lmms-lab/LLaVA-OneVision-Data'). "
845
+ "Specify this when --dataset-path is a local filesystem path "
846
+ "so the benchmark can identify the correct dataset class."
847
+ ),
848
+ )
849
parser.add_argument(
850
"--profile",
851
action="store_true",