def lambda_handler()

in source/lambda/model-invocation/index.py [0:0]


def lambda_handler(event, context):
    logger.info(event)
    metadata = event.get('metadata', None)
    assert metadata, "Request did not include metadata!"
    data_payload = event.get('data', None)
    assert data_payload, "Payload did not include a data field!"
    model_choice = event.get('model', None)
    valid_models = {'anomaly_detector', 'fraud_classifier'}
    if model_choice:
        assert model_choice in valid_models, "The requested model, {}, was not a valid model name {}".format(model_choice, valid_models)
    models = {model_choice} if model_choice else valid_models

    output = {}
    if 'anomaly_detector' in models:
        output["anomaly_detector"] = get_anomaly_prediction(data_payload)

    if 'fraud_classifier' in models:
        output["fraud_classifier"] = get_fraud_prediction(data_payload)

    store_data_prediction(output, metadata)
    return output