
    {-j                     l    d Z ddlmZmZ ddlmZmZ ddlmZm	Z	  ed            G d de          Z
d	S )
z Interface for inference runners.    )ABCabstractmethod)AnyOptional   )add_inference_operations	benchmarkRunnerInferc                   l     e Zd ZdZed	dee         dedefd            Zed
d            Z fdZ	 xZ
S )InferenceRunnerz8Loosely typed protocol for executable inference runners.Nxkwargsreturnc                     dS )z0Run inference with positional or keyword inputs.N )selfr   r   s      q/var/www/html/banglarbhumi/venv/lib/python3.11/site-packages/paddlex/inference/models/runners/inference_runner.py__call__zInferenceRunner.__call__   	     	    c                     dS )z*Release any runner resources if necessary.Nr   )r   s    r   closezInferenceRunner.close!   r   r   c                      t                      j        di | d| j        v r* t          j        d          | j                  | _        d S d S )Nr   r
   )namer   )super__init_subclass____dict__r	   timeit_with_optionsr   )clsr   	__class__s     r   r   z!InferenceRunner.__init_subclass__&   s_    !!++F+++%%L98mLLL CLLL &%r   )N)r   N)__name__
__module____qualname____doc__r   r   r   r   r   r   __classcell__)r    s   @r   r   r      s        BB (3- # #    ^    ^        r   r   N)r$   abcr   r   typingr   r   utils.benchmarkr   r	   r   r   r   r   <module>r)      s    ' & # # # # # # # #                 B B B B B B B B   ' ' '    c     r   