<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_model_from_settings(settings_key):
 """Return the django model from a settings key. This is the same pattern user for django's "get_user_model()" method. To allow you to set the model instance to a different model subclass. :param settings_key: the key defined in settings to the value for """

    cls_path = getattr(settings, settings_key, None)
    if not cls_path:
        raise NotImplementedError()

    try:
        app_label, model_name = cls_path.split('.')
    except ValueError:
        raise ImproperlyConfigured("{0} must be of the form "
                                   "'app_label.model_name'".format(settings_key))

    model = apps.get_model(app_label, model_name)

    if model is None:
        raise ImproperlyConfigured("{0} refers to model '%s' that has not "
                                   "been installed".format(settings_key))

    return model