o
    2hQ                     @   s(  d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d d	lm	Z	 d d
lm
Z
 d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d d l m!Z! d d!l"m#Z# d d"l"m$Z$ eeeeeeeeeeeeeeeeeeeeeee	e
eeeeeehZ%d#d$ e%D Z&ee&d%< e	e&d&< e!d'd(d) Z'e!d*d0d+d,Z(e!d-d.d/ Z)dS )1    N)celu)elu)exponential)gelu)glu)hard_shrink)hard_sigmoid)	hard_silu)	hard_tanh)
leaky_relu)linear)log_sigmoid)log_softmax)mish)relu)relu6)selu)sigmoid)silu)soft_shrink)softmax)softplus)softsign)sparse_plus)sparse_sigmoid)	sparsemax)
squareplus)tanh)tanh_shrink)	threshold)keras_export)object_registration)serialization_libc                 C   s   i | ]}|j |qS  )__name__).0fnr#   r#   Y/var/www/html/chatgem/venv/lib/python3.10/site-packages/keras/src/activations/__init__.py
<dictcomp>F   s    r(   swish
hard_swishzkeras.activations.serializec                 C   sl   t | }d|vrtd|  d| t| tjs|S t|d tr2|d t vr2t	| |d< |S |d S )NconfigzUnknown activation function 'z' cannot be serialized due to invalid function name. Make sure to use an activation name that matches the references defined in activations.py or use `@keras.saving.register_keras_serializable()`to register any custom activations. config=)
r"   serialize_keras_object
ValueError
isinstancetypesFunctionTypestrglobalsr!   get_registered_name)
activation	fn_configr#   r#   r'   	serializeL   s"   
	r6   zkeras.activations.deserializec                 C   s   t j| t|dS )z2Return a Keras activation function via its config.)module_objectscustom_objects)r"   deserialize_keras_objectALL_OBJECTS_DICT)r+   r8   r#   r#   r'   deserializei   s
   r;   zkeras.activations.getc                 C   sX   | du rt S t| trt| }nt| trt| d}n| }t|r%|S t	d|  )z7Retrieve a Keras activation function via an identifier.Nz4Could not interpret activation function identifier: )
r   r.   dictr"   r9   r1   r:   getcallabler-   )
identifierobjr#   r#   r'   r=   s   s   

r=   )N)*r/   !keras.src.activations.activationsr   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   keras.src.api_exportr    keras.src.savingr!   r"   ALL_OBJECTSr:   r6   r;   r=   r#   r#   r#   r'   <module>   s    !
	