§
    ¹¯Åjð  ã                   ó>   — d Z ddlmZ ddlmZ  G d„ de¦  «        ZdS )z 
Implements ONNX's backend API.
é    )Ú
BackendRep)Ú
RunOptionsc                   ó   — e Zd ZdZd„ Zd„ ZdS )ÚOnnxRuntimeBackendRepzr
    Computes the prediction for a pipeline converted into
    an :class:`onnxruntime.InferenceSession` node.
    c                 ó   — || _         dS )zG
        :param session: :class:`onnxruntime.InferenceSession`
        N)Ú_session)ÚselfÚsessions     úPC:\Projects\Historical\venv\Lib\site-packages\onnxruntime/backend/backend_rep.pyÚ__init__zOnnxRuntimeBackendRep.__init__   s   € ð  ˆŒˆˆó    c                 óò  ‡
— t          ¦   «         }|                     ¦   «         D ]&\  }}t          ||¦  «        rt          |||¦  «         Œ't	          |t
          ¦  «        r¢i }t          | j                             ¦   «         ¦  «        D ]\  }}||         ||j	        <   Œ| j         
                    d||¦  «        Š
t	          ‰
t
          ¦  «        r‰
S d„ | j                             ¦   «         D ¦   «         }	ˆ
fd„|	D ¦   «         S | j                             ¦   «         }t          |¦  «        dk    r t          dt          |¦  «        › d�¦  «        ‚|d         j	        |i}| j         
                    d||¦  «        S )z`
        Computes the prediction.
        See :meth:`onnxruntime.InferenceSession.run`.
        Nc                 ó   — g | ]	}|j         ‘Œ
S © )Úname)Ú.0Úos     r   ú
<listcomp>z-OnnxRuntimeBackendRep.run.<locals>.<listcomp>-   s   € ÐLÐLÐL¨1 ¤ÐLÐLÐLr   c                 ó    •— g | ]
}‰|         ‘ŒS r   r   )r   r   Úoutss     €r   r   z-OnnxRuntimeBackendRep.run.<locals>.<listcomp>.   s   ø€ Ð<Ð<Ð< t˜˜Tœ
Ð<Ð<Ð<r   é   zModel expect z inputsr   )r   ÚitemsÚhasattrÚsetattrÚ
isinstanceÚlistÚ	enumerater   Ú
get_inputsr   ÚrunÚget_outputsÚlenÚRuntimeError)r	   ÚinputsÚkwargsÚoptionsÚkÚvÚinpsÚiÚinpÚoutput_namesr   s             @r   r   zOnnxRuntimeBackendRep.run   sv  ø€ õ ‘,”,ˆØ—L’L‘N”Nð 	'ð 	'‰DˆAˆqÝ�w Ñ"Ô"ð 'Ý˜  AÑ&Ô&Ð&øå�f�dÑ#Ô#ð 	:ØˆDÝ# D¤M×$<Ò$<Ñ$>Ô$>Ñ?Ô?ð +ð +‘��3Ø!'¨¤��S”X‘�Ø”=×$Ò$ T¨4°Ñ9Ô9ˆDÝ˜$¥Ñ%Ô%ð =Ø�àLÐL°´×0IÒ0IÑ0KÔ0KÐLÑLÔL�Ø<Ð<Ð<Ð<¨|Ð<Ñ<Ô<Ð<à”-×*Ò*Ñ,Ô,ˆCÝ�3‰xŒx˜1Š}ˆ}Ý"Ð#Dµ3°s±8´8Ð#DÐ#DÐ#DÑEÔEÐEØ˜”F”K Ð(ˆDØ”=×$Ò$ T¨4°Ñ9Ô9Ð9r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r      s<   € € € € € ðð ð
 ð  ð  ð:ð :ð :ð :ð :r   r   N)r/   Úonnx.backend.baser   Úonnxruntimer   r   r   r   r   ú<module>r2      si   ðð
ð ð )Ð (Ð (Ð (Ð (Ð (à "Ð "Ð "Ð "Ð "Ð "ð&:ð &:ð &:ð &:ð &:˜Jñ &:ô &:ð &:ð &:ð &:r   