Типы деплоев

Стандартный деплой

Для развертывания образа с моделью на сервисе выберите необходимый образ из списка. С его помощью можно задать минимальное и максимальное количество подов для масштабирования экземпляров микросервиса и количество GPU, которые будут использоваться сервисом.

Чтобы разместить выбранный образ, нажмите кнопку Создать деплой. В результате этих действий образ будет развернут на указанной конфигурации и создана карточка деплоя. В карточке указаны:

  • Используемый образ.

  • Хост, на который необходимо будет отправлять запросы. См. подробнее в Отправка HTTP-запросов к модулю Deployments.

  • Сведения об используемых ресурсах, количестве активных запущенных подов и возможный диапазон доступных модели подов.

В процессе развертывания образа на сервисе есть возможность динамически менять конфигурацию деплоя. Для этого:

  1. Зайдите в карточку деплоя по клику.

  2. Задайте необходимое количество GPU и подов.

  3. Нажмите Сохранить изменения.

Внимание

Если не задавать количество подов (по умолчанию 0), не будет возможности просматривать логи деплоя.

Обратите внимание на то, что после изменения конфигурации деплоя происходит его пересборка (статус «В очереди»).

Возможно отфильтровать для отображения только те записи, которые соответствуют заданным условиям. Для добавления фильтра по типу нажмите кнопку Кнопка Воронка. Затем — Добавить фильтр. Отфильтруйте данные.

Важно

Основные причины ошибок в развертывании модели:

  • Ошибки в serving-скрипте. Рекомендуем протестировать serving-скрипт локально на сервисе с помощью терминала. См. Валидация.

  • Недостаточно свободных ресурсов на сервисе.

  • Модель разворачивается на базовом образе, в котором нет необходимых библиотек. Сборка Docker-образа с моделью на основе кастомного образа описана в разделе Быстрый старт по работе с Deployments.

Раздельный деплой (Triton Inference Server)

Triton Inference Server (далее — Triton) — сервер для инференса моделей машинного обучения с открытым исходным кодом. Triton позволяет разворачивать любую модель искусственного интеллекта, обученную с использованием наиболее популярных фреймворков, включая TensorRT, TensorFlow, PyTorch, ONNX, OpenVINO, Python, RAPIDS FIL и другие. Раздельный деплой позволяет оптимизировать производительность для разных типов запросов, включая запросы в реальном времени, пакетные запросы, ансамбли моделей и потоковое аудио/видео.

С помощью раздельного деплоя реализуются:

  1. Автомасштабирование в рамках одной GPU под нагрузку.

  2. Механизмы для создания конвейера моделей.

  3. Балансировщик для входящих запросов.

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

Для создания Трансформера используйте любой базовый образ платформы ML Space. Для создания Предиктора используйте cr.msk.sbercloud.ru/aicloud-base-images/triton22.04-py3:0.0.32.3.

Предупреждение

  • Временно отсутствует возможность масштабировать трансформер и предиктор отдельно.

  • Временно отсутствует возможность монтировать внешнее хранилище с моделями (S3 или NFS).

  • Устанавливайте трансформеру как можно меньше ресурсов, чтобы они оставались модели.

  • Асинхронные вызовы не поддерживаются.

  • Для отправки запросов к раздельному деплою используйте интерфейс платформы ML Space.