Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
En este artículo, aprenderá a crear una aplicación de contenedor que use GPU sin servidor para impulsar una aplicación de inteligencia artificial.
Con las GPU sin servidor, tiene acceso directo a los recursos de proceso de GPU sin tener que realizar la configuración manual de la infraestructura, como la instalación de controladores. Lo único que tiene que hacer es implementar la imagen del modelo de IA.
En este tutorial, hará lo siguiente:
- Creación de una nueva aplicación de contenedor y un entorno
- Configuración del entorno para usar GPU sin servidor
- Implementación de la aplicación en Azure Container Apps
- Uso de la nueva aplicación de habilitación de GPU sin servidor
- Habilitación del streaming de artefactos para reducir el arranque en frío de GPU
Requisitos previos
| Recurso | Descripción |
|---|---|
| Cuenta de Azure | Necesita una cuenta de Azure con una suscripción activa. Si no tiene ninguna, puede crear una gratis. |
| Acceso a GPU sin servidor | El acceso a las GPU solo está disponible después de solicitar cuotas de GPU. Puede enviar la solicitud de cuota de GPU a través de un caso de soporte técnico al cliente. |
| Recurso | Descripción |
|---|---|
| Cuenta de Azure | Necesita una cuenta de Azure con una suscripción activa. Si no tiene ninguna, puede crear una gratis. |
| Acceso a GPU sin servidor | El acceso a las GPU solo está disponible después de solicitar cuotas de GPU. Puede enviar la solicitud de cuota de GPU a través de un caso de soporte técnico al cliente. |
| Azure CLI | Instale la CLI de Azure o actualice a la versión más reciente. |
Creación de la aplicación de contenedor
Vaya a Azure Portal y busque y seleccione Container Apps.
Seleccione Crear y, a continuación, seleccione Aplicación contenedora.
En la ventana Datos básicos, escriba los valores siguientes en cada sección.
En Detalles del proyecto, escriba los valores siguientes:
Configuración Valor Suscripción Seleccione su suscripción a Azure. Grupo de recursos Seleccione Crear nuevo y escriba my-gpu-demo-group. Nombre de la aplicación de contenedor Escriba my-gpu-demo-app. Origen de implementación Seleccione Imagen de contenedor. En Entorno de Container Apps, escriba los valores siguientes:
Configuración Valor Region Seleccione Centro de Suecia.
Para obtener más regiones admitidas, consulte Uso de GPU sin servidor en Azure.Entorno de Container Apps Seleccione Crear nuevo. En la ventana Crear entorno de Container Apps, escriba los valores siguientes:
Configuración Valor Nombre del entorno Escriba my-gpu-demo-env. Seleccione Crear.
Seleccione Siguiente: Contenedor >.
En la ventana contenedor, escriba los siguientes valores:
Configuración Valor Nombre Escriba my-gpu-demo-container. Origen de la imagen Seleccione Docker Hub u otros registros. Tipo de imagen Seleccione público. Registry login server (Servidor de inicio de sesión de registro) Escriba mcr.microsoft.com. Image and tag (Imagen y etiqueta) Escriba k8se/gpu-quickstart:latest. Perfil de carga de trabajo Seleccione Consumo: hasta 4 vCPU, 8 Memoria Gib. GPU Active la casilla. Tipos de GPU Seleccione Consumption-GPU-NC8as-T4: hasta 8 vCPU, 56 GiB de memoria y seleccione el vínculo para agregar el perfil a su entorno. Seleccione Siguiente: Entrada >.
En la ventana Entrada, escriba los siguientes valores:
Configuración Valor Entrada Seleccione la casilla Habilitado. Tráfico de entrada Seleccione el Aceptar tráfico desde cualquier lugar botón de radio. Puerto de destino Escriba 80. Seleccione Revisar + crear.
Seleccione Crear.
Espere unos instantes a que se complete la implementación y seleccione Ir al recurso.
Este proceso puede tardar hasta cinco minutos en completarse.
Uso de la aplicación de GPU
En la ventana Información general, seleccione el vínculo Dirección URL de la aplicación para abrir el front-end de la aplicación web en el explorador y usar la aplicación de GPU.
Nota:
- Para lograr el mejor rendimiento de las aplicaciones de GPU, siga los pasos para mejorar el arranque en frío de las GPUsin servidor.
- Cuando hay varios contenedores en la aplicación, el primer contenedor obtiene acceso a la GPU.
Creación de variables de entorno
Defina las siguientes variables de entorno. Antes de ejecutar este comando, reemplace <PLACEHOLDERS> con sus valores.
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"
Creación de la aplicación de contenedor
Cree el grupo de recursos para contener los recursos que cree en este tutorial. Este comando debe generar
Succeeded.az group create \ --name $RESOURCE_GROUP \ --location $LOCATION \ --query "properties.provisioningState"Cree un entorno de Container Apps para hospedar la aplicación contenedora. Este comando debe generar
Succeeded.az containerapp env create \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP \ --location "$LOCATION" \ --query "properties.provisioningState"Agregue un perfil de carga de trabajo al entorno.
az containerapp env workload-profile add \ --name $ENVIRONMENT_NAME \ --resource-group $RESOURCE_GROUP \ --workload-profile-name $WORKLOAD_PROFILE_NAME \ --workload-profile-type $WORKLOAD_PROFILE_TYPECrea tu aplicación contenedor.
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.fqdnEste comando genera la dirección URL de la aplicación para la aplicación contenedora.
Uso de la aplicación de GPU
Abra la dirección URL de la aplicación para la aplicación contenedora en el explorador. Tenga en cuenta que la aplicación contenedora puede tardar hasta cinco minutos en iniciarse.
La aplicación Azure Container Apps con GPU sin servidor le permite escribir un mensaje para generar una imagen. También puede simplemente seleccionar Generate Image para usar el indicador predeterminado. En el paso siguiente, verá los resultados del procesamiento de GPU.
Nota:
- Para lograr el mejor rendimiento de las aplicaciones de GPU, siga los pasos para mejorar el arranque en frío de las GPUsin servidor.
- Cuando hay varios contenedores en la aplicación, el primer contenedor obtiene acceso a la GPU.
Supervisión de la GPU
Una vez que genere una imagen, siga estos pasos para ver los resultados del procesamiento de GPU:
Abra la aplicación contenedora en el Azure Portal.
En la sección Supervisión, seleccione Consola.
Seleccione la réplica.
Seleccione el contenedor.
Seleccione Volver a conectar.
En la ventana Elegir comando de inicio, seleccione /bin/bashy seleccione Conectar.
Una vez configurado el shell, escriba el comando nvidia-smi para revisar el estado y la salida de la GPU.
Limpieza de recursos
Los recursos creados en este tutorial tienen un efecto en la factura de Azure.
Si no va a usar estos servicios a largo plazo, siga los pasos para quitar todo lo creado en este tutorial.
En Azure Portal, busque y seleccione Grupos de recursos.
Seleccione my-gpu-demo-group.
Seleccione Eliminar grupo de recursos.
En el cuadro de confirmación, escriba my-gpu-demo-group.
Seleccione Eliminar.
Ejecute el siguiente comando.
az group delete --name $RESOURCE_GROUP