o
    -iS                     @   st   d dl Z d dlZd dlmZ d dlmZ d dlmZ ejr$d dl	m
Z
 ne jZ
G dd deZdee fd	d
ZdS )    N)BenchmarkSubcommandBase)CLISubcommand)VLLM_SUBCMD_PARSER_EPILOG)FlexibleArgumentParserc                   @   sX   e Zd ZdZdZdZedejddfddZ	dejddfd	d
Z
dejdefddZdS )BenchmarkSubcommandz(The `bench` subcommand for the vLLM CLI.benchzvLLM bench subcommand.argsreturnNc                 C   s   |  |  d S Ndispatch_function)r    r   `/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/vllm/entrypoints/cli/benchmark/main.pycmd   s   zBenchmarkSubcommand.cmdc                 C   s   d S r
   r   )selfr   r   r   r   validate   s   zBenchmarkSubcommand.validate
subparsersc              
   C   s   |j | j| j| jd| j dd}|jddd}t D ]1}|j |j|j|jd| j d|j dd}|j|jd	 || t	j
| j d|j d
|_q|S )Nzvllm z <bench_type> [options])helpdescriptionusageT
bench_type)requireddest z
 [options]r   )subcmd)
add_parsernamer   add_subparsersr   __subclasses__set_defaultsr   add_cli_argsr   formatepilog)r   r   bench_parserbench_subparserscmd_clscmd_subparserr   r   r   subparser_init   s(   

z"BenchmarkSubcommand.subparser_init)__name__
__module____qualname____doc__r   r   staticmethodargparse	Namespacer   r   _SubParsersActionr   r'   r   r   r   r   r      s    r   r	   c                   C   s   t  gS r
   )r   r   r   r   r   cmd_init8   s   r0   )r-   typing#vllm.entrypoints.cli.benchmark.baser   vllm.entrypoints.cli.typesr   vllm.entrypoints.utilsr   TYPE_CHECKINGvllm.utils.argparse_utilsr   ArgumentParserr   listr0   r   r   r   r   <module>   s   '