Как устранить ошибки 5xx в платформе прогнозирования GCP AI?

Нам удалось развернуть модели (как пользовательские прогнозы, так и форматы Tensorflow SavedModel) на платформе AI Prediction Platform, и базовое тестирование показывает, что все по крайней мере функционально для онлайн-прогнозов. Сейчас мы пытаемся немного провести нагрузочный тест, прежде чем запускать его в производство, и решаем некоторые проблемы со стабильностью.

Мы видим множество ошибок - 429 - Скорость трафика превышает пропускную способность. Уменьшите свой трафик или уменьшите размер вашей модели 503 - ошибка восходящего подключения или отключение / сброс перед заголовками. причина сброса: сбой подключения 504 - Истекло время ожидания уведомления.

Мы реализовали экспоненциальный подход к отсрочке, который, как правило, помогает со временем решить вышеуказанные проблемы. Однако мы хотим убедиться, что понимаем, что происходит.

429-е кажутся простыми - подождите, пока что-то масштабируется.

Ошибки 503/504, мы не уверены, в чем причина и как решить / устранить. Мы играли с размером партии (согласно Модель TensorFlow, обслуживающая онлайн-прогнозирование платформы Google AI Platform, слишком медленная с пакетами экземпляров - похоже, что она не выполняет никаких внутренних оптимизаций для больших пакетов), размер машины и т. д. Нет конечно, если это проблема с ресурсами, хотя мы видим эти ошибки при небольших размерах пакетов (количество экземпляров).

Кто-нибудь еще испытывает эти проблемы? Какие-нибудь лучшие практики предложить? Спасибо!


comment
Какой тип машины используется для обслуживания платформы AI?   -  person guillaume blaquiere    schedule 10.09.2020
comment
Мы пробовали несколько разных размеров, сейчас мы используем n1-highcpu-8. (Для проверки пользовательских прогнозов мы используем машины mls1-c1-m2.)   -  person Neil    schedule 10.09.2020
comment
Вам действительно нужен n1-highcpu-8? Или просто чтобы проверить, меньше ли у вас ошибок с большей виртуальной машиной?   -  person guillaume blaquiere    schedule 10.09.2020
comment
Мы все еще проводим испытания, пытаясь понять, в чем состоит золотая середина. При тестировании с n1-highcpu-4 мы наблюдали гораздо более высокую частоту ошибок и более низкую производительность.   -  person Neil    schedule 11.09.2020
comment
Можете ли вы рассмотреть эту статью? Я также заметил, что обслуживание AI Platform странным образом и намного хуже, чем Cloud Run. Если у вас хватит смелости послушать мой французский акцент, я выступал с докладом на эту тему. Вдобавок Cloud Run скоро будет совместим с 4 процессорами. Сообщите мне, если вам понадобится помощь в этом вопросе и поможет ли это решить вашу проблему.   -  person guillaume blaquiere    schedule 11.09.2020
comment
Спасибо - я видел, что вы связались с этой статьей в другом посте, и посмотрел. Наши модели, вероятно, слишком велики, чтобы вписаться в существующие ограничения, или, по крайней мере, некоторые из них будут такими. Итак, надеемся, что мы сможем достичь этого с помощью AI Prediction!   -  person Neil    schedule 11.09.2020
comment
Хорошо, вы знаете, что вы можете использовать 4 Гб памяти с Cloud Run (в бета-версии)   -  person guillaume blaquiere    schedule 12.09.2020
comment
Ах, хорошо - похоже, теперь на них макс 2 процессора / 4 ГБ оперативной памяти. Если присмотреться к своему описанию - вы в основном просто используете контейнер, в котором запущено обслуживание тензорного потока в Cloud Run, и позволяете Cloud Run автоматически масштабироваться, верно? Пара вопросов - во-первых, разве это не то, что AI Prediction делает (или должно делать)? Во-вторых, какое поведение масштабирования вы видели, если вы не против - как быстро появляются экземпляры, возникают ли у вас проблемы с тайм-аутом и т. Д.? Спасибо!   -  person Neil    schedule 14.09.2020
comment
Обслуживание платформы AI делает то же самое, возможно, с большим улучшением под капотом. Однако после шкалы до 0 я наблюдал холодный старт выше 30 секунд (тайм-аут моего запроса CURL). С Cloud Run запуск происходит очень быстро (около 1 секунды, может быть, больше с вашей большой схемой). Кроме того, масштабирование с AI Platform происходит медленно, я полагаю, в зависимости от загрузки процессора. Cloud Run масштабируется в зависимости от количества запросов. Наконец, минимальный счет AI PLatform составляет 15 минут (даже для быстрого запроса в 1 секунду). Cloud Run вы платите ровно за время обработки (округляя до верхних 100 мс)   -  person guillaume blaquiere    schedule 14.09.2020
comment
Обновите, мы сделали его немного более стабильным с большим количеством итераций по изменению размера, экспоненциальной отсрочки и т.д. Пытаюсь отследить это. Кажется, что повторные попытки в конечном итоге приводят к успеху, но было бы неплохо понять, что происходит.   -  person Neil    schedule 29.09.2020