Implementación y ejecución de contenedores en Azure Container Instance

Con los pasos siguientes, escale aplicaciones de servicios de Azure AI en la nube fácilmente con Azure Container Instances. La creación de contenedores permite centrarse en la compilación de aplicaciones en lugar de en la administración de la infraestructura. Para más información sobre el uso de contenedores, consulte Características y ventajas.

Requisitos previos

La receta funciona con cualquier contenedor de servicios de Azure AI. El recurso de servicios de Azure AI debe crearse antes de usar la fórmula. Todos los servicios de Azure AI que admiten contenedores tienen un artículo con el "Procedimiento de instalación" específico para instalar y configurar el servicio de un contenedor. Algunos servicios requieren un archivo o un conjunto de archivos como entrada para el contenedor, así que es importante que entienda y haya usado el contenedor correctamente antes de usar esta solución.

  • Un recurso de Azure del servicio de Azure AI que está usando.

  • Dirección URL del punto de conexión del recurso de servicios de Azure AI: revise el "Procedimiento de instalación" de su servicio específico para el contenedor. Así, encontrará el origen de la dirección URL del punto de conexión dentro de Azure Portal y el aspecto de un ejemplo correcto de la dirección URL. El formato exacto puede cambiar para cada servicio.

  • Clave del recurso de servicios de Azure AI: las claves se encuentran en la página Claves del recurso de Azure. Solo necesita una de las dos claves. La clave es una cadena de 32 caracteres alfanuméricos.

  • Un único contenedor de servicios de Azure AI en el host local (el equipo). Asegúrese de que puede hacer lo siguiente:

    • Descargar la imagen con un comando docker pull.
    • Ejecutar el contenedor local correctamente con todos los valores de configuración necesarios mediante un comando docker run.
    • Llamar al punto de conexión del contenedor para obtener una respuesta de HTTP 2xx y una respuesta JSON.

Todas las variables en corchetes angulares, <>, deben reemplazarse por sus propios valores. Este reemplazo incluye los corchetes angulares.

Importante

El contenedor de LUIS requiere un archivo de modelo .gz que se extrae en tiempo de ejecución. El contenedor debe poder acceder a este archivo de modelo a través del montaje de un volumen desde la instancia de contenedor. Para cargar un archivo de modelo, siga estos pasos:

  1. Cree un recurso compartido de archivos de Azure. Tome nota tanto del nombre de la cuenta de Azure Storage, como de su clave y del nombre del recurso compartido de archivos, ya que los necesitará más adelante.
  2. Exporte el modelo de LUIS (aplicación empaquetada) desde el portal de LUIS.
  3. En Azure Portal, vaya a la página de información general del recurso de la cuenta de almacenamiento y seleccione Recursos compartidos de archivos.
  4. Seleccione el nombre del recurso compartido de archivos que ha creado recientemente y, después, seleccione Cargar. Después, cargue la aplicación empaquetada.

Creación de un recurso de instancia de contenedor de Azure con Azure Portal

  1. Vaya a la página Crear de las instancias de contenedor.

  2. En la pestaña Datos básicos, escriba la siguientes información:

    Configuración Valor
    Suscripción Seleccione su suscripción.
    Resource group Seleccione el grupo de recursos disponible o cree uno nuevo, como cognitive-services.
    Nombre del contenedor Escriba un nombre como cognitive-container-instance. Este nombre debe estar en minúsculas.
    Location Seleccione una región para la implementación.
    Tipo de imagen Si la imagen de contenedor está almacenada en un registro de contenedor que no requiere credenciales, elija Public. Si el acceso a la imagen de contenedor requiere credenciales, elija Private. Consulte los repositorios de contenedores y las imágenes para información sobre si la imagen de contenedor es Public o Private ("versión preliminar pública").
    Nombre de la imagen Escriba la ubicación del contenedor de servicios de Azure AI. La ubicación es lo que se usa como argumento para el comando docker pull. Consulte las imágenes y los repositorios de contenedor para ver los nombres de imagen disponibles y su repositorio correspondiente.

    El nombre de la imagen debe estar completo y especificar tres partes. La primera, el registro de contenedor, después el repositorio y, por último, el nombre de la imagen: <container-registry>/<repository>/<image-name>.

    Este es un ejemplo, mcr.microsoft.com/azure-cognitive-services/keyphrase representaría la imagen de extracción de frases clave en el registro de contenedor de Microsoft del repositorio de servicios de Azure AI. Otro ejemplo, containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text representaría la imagen de conversión de voz en texto en el repositorio de Microsoft del registro de contenedor de la versión preliminar del contenedor.
    Tipo de SO Linux
    Size Seleccione el tamaño de las recomendaciones sugeridas para su contenedor específico de servicios de Azure AI:
    2 núcleos de CPU
    4 GB
  3. En la pestaña Redes, escriba los siguientes detalles:

    Configuración Value
    Puertos Establezca el puerto TCP en 5000. Expone el contenedor en el puerto 5000.
  4. En la pestaña Avanzado, escriba las Variables de entorno necesarias para la configuración de la facturación del recurso de la instancia de contenedor de Azure:

    Clave Value
    ApiKey Se copia de la página Keys y endpoint (Claves y punto de conexión) del recurso. Es una cadena de 32 caracteres alfanuméricos sin espacios ni guiones, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
    Billing La dirección URL del punto de conexión se copia de la página Keys and endpoint (Claves y punto de conexión) del recurso.
    Eula accept
  5. Seleccione Revisar y crear

  6. Después de realizar correctamente la validación, haga clic en Crear para finalizar el proceso de creación.

  7. Cuando el recurso se implemente con éxito, estará listo.

Uso de la instancia de contenedor

  1. Seleccione la Información general y copie la dirección IP. Será una dirección IP numérica como 55.55.55.55.

  2. Abra una nueva pestaña del explorador y use la dirección IP; por ejemplo, http://<IP-address>:5000 (http://55.55.55.55:5000). Verá la página de inicio del contenedor, que le permite saber que el contenedor se está ejecutando.

    Página principal del contenedor

  3. Seleccione Service API Description (descripción de la API de servicio) para ver la página Swagger del contenedor.

  4. Seleccione cualquiera de las API POST y seleccione Probarlo. Los parámetros se muestran junto con la entrada. Rellene los parámetros.

  5. Seleccione Ejecutar para enviar la solicitud a la instancia de contenedor.

    Ha creado y usado correctamente contenedores Azure AI en instancia de contenedor Azure.