Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы узнаете, как создать приложение-контейнер, использующее бессерверные GPU для работы с приложением ИИ.
При использовании бессерверных GPU у вас есть прямой доступ к вычислительным ресурсам GPU, не выполняя настройку инфраструктуры вручную, например установку драйверов. Все, что вам нужно сделать, — развернуть образ модели ИИ.
В этом руководстве вы:
- Создайте новое контейнерное приложение и среду
- Настройка среды для использования бессерверных GPU
- Разверните свое приложение в Azure Container Apps
- Использование нового бессерверного приложения для включения GPU
- Активация потоковой передачи артефактов для сокращения времени холодного запуска GPU
Prerequisites
| Resource | Description |
|---|---|
| Учетная запись Azure | Вам потребуется учетная запись Azure с активной подпиской. Если у вас нет учетной записи, вы можете создать ее бесплатно. |
| Доступ к бессерверным GPU | Доступ к GPU доступен только после запроса квот GPU. Вы можете отправить запрос на квоту GPU с помощью обращения в службу поддержки клиентов. |
| Resource | Description |
|---|---|
| Учетная запись Azure | Вам потребуется учетная запись Azure с активной подпиской. Если у вас нет учетной записи, вы можете создать ее бесплатно. |
| Доступ к бессерверным GPU | Доступ к GPU доступен только после запроса квот GPU. Вы можете отправить запрос на квоту GPU с помощью обращения в службу поддержки клиентов. |
| Azure CLI | Установите Azure CLI или обновите ее до последней версии. |
Создание приложения-контейнера
Перейдите на портал Azure и найдите и выберите "Приложения контейнеров".
Выберите "Создать " и выберите "Приложение контейнера".
В окне "Основные сведения" введите следующие значения в каждый раздел.
В разделе "Сведения о проекте" введите следующие значения:
Setting Value Subscription Выберите подписку Azure. Группа ресурсов Выберите "Создать" и введите my-gpu-demo-group. Имя приложения-контейнера Введите my-gpu-demo-app. Источник развертывания Выберите образ контейнера. В среде "Приложения контейнеров" введите следующие значения:
Setting Value Region Выберите Швецию Центральную.
Дополнительные поддерживаемые регионы см. в статье Об использовании бессерверных GPU в Azure.Среда Контейнеров приложений Выберите Создать новое. В окне "Создание приложений контейнеров" введите следующие значения:
Setting Value Имя среды Введите my-gpu-demo-env. Нажмите кнопку "Создать".
Нажмите кнопку "Далее": контейнер >.
В окне контейнера введите следующие значения:
Setting Value Name Введите my-gpu-demo-container. Источник изображения Выберите Docker Hub или другие реестры. Тип изображения Выберите общедоступную. Сервер входа в реестр Введите mcr.microsoft.com. Изображение и тег Введите k8se/gpu-quickstart:latest. Профиль рабочей нагрузки Выберите Режим использования — до 4 виртуальных ЦП, 8 ГиБ памяти. GPU Установите флажок. Тип GPU Выберите "Потребление GPU-NC8as-T4 - до 8 виртуальных ЦП, 56 ГиБ памяти и выберите ссылку, чтобы добавить профиль в вашу среду. Выберите Далее: Ingress >.
В окне Ingress введите следующие значения:
Setting Value Ingress Установите флажок "Включен ". Входящий трафик Выберите радиокнопку Принятие трафика откуда угодно. Целевой порт Введите 80. Выберите Review + create.
Нажмите кнопку "Создать".
Подождите несколько минут, пока развертывание завершится, а затем выберите "Перейти к ресурсу".
Этот процесс может занять до пяти минут.
Используйте ваше приложение GPU
В окне обзора выберите ссылку "URL-адрес приложения" , чтобы открыть интерфейс веб-приложения в браузере и использовать приложение GPU.
Note
- Чтобы добиться оптимальной производительности приложений GPU, выполните действия по улучшению холодного запуска для бессерверных GPU.
- При наличии нескольких контейнеров в приложении первый контейнер получает доступ к GPU.
Создание переменной среды
Определите следующие переменные среды. Перед выполнением этой команды замените <PLACEHOLDERS> на ваши значения.
RESOURCE_GROUP="<RESOURCE_GROUP>"
ENVIRONMENT_NAME="<ENVIRONMENT_NAME>"
LOCATION="swedencentral"
CONTAINER_APP_NAME="<CONTAINER_APP_NAME>"
CONTAINER_IMAGE="mcr.microsoft.com/k8se/gpu-quickstart:latest"
WORKLOAD_PROFILE_NAME="NC8as-T4"
WORKLOAD_PROFILE_TYPE="Consumption-GPU-NC8as-T4"
Создание приложения-контейнера
Создайте группу ресурсов для размещения ресурсов, создаваемых в рамках этого руководства. Эта команда должна вывести выходные данные
Succeeded.az group create \ --name $RESOURCE_GROUP \ --location $LOCATION \ --query "properties.provisioningState"Создайте среду "Приложения контейнеров" для размещения приложения-контейнера. Эта команда должна вывести выходные данные
Succeeded.az containerapp env create \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP \ --location "$LOCATION" \ --query "properties.provisioningState"Добавьте профиль рабочей нагрузки в среду.
az containerapp env workload-profile add \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP \ --workload-profile-name $WORKLOAD_PROFILE_NAME \ --workload-profile-type $WORKLOAD_PROFILE_TYPEСоздайте приложение-контейнер.
az containerapp create \ --name $CONTAINER_APP_NAME \ --resource-group $RESOURCE_GROUP \ --environment $ENVIRONMENT_NAME \ --image $CONTAINER_IMAGE \ --target-port 80 \ --ingress external \ --cpu 8.0 \ --memory 56.0Gi \ --workload-profile-name $WORKLOAD_PROFILE_NAME \ --query properties.configuration.ingress.fqdnЭта команда выводит URL-адрес приложения для приложения-контейнера.
Используйте ваше приложение GPU
Откройте URL-адрес приложения для приложения-контейнера в браузере. Обратите внимание, что для запуска приложения контейнера может потребоваться до пяти минут.
Приложения контейнеров Azure с бессерверными графическими процессорами позволяют ввести запрос на создание образа. Вы также можете просто выбрать Generate Image, чтобы использовать запрос по умолчанию. На следующем шаге вы просматриваете результаты обработки GPU.
Note
- Чтобы добиться оптимальной производительности приложений GPU, выполните действия по улучшению холодного запуска для бессерверных GPU.
- При наличии нескольких контейнеров в приложении первый контейнер получает доступ к GPU.
Мониторинг GPU
После создания образа выполните следующие действия, чтобы просмотреть результаты обработки GPU:
Откройте приложение контейнера на портале Azure.
В разделе "Мониторинг" выберите консоль.
Выберите свою реплику.
Выберите контейнер.
Выберите "Повторное подключение".
В окне командной строки "Выбор запуска" выберите /bin/bash и нажмите кнопку "Подключить".
После настройки оболочки введите команду nvidia-smi , чтобы просмотреть состояние и выходные данные gpu.
Очистите ресурсы
Ресурсы, созданные в этом руководстве, отражаются на вашем счете Azure.
Если вы не собираетесь использовать эти сервисы долго, выполните шаги, чтобы удалить все, созданное в этом руководстве.
На портале Azure найдите и выберите группы ресурсов.
Выберите my-gpu-demo-group.
Выберите команду Удалить группу ресурсов.
В поле подтверждения введите my-gpu-demo-group.
Нажмите кнопку "Удалить".
Выполните следующую команду.
az group delete --name $RESOURCE_GROUP