nav-img
Evolution

Создать инференс в Docker RUN

С помощью инструкции вы создадите контейнер, содержащий Docker-образ с пользовательской моделью (Docker RUN).

Вы сможете использовать ресурсы GPU сервиса ML Inference для инференса модели.

Для запуска инференса используются пользовательские модели в Docker-образе.

Создать инференс

  1. В личном кабинете перейдите в раздел ML/AI Инструменты → ML Inference.

  2. Перейдите в раздел Docker RUN.

  3. Нажмите Создать.

  4. Заполните поле Название — произвольное название инференса.

  5. Укажите URI Docker-образа.

    Для поиска и выбора доступны образы, размещенные в реестре сервиса Artifact Registry в текущем проекте. Также вы можете использовать образы из реестров в других проектах, но только если реестры являются публичными. Для добавления URI образа из публичного реестра другого проекта используйте Поиск образа по URI.

    После заполнения данных нажмите Выбрать.

  6. Укажите тип GPU:

    • Shared GPU

    • Instance type

  7. Задайте параметры GPU:

    • Модель GPU

    • Объем памяти GPU. Проверяется наличие квоты на заданный объем памяти.

    • Порт контейнера

    • Команда точки входа. Чтобы ввести пользовательскую команду, выберите Вручную.

    Нажмите Продолжить.

  8. (Опционально) Укажите переменные окружения. Подробнее о переменных — в статье Среда выполнения.

  9. (Опционально) Настройте health-пробы.

    Нажмите Добавить liveness-пробу и заполните поля:

    • Начальная задержка, сек — время после запуска контейнера, через которое выполняется первая liveness-проба.

    • Частота запуска пробы, сек — частота проверки работоспособности приложения.

    • Таймаут пробы, сек — время ожидания выполнения пробы. Если в течение этого времени проба не выполнена, то она считается неуспешной.

    • Количество неуспешных проб — при достижении указанного количества последовательных неуспешных проб приложение считается неработоспособным и контейнер перезапускается.

    • Способ запуска — выберите подходящий способ: exec или http.

      • exec — проба для запуска команды оболочки. Если команда возвращает код 0, то проба считается успешной. При получении других кодов проба считается неуспешной.

      • http — проба для отправки HTTP-запроса на сервер в контейнере. На URL отправляется HTTP GET-запрос и проверяется статус ответа. При получении кодов ответа 2xx и 3xx проба считается успешной. При получении кодов от 400 и выше проба считается неуспешной. Поле Путь должно содержать абсолютный путь. Если в пути используются специальные символы, например, пробелы, запятые, кириллические символы и другие, то предварительно перекодируйте путь в формат UTF-8.

  10. Заполните параметры масштабирования контейнеров.

    1. Выберите минимальное и максимальное количество экземпляров контейнера при масштабировании сервиса.

    2. Выберите тип масштабирования.

    3. Укажите ограничения на число запросов к модели:

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

      • Жесткое ограничение. Строгий лимит на количество одновременных запросов. При превышении количества запросов избыточные запросы помещаются в буфер до того, как освободятся ресурсы для выделения.

  11. Нажмите Продолжить.

  12. Укажите дополнительные опции:

    • Аутентификация. Для запуска инференса используется аутентификация с помощью сервисного аккаунта. См. как подключить сервисный аккаунт.

    • Автоматическое развертывание. Каждый раз при загрузке новой версии Docker-образа в репозиторий Artifact Registry ML Inference автоматически перезапускает инференс с новым Docker-образом.

    • Логирование запросов. Ведется логирование пользовательских запросов к Docker-образу.

    • Пользовательский мониторинг. Метрики работы контейнерного приложения передаются в сервис Мониторинг.

    • Таймаут. Время, в течение которого ожидается ответ от контейнера.

  13. Нажмите Создать.

Вы будете перенаправлены на страницу сервиса ML Inference. Docker-образ с инференсом будет создан и запущен в течение нескольких минут. Дождитесь, когда инференс перейдет в статус «Запущено» и появится публичный URL-адрес Docker-образа с моделью.