o
    0ja                     @   s   U d Z ddlmZmZmZmZ ddlmZmZ ddl	m
Z
mZ G dd deZG dd deZG d	d
 d
eZG dd deZG dd deZe
d Zeed< deeeef  dee fddZdS )zDHPI info and model metadata schema (shared by engines and registry).    )AnyDictListOptional)	BaseModelValidationError)Literal	TypeAliasc                   @   sN   e Zd ZU dZeeeeee  f  e	d< dZ
eeeeee  f  e	d< dS )PaddleInferenceInfoNtrt_dynamic_shapestrt_dynamic_shape_input_data)__name__
__module____qualname__r   r   r   strr   int__annotations__r   float r   r   f/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/paddlex/inference/models/hpi/hpi_info.pyr
      s   
  $r
   c                   @   s.   e Zd ZU dZeeeeee  f  e	d< dS )TensorRTInfoNdynamic_shapes)
r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s   
 $r   c                   @   s.   e Zd ZU dZee ed< dZee ed< dS )InferenceBackendInfoCollectionNpaddle_infertensorrt)	r   r   r   r   r   r
   r   r   r   r   r   r   r   r       s   
 r   c                   @   s   e Zd ZU dZee ed< dS )HPIInfoNbackend_configs)r   r   r   r   r   r   r   r   r   r   r   r   %   s   
 r   c                   @   s&   e Zd ZU eed< dZee ed< dS )	ModelInfonameNhpi_info)r   r   r   r   r   r   r   r   r   r   r   r   r   )   s   
 r   )ZpaddleZonnxomModelFormatmodel_configreturnc              
   C   sN   | rd| vrdS zt | d W S  ty& } z
tdt| |d}~ww )z6Extract and validate HPIInfo from a model config dict.ZHpiNzInvalid HPI info: )r   Zmodel_validater   RuntimeErrorr   )r"   er   r   r   get_hpi_info1   s   r&   N)__doc__typingr   r   r   r   Zpydanticr   r   Ztyping_extensionsr   r	   r
   r   r   r   r   r!   r   r   r&   r   r   r   r   <module>   s   &