AWS API-шлюз + лямбда + EC2, возвращающий 503 Ошибка службы недоступна через 5 секунд - PullRequest
1 голос
/ 17 марта 2020

Я хочу развернуть мою модель машинного обучения в производстве. Я использую API Gateway + Lambda для запуска вывода на экземпляре EC2. Вывод занимает некоторое время (~ 30 секунд). Время ожидания лямбда установлено на 2 минуты. Когда я использую Postman или мой браузер для вызова HTTP API, я получаю ошибку 503 Service Unavailable в течение 5 секунд. В бэкэнде я вижу, что запрос выполнен успешно, и ответ об успешной отправке возвращается в Lambda (примерно через 30 секунд). Я прочитал, что максимальное время ожидания шлюза API составляет 30 секунд. Мне интересно, почему я получаю тайм-аут в 5 секунд тогда? Я следую приведенным здесь инструкциям по развертыванию моей модели: https://francescopochetti.com/deploying-a-pretrained-gpt-2-model-on-aws/#Deploying_with_Lambda_EC2_and_DynamoDB

Лямбда-код аналогичен приведенному здесь: https://github.com/gabrielelanaro/ml-prototypes/blob/master/prototypes/styletransfer/huggingface/hugging_lambda.py.

Если это помогает, вы можете вызвать API, используя этот URL: https://eekq9x0azg.execute-api.ap-south-1.amazonaws.com/gpt2?prompt=%20%22Nikhil%22&num_samples=3&length=60&temperature=0.7&top_p=0.9&top_k=40

Лямбда-журналы в Cloudwatch:

2020-03-18T09: 56 : 51.520 + 05: 30 START RequestId: 59129756-d233-4bd5-8059-4087bd9f47e3 Версия: $ LATEST

2020-03-18T09: 56: 51.524 + 05: 30

EVENT

2020-03-18T09: 56: 51.704 + 05: 30 ['cd / home / ubuntu', 'shutdown -h +15', 'sudo -i -u ubuntu bash << - EOF', 'source ~ / .bashr c', 'source env / bin / activ', 'python3 gpt2-tweets.py --prompt = "" Nikhil "" --dynamoid = 189377 --num_samples = 3 - длина = 60 - температура = 0,7 --top_p = 0,9 --top_k = 40 '] </p>

2020-03-18T09: 57: 22,051 + 05: 30 Запрос вернул следующие элементы:

2020-03-18T09: 57: 22.051 + 05: 30 [{'id': Decimal ('189377'), 'text': '' Nikhil ji: \ n \ "Я не знаю, что делать ты хочешь сказать нации? Я в Великобритании. Но я не знаю, о чем ты говоришь. Извините, это не главное. Я не знаю, что вы хотите сказать нации. Я "'}]

2020-03-18T09: 57: 22.091 + 05: 30 END RequestId: 59129756-d233-4bd5-8059-4087bd9f47e3

2020-03-18T09: 57 : 22.091 + 05: 30 ОТЧЕТ RequestId: 59129756-d233-4bd5-8059-4087bd9f47e3 Продолжительность: 30567,70 мс Биллинг Продолжительность: 30600 мс Размер памяти: 128 МБ Макс. Используемая память: 100 МБ

Спасибо.

1 Ответ

1 голос
/ 18 марта 2020

Обнаружено, что для API по умолчанию установлено время ожидания 5 секунд. См. Прикрепленное изображение, чтобы изменить его. enter image description here

...