
    קg                     ^    d dl Z	 d dlmZ n# e$ r dZY nw xY wd Z G d d          Zd ZdS )    N)_cudnnc                 F   | dk    rt          t          j        j                  S | dk    rt          t          j        j                  S | dk    rt          t          j        j                  S | dk    rt          t          j        j                  S t          d|            )NRNN_RELURNN_TANHLSTMGRUzUnknown mode: )intr   RNNModernn_relurnn_tanhlstmgru	Exception)modes    T/var/www/html/ai-engine/env/lib/python3.11/site-packages/torch/backends/cudnn/rnn.pyget_cudnn_moder      s    z6>*+++			6>*+++	6>&'''	6>%&&&///000    c                   &    e Zd Zd Zd Zd Zd ZdS )Unserializablec                     || _         d S Ninner)selfr   s     r   __init__zUnserializable.__init__   s    


r   c                     | j         S r   r   r   s    r   getzUnserializable.get!   s
    zr   c                     dS )Nz<unserializable> r   s    r   __getstate__zUnserializable.__getstate__$   s
     "!r   c                     d | _         d S r   r   )r   states     r   __setstate__zUnserializable.__setstate__)   s    


r   N)__name__
__module____qualname__r   r   r!   r$   r    r   r   r   r      sP            " " "
    r   r   c                    dt          t          j                                                  z   }|r| nd}||vs||                                         ^|dk    rt          d           ||<   nEt          t          j        |||t          j        t          j        d                              ||<   ||                                         }|S )Ndesc_r   cuda)self_tydevice)	strtorchr*   current_devicer   r   _cudnn_init_dropout_stateuint8r,   )dropouttraindropout_seeddropout_statedropout_desc_name	dropout_p
dropout_tss          r   init_dropout_stater9   -   s    #ej&?&?&A&A"B"BB 'aI..'(,,..6>>/=d/C/CM+,,/=/ !K <//  0 0M+, 015577Jr   )
torch.cudar.   torch._Cr   ImportErrorr   r   r9   r    r   r   <module>r=      s           FFF
1 
1 
1             s    