Экономия железа для МЛ-моделей в продакшен #
В датасаенсе есть два вида инференса - батчевый и реалтайм. Батчевый используется там, где нет жесткого требования по времени ответа модели и можно сразу обсчитывать большой объем данных. В реалтаймовом подходе важно как можно быстрее дать ответ модели по точечному объекту - это может быть какой то текст, картинка или даже аудиофайл. Мы сфокусировались на проблеме скорости ответа и загруженности железа в реалтаймовом инференсе. Решили ее. Об этом и пойдет доклад.
Если вы запускаете реалтайм инференс то обязательно озадачьтесь вопросом “как увеличить пропускную способность модели”.
На самом деле увеличить пропускную способность модели не сложно: надо разбить вычисление на этапы, каждый этап вынести в подпроцесс, заскейлить нужное число процессов, добавить батчирование в модель и вы получите нужны результат.
Правда придется пописать немного или даже много кода, порешать несколько подводных камней питона. Либо вы можете взять готовое решение - библиотека aqueduct. Но опять же, это не обязательно, можно все кейсы порешать самостоятельно.







