Compartir a través de


Configuración de contenedores de Translator Docker

Servicios de Azure AI proporciona a cada contenedor un marco de configuración común. Puede configurar fácilmente sus contenedores de Translator para crear una arquitectura de aplicación de Translator optimizada para funcionalidades sólidas en la nube y localidad perimetral.

El entorno de tiempo de ejecución de contenedores de Translator se configura mediante los argumentos de comando docker run. Este contenedor tienen configuraciones obligatorias y opcionales. La configuración específica del contenedor requerida es la configuración de facturación.

Parámetros de configuración

Este contenedor tiene las siguientes opciones de configuración:

Obligatorio Configuración Propósito
ApiKey Realiza el seguimiento de la información de facturación.
No ApplicationInsights Permite agregar compatibilidad con los datos de telemetría de Azure Application Insights al contenedor.
Facturación Especifica el URI del punto de conexión del recurso de servicio en Azure.
CLUF Indica que ha aceptado el contrato de licencia de usuario final (CLUF) para el contenedor.
No Fluentd Escribe el registro y, opcionalmente, los datos de métricas en un servidor de Fluentd.
No Proxy HTTP Configura un proxy HTTP para realizar solicitudes de salida.
No Logging Proporciona compatibilidad con el registro de ASP.NET Core al contenedor.
Mounts Lee y escribe los datos desde el equipo host al contenedor y del contenedor de nuevo al equipo host.

Importante

Los parámetros ApiKey, Billing y EULA se usan conjuntamente. Además, debe proporcionar valores válidos para los tres; de lo contrario, el contenedor no se iniciará. Para obtener más información sobre cómo usar estos parámetros de configuración con el fin de crear instancias de un contenedor,

Opción de configuración ApiKey

La opción de configuración ApiKey especifica la clave de recurso de Azure usada para realizar un seguimiento de la información de facturación del contenedor. Debe especificar un valor para el parámetro ApiKey, que debe ser una clave válida para el recurso de Translator que se haya especificado para el parámetro de configuración Billing.

Este valor se puede encontrar en el siguiente lugar:

  • Azure Portal: administración de recursos de Translator, en Claves.

Opción de configuración ApplicationInsights

La opción de configuración ApplicationInsights le permite agregar compatibilidad con los datos de telemetría de Azure Application Insights al contenedor. Application Insights proporciona una supervisión detallada del contenedor. Puede supervisar fácilmente la disponibilidad, el rendimiento y el uso del contenedor. También puede identificar y diagnosticar errores en el contenedor rápidamente.

En la tabla siguiente se describen las opciones de configuración compatibles en la sección ApplicationInsights.

Obligatorio Nombre Tipo de datos Descripción
No InstrumentationKey String Clave de instrumentación de la instancia de Application Insights para la que se envían los datos de telemetría del contenedor. Para más información, consulte Application Insights para ASP.NET Core.

Ejemplo:
InstrumentationKey=123456789

Opción de configuración Billing

El parámetro Billing especifica el URI de punto de conexión del recurso de Translator de Azure usado para medir la información de facturación del contenedor. Debe especificar un valor para este parámetro de configuración, que debe ser un URI de punto de conexión válido para un recurso de Translator en Azure. El contenedor informa sobre el uso cada 10 a 15 minutos.

Este valor se puede encontrar en el siguiente lugar:

  • Azure Portal: página de información general de Traductor, etiquetado como Endpoint
Obligatorio Nombre Tipo de datos Descripción
Billing String Identificador URI del punto de conexión de facturación. Para más información sobre cómo obtener el URI de facturación, consulte la recopilación de los parámetros necesarios. Para obtener más información y una lista completa de puntos finales regionales, consulte Nombres de subdominios personalizados para los servicios de Azure AI.

Opción de configuración EULA (CLUF)

La opción de configuración Eula indica que ha aceptado la licencia del contenedor. Debe especificar un valor para esta opción de configuración y el valor debe establecerse en accept.

Obligatorio Nombre Tipo de datos Descripción
Eula String Aceptación de la licencia

Ejemplo:
Eula=accept

Los contenedores de servicios de Azure AI tienen una licencia sujeta al contrato que rige el uso de Azure. Si no tiene ningún contrato que rija el uso de Azure, acepta que el contrato que rige el uso de Azure es el Contrato Microsoft Online Subscription, que incorpora los Términos de Online Services. En el caso de las versiones preliminares, acepta también los Términos de uso complementarios para las versiones preliminares de Microsoft Azure. Al usar el contenedor, acepta estos términos.

Opción de configuración Fluentd

Fluentd es un recopilador de datos de código abierto para el registro unificado. La opción de configuración Fluentd administra la conexión del contenedor a un servidor de Fluentd. En el contenedor, se incluye un proveedor de registros de Fluentd que permite que el contenedor escriba los registros y, opcionalmente, los datos de métricas en un servidor de Fluentd.

En la tabla siguiente se describen las opciones de configuración compatibles en la sección Fluentd.

Nombre Tipo de datos Descripción
Host String Dirección IP o nombre de host DNS del servidor de Fluentd.
Port Entero Puerto del servidor de Fluentd.
El valor predeterminado es 24 224.
HeartbeatMs Entero Intervalo de latidos (en milisegundos). Si no se envía ningún tráfico de evento antes de que este intervalo expire, se envía un latido al servidor de Fluentd. El valor predeterminado es 60 000 milisegundos (1 minuto).
SendBufferSize Entero Espacio en búfer de red (en bytes) asignado para las operaciones de envío. El valor predeterminado es 32 768 bytes (32 kilobytes).
TlsConnectionEstablishmentTimeoutMs Entero Tiempo de expiración (en milisegundos) para establecer una conexión SSL/TLS con el servidor de Fluentd. El valor predeterminado es 10 000 milisegundos (10 segundos).
Si UseTLS se establece en false, este valor se ignora.
UseTLS Boolean Indica si el contenedor debe utilizar SSL/TLS para comunicarse con el servidor de Fluentd. El valor predeterminado es falso.

Configuración de credenciales de proxy HTTP/HTTPS

Si necesita configurar un proxy HTTP para realizar solicitudes de salida, use estos dos argumentos:

Nombre Tipo de datos Descripción
HTTPS_PROXY string La dirección URL del proxy, por ejemplo, https://proxy:8888
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type-bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
HTTPS_PROXY=<proxy-url>

Opción de configuración Logging

Los contenedores de Traductor admiten los siguientes proveedores de registro:

Proveedor Propósito
Consola Proveedor de registro de Console de ASP.NET Core. Se admiten todos los valores predeterminados y las opciones de configuración de ASP.NET Core para este proveedor de registro.
Depurar Proveedor de registro de Debug de ASP.NET Core. Se admiten todos los valores predeterminados y las opciones de configuración de ASP.NET Core para este proveedor de registro.
Disco Proveedor de registro JSON. Este proveedor de registro escribe datos de registro para el montaje de salida.
  • La opción de configuración Logging administra la compatibilidad con el registro de ASP.NET Core del contenedor. Puede usar los mismos valores y opciones de configuración para el contenedor que los que usa para una aplicación ASP.NET Core.

  • El Logging.LogLevel especifica el nivel mínimo que se va a registrar. La gravedad del LogLevel oscila entre 0 y 6. Cuando se especifica un LogLevel, el registro está habilitado para los mensajes en el nivel especificado y superiores: Seguimiento = 0, Depurar = 1, Información = 2, Advertencia = 3, Error = 4, Crítico = 5, Ninguno = 6.

  • Actualmente, los contenedores de Traductor tienen la capacidad de restringir los registros en el Loglevel Advertencia o superior.

La sintaxis general del comando para el registro es la siguiente:

    -Logging:LogLevel:{Provider}={FilterSpecs}

El siguiente comando inicia el contenedor de Docker con el LogLevel establecido en Advertencia y el proveedor de registro establecido en Consola. Este comando imprime eventos anómalos o inesperados durante el flujo de la aplicación a la consola:

docker run --rm -it -p 5000:5000
-v /mnt/d/TranslatorContainer:/usr/local/models \
-e apikey={API_KEY} \
-e eula=accept \
-e billing={ENDPOINT_URI} \
-e Languages=en,fr,es,ar,ru  \
-e Logging:LogLevel:Console="Warning"
mcr.microsoft.com/azure-cognitive-services/translator/text-translation:latest

Registro del disco

El proveedor de registro Disk admite la configuración siguiente:

Nombre Tipo de datos Descripción
Format String Formato de salida de los archivos de registro.
Nota: Este valor debe establecerse en json para habilitar el proveedor de registro. Si se especifica este valor sin especificar también un montaje de salida al crear una instancia de un contenedor, se produce un error.
MaxFileSize Entero Tamaño máximo en megabytes (MB) de un archivo de registro. Cuando el tamaño del archivo de registro actual cumple o supera este valor, el proveedor de registro inicia un nuevo archivo de registro. Si se especifica -1, el tamaño del archivo de registro solo está limitado por el tamaño máximo de archivo, si existe, para el montaje de salida. El valor predeterminado es 1.

Ejemplo del proveedor de discos

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type-bind,src=/home/azureuser/output,target=/output \
-e apikey={API_KEY} \
-e eula=accept \
-e billing={ENDPOINT_URI} \
-e Languages=en,fr,es,ar,ru  \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output

Para obtener más información acerca de cómo configurar la compatibilidad con el registro de ASP.NET Core, consulte Configuración del archivo de configuración.

Configuración de montaje

Utilice montajes de enlace para leer y escribir datos hacia y desde el contenedor. Puede especificar un montaje de entrada o un montaje de salida mediante la opción --mount del comando docker run.

Pasos siguientes