o
    2hI
                     @   sP   zd dl Z W n ey   dZ Y nw dd ZdddddZd	d
 Zdd ZdS )    Nc                 O   sN   zddl m} || g|R i |W S  ty#   | j|i | Y S     )zValidate the input data.

    wrapper for sklearn.utils.validation.validate_data or
    BaseEstimator._validate_data depending on the scikit-learn version.

    TODO: remove when minimum scikit-learn version is 1.6
    r   )validate_data)sklearn.utils.validationr   ImportError_validate_data)	estimatorargskwargsr    r	   S/var/www/html/chatgem/venv/lib/python3.10/site-packages/keras/src/wrappers/fixes.pyr      s   r    F)raise_unknownc                   s0    fdd}ddl m} | d}||S )Nc                    s0   r| dkr r
 nd}t d| d| S )zdDepending on the value of raise_unknown, either raise an error or
        return 'unknown'.
        unknowndatazUnknown label type for z: )
ValueError)target_typeinput
input_namer   yr	   r
   _raise_or_return   s   z(type_of_target.<locals>._raise_or_returnr   )type_of_target)r   )sklearn.utils.multiclassr   )r   r   r   r   sk_type_of_targetr   r	   r   r
   r      s   
r   c                   C   s   t  ddS )a  Return whether metadata routing is enabled.

    Returns:
        enabled : bool
            Whether metadata routing is enabled. If the config is not set, it
            defaults to False.

    TODO: remove when the config key is no longer available in scikit-learn
    enable_metadata_routingF)sklearn
get_configgetr	   r	   r	   r
   _routing_enabled+   s   
r   c                 C   sH   |r|j j d| n|j j}t s | r"td| dt|  dS dS )a  Raise an error if metadata routing is not enabled and params are passed.

    Parameters:
        params : dict
            The metadata passed to a method.
        owner : object
            The object to which the method belongs.
        method : str
            The name of the method, e.g. "fit".

    Raises:
        ValueError
            If metadata routing is not enabled and params are passed.
    .z#Passing extra keyword arguments to z is only supported if enable_metadata_routing=True, which you can set using `sklearn.set_config`. See the User Guide <https://scikit-learn.org/stable/metadata_routing.html> for more details. Extra parameters passed are: N)	__class____name__r   r   set)paramsownermethodcallerr	   r	   r
   _raise_for_params8   s   
r&   )r   )r   r   r   r   r   r&   r	   r	   r	   r
   <module>   s    