# This section makes sure you are using the latest boto3 version import sys # import upgraded boto3 since by default boto3 1.9 is in-built to AWS Glue python shell job and this 1.9 version needs to be removed. # So upgrading boto3 version as per this --> https://repost.aws/questions/QUGL8ViiigQwGdR8gj0L0anw?threadID=327010 sys.path.insert(0, '/glue/lib/installation') keys = [k for k in sys.modules.keys() if 'boto' in k] for k in keys: if 'boto' in k: del sys.modules[k] import boto3 from awsglue.utils import getResolvedOptions args = getResolvedOptions(sys.argv, ['s3_input_data_folder', 's3_output_data_folder', 'l4vProjectName' , 'l4vModelVersion']) # Training & Inferencea input_bucket = args['s3_input_data_folder'] project_name = args['l4vProjectName'] model_version = args['l4vModelVersion'] # Inference output_bucket = args['s3_output_data_folder'] input_prefix = 'inputimages/' output_prefix = 'predictedresults/' # Import lookout python library - needed to get started: from lookoutvision.lookoutvision import LookoutForVision l4v = LookoutForVision(project_name=project_name) # Run the batch prediction l4v.batch_predict( model_version=model_version, input_bucket=input_bucket, input_prefix=input_prefix, output_bucket =output_bucket, output_prefix=output_prefix, content_type="image/jpeg")