a
    SicL                     @   sJ   d Z ddlmZ eddddZedddd	Zed
dddZdS )z>Functions that save the model's config into different formats.    )keras_exportzkeras.models.model_from_configNc                 C   s2   t | trtd|  dddlm} || |dS )aO  Instantiates a Keras model from its config.

    Usage:
    ```
    # for a Functional API model
    tf.keras.Model().from_config(model.get_config())

    # for a Sequential model
    tf.keras.Sequential().from_config(model.get_config())
    ```

    Args:
        config: Configuration dictionary.
        custom_objects: Optional dictionary mapping names
            (strings) to custom classes or functions to be
            considered during deserialization.

    Returns:
        A Keras model instance (uncompiled).

    Raises:
        TypeError: if `config` is not a dictionary.
    zG`model_from_config` expects a dictionary, not a list. Received: config=z8. Did you meant to use `Sequential.from_config(config)`?r   )deserializecustom_objects)
isinstancelist	TypeErrorkeras.layersr   )configr   r    r   U/var/www/html/django/DPS/env/lib/python3.9/site-packages/keras/saving/model_config.pymodel_from_config   s    
r   zkeras.models.model_from_yamlc                 C   s   t ddS )a3  Parses a yaml model configuration file and returns a model instance.

    Note: Since TF 2.6, this method is no longer supported and will raise a
    RuntimeError.

    Args:
        yaml_string: YAML string or open file encoding a model configuration.
        custom_objects: Optional dictionary mapping names
            (strings) to custom classes or functions to be
            considered during deserialization.

    Returns:
        A Keras model instance (uncompiled).

    Raises:
        RuntimeError: announces that the method poses a security risk
    zMethod `model_from_yaml()` has been removed due to security risk of arbitrary code execution. Please use `Model.to_json()` and `model_from_json()` instead.N)RuntimeError)yaml_stringr   r   r   r   model_from_yaml:   s    r   zkeras.models.model_from_jsonc                 C   s   ddl m} || |dS )ai  Parses a JSON model configuration string and returns a model instance.

    Usage:

    >>> model = tf.keras.Sequential([
    ...     tf.keras.layers.Dense(5, input_shape=(3,)),
    ...     tf.keras.layers.Softmax()])
    >>> config = model.to_json()
    >>> loaded_model = tf.keras.models.model_from_json(config)

    Args:
        json_string: JSON string encoding a model configuration.
        custom_objects: Optional dictionary mapping names
            (strings) to custom classes or functions to be
            considered during deserialization.

    Returns:
        A Keras model instance (uncompiled).
    r   )deserialize_from_jsonr   )r	   r   )json_stringr   r   r   r   r   model_from_jsonT   s    r   )N)N)N)__doc__ tensorflow.python.util.tf_exportr   r   r   r   r   r   r   r   <module>   s   #