B
    ӻd                 @   sV   d Z ddlm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.    )
json_utils)keras_exportzkeras.models.model_from_configNc             C   s*   t | trtdddlm} || |dS )a-  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.
  zn`model_from_config` expects a dictionary, not a list. Maybe you meant to use `Sequential.from_config(config)`?r   )deserialize)custom_objects)
isinstancelist	TypeErrortensorflow.python.keras.layersr   )configr   r    r   ]/var/www/html/venv/lib/python3.7/site-packages/tensorflow/python/keras/saving/model_config.pymodel_from_config   s    
r   zkeras.models.model_from_yamlc             C   s   t ddS )a  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)Zyaml_stringr   r   r   r   model_from_yaml7   s    r   zkeras.models.model_from_jsonc             C   s"   t | }ddlm} |||dS )aM  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   )r   )r   )r   decoder	   r   )Zjson_stringr   r
   r   r   r   r   model_from_jsonQ   s    
r   )N)N)N)__doc__Z*tensorflow.python.keras.saving.saved_modelr   Z tensorflow.python.util.tf_exportr   r   r   r   r   r   r   r   <module>   s    