@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 5b39b268f5
Fork 0

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",