def model_from_config(config, custom_objects=None):
    """Instantiates a Keras model from its config.

    # Arguments
        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.
    """
    if isinstance(config, list):
        raise TypeError(
            '`model_from_config` expects a dictionary, not a list. Maybe you meant to use `Sequential.from_config(config)`?'
            )
    from ..layers import deserialize
    return deserialize(config, custom_objects=custom_objects)
