o
    )ic	                     @  s   d dl mZ d dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
mZ d dlmZ ejr3d dlmZ eeZG dd deZdddZdS )    )annotationsN)CLISubcommand)VLLM_SUBCMD_PARSER_EPILOG)show_filtered_argument_or_group_from_help)init_logger)FlexibleArgumentParserc                   @  s,   e Zd ZdZdZedddZdddZdS )RunBatchSubcommandz(The `run-batch` subcommand for vLLM CLI.	run-batchargsargparse.NamespacereturnNonec                 C  sv   ddl m} tdtjd td|  | jr-ddlm	} td || j
| jd ntd	 t||  d S )
Nr   )mainz$vLLM batch processing API version %sZvllmzargs: %s)start_http_serverzPrometheus metrics enabled)portaddrzPrometheus metrics disabled)!vllm.entrypoints.openai.run_batchr   loggerinfo	importlibmetadataversionZenable_metricsZprometheus_clientr   r   urlasynciorun)r
   Zrun_batch_mainr    r   j/home/app/PaddleOCR-VL-test/.venv_paddleocr/lib/python3.10/site-packages/vllm/entrypoints/cli/run_batch.pycmd   s   


zRunBatchSubcommand.cmd
subparsersargparse._SubParsersActionr   c                 C  s<   ddl m} |jddddd}||}t|dg t|_|S )Nr   )make_arg_parserr	   z,Run batch prompts and write results to file.z`Run batch prompts using vLLM's OpenAI-compatible API.
Supports local or HTTP input/output files.z=vllm run-batch -i INPUT.jsonl -o OUTPUT.jsonl --model <model>)helpdescriptionusage)r   r    
add_parserr   r   epilog)selfr   r    Zrun_batch_parserr   r   r   subparser_init/   s   	z!RunBatchSubcommand.subparser_initN)r
   r   r   r   )r   r   r   r   )__name__
__module____qualname____doc__namestaticmethodr   r'   r   r   r   r   r      s    r   r   list[CLISubcommand]c                   C  s   t  gS )N)r   r   r   r   r   cmd_initD   s   r/   )r   r.   )
__future__r   argparser   importlib.metadatar   typingZvllm.entrypoints.cli.typesr   Zvllm.entrypoints.utilsr   r   Zvllm.loggerr   TYPE_CHECKINGZ
vllm.utilsr   r(   r   r   r/   r   r   r   r   <module>   s   .