in targeted-marketing-python/use_model.py [0:0]
def poll_until_completed(ml, model_id):
delay = 2
while True:
model = ml.get_ml_model(MLModelId=model_id)
status = model['Status']
message = model.get('Message', '')
now = str(datetime.datetime.now().time())
print("Model %s is %s (%s) at %s" % (model_id, status, message, now))
if status in ['COMPLETED', 'FAILED', 'INVALID']:
break
# exponential backoff with jitter
delay *= random.uniform(1.1, 2.0)
time.sleep(delay)