a
    ãÀh  ã                   @  s<   d dl mZ d dlmZmZ d dlmZ G dd„ deƒZdS )é    )Úannotations)ÚTensorÚnn)ÚModulec                      s^   e Zd ZU dZdgZded< dddœ‡ fdd	„Zd
dœdd„Zddœddddœdd„Z‡  Z	S )ÚDropoutzUDropout layer.

    Args:
        dropout: Sets a dropout value for dense layer.
    Údropoutz	list[str]Úconfig_keysçš™™™™™É?Úfloat)r   c                   s"   t ƒ  ¡  || _t | j¡| _d S ©N)ÚsuperÚ__init__r   r   r   Údropout_layer)Úselfr   ©Ú	__class__© ú`/var/www/html/assistant/venv/lib/python3.9/site-packages/sentence_transformers/models/Dropout.pyr      s    
zDropout.__init__zdict[str, Tensor])Úfeaturesc                 C  s   |  d|  |d ¡i¡ |S )NZsentence_embedding)Úupdater   )r   r   r   r   r   Úforward   s    zDropout.forwardT)Úsafe_serializationÚstrÚboolÚNone)Úoutput_pathr   Úreturnc                O  s   |   |¡ d S r   )Zsave_config)r   r   r   ÚargsÚkwargsr   r   r   Úsave   s    zDropout.save)r	   )
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__r   r   r   Ú__classcell__r   r   r   r   r      s
   
r   N)Ú
__future__r   Ztorchr   r   Z#sentence_transformers.models.Moduler   r   r   r   r   r   Ú<module>   s   