def lambda_handler()

in functions/start_model/app.py [0:0]


def lambda_handler(event, context):
    
    rekog_client = boto3.client('rekognition')
    projectversionarn = os.environ['rekog_model_project_version_arn']
    projectarn = os.environ['rekog_model_project_arn']
    # running_states = ['STARTING', 'RUNNING']
    projectversionname = projectversionarn.split("/")[3]
    # Check if already running
    # Call Custom Rekognition project version
    try:
        isrunning_response = rekog_client.describe_project_versions(
            ProjectArn=projectarn,
            VersionNames=[projectversionname]
        )
    except Exception as e:
        print(e)
        
    running_status = isrunning_response['ProjectVersionDescriptions'][0]['Status']
    if running_status == 'RUNNING':
        # Do nothing
        print('Model Start Status: %s' % running_status)
        return 'RUNNING'
    if running_status == 'STARTING':
        # Do nothing
        print('Model Start Status: %s' % running_status)
        return 'STARTING'
    else:
        # If not running - Start
        try:
            running_status = rekog_client.start_project_version(
                ProjectVersionArn = projectversionarn,                
                MinInferenceUnits = 1 #Can be increased upto 5 for running multiple inference units
            )
        except Exception as e:
            print(e)
        return running_status