Uso del servicio Voz mediante un punto de conexión privado

Azure Private Link le permite conectarse a los servicios de Azure mediante un punto de conexión privado. Un punto de conexión privado es una dirección IP privada a la que solo se puede acceder desde una red virtual y una subred específicas.

En este artículo se explica cómo configurar y utilizar Private Link y puntos de conexión privados con el servicio de Voz. También se describe cómo quitar los puntos de conexión privados más adelante, pero seguir usando el recurso de voz.

Para configurar un recurso de Voz en escenarios de punto de conexión privado, debe realizar las tareas siguientes:

  1. Creación de un nombre de dominio personalizado
  2. Activación de puntos de conexión privados
  3. Ajustar aplicaciones y soluciones existentes

Puntos de conexión privados y puntos de conexión de servicio de red virtual

Azure proporciona puntos de conexión privados y puntos de conexión de servicio de red virtual para el tráfico que se tuneliza a través de la red troncal privada de Azure. El propósito y las tecnologías subyacentes de estos tipos de punto de conexión son similares, pero hay diferencias entre las dos tecnologías. Se recomienda conocer las ventajas y desventajas de ambas antes de diseñar la red.

Hay ciertos aspectos que se deben tener en cuenta al decidir qué tecnología se va a usar:

  • Ambas tecnologías garantizan que el tráfico entre la red virtual y el recurso de Voz no viaje a través de la red pública de Internet.
  • Un punto de conexión privado proporciona una dirección IP privada dedicada para el recurso de voz. Esta dirección IP solo es accesible dentro de una red virtual y una subred específicas. Tiene control total sobre el acceso a esta dirección IP dentro de su infraestructura de red.
  • Los puntos de conexión de servicio de red virtual no proporcionan una dirección IP privada dedicada para el recurso de Voz. En su lugar, encapsulan todos los paquetes enviados al recurso de Voz y los entregan directamente a través de la red troncal de Azure.
  • Ambas tecnologías admiten escenarios locales. De manera predeterminada, cuando usan los puntos de conexión de servicio de red virtual, no se puede acceder desde redes locales a los recursos de servicio de Azure protegidos en redes virtuales. Pero puede cambiar ese comportamiento.
  • Los puntos de conexión de servicio de red virtual se usan a menudo para restringir el acceso de un recurso de Voz en función de las redes virtuales desde las que se origina el tráfico.
  • En el caso de servicios de Azure AI, la habilitación del punto de conexión de servicio de red virtual fuerza el tráfico de todos los recursos de servicios de Azure AI a través de la red troncal privada. Esto requiere una configuración explícita de acceso a la red. (Para más información, consulte Configuración de las redes virtuales y las opciones de redes del recurso de Voz). Los puntos de conexión privados no tienen esta limitación y proporcionan más flexibilidad para la configuración de la red. Puede acceder a un recurso a través de la red troncal privada y otro a través de la red pública de Internet mediante la misma subred de la misma red virtual.
  • Los puntos de conexión privados acarrean costos adicionales. Los puntos de conexión de servicio de red virtual son gratis.
  • Los puntos de conexión privados requieren una configuración de DNS adicional.
  • Un recurso de Voz puede funcionar simultáneamente con puntos de conexión privados y puntos de conexión de servicio de red virtual.

Se recomienda probar ambos tipos de puntos de conexión antes de decidir el diseño de producción.

Para obtener más información, vea estos recursos:

En este artículo se describe el uso de los puntos de conexión privados con el servicio de Voz. El uso de los puntos de conexión de servicio de red virtual se describe aquí.

Creación de un nombre de dominio personalizado

Precaución

Un recurso de Voz con un nombre de dominio personalizado habilitado usa un método diferente para interactuar con el servicio de Voz. Puede que deba ajustar el código de la aplicación en estos dos escenarios: con un punto de conexión privado y sin un punto de conexión privado.

Siga estos pasos para crear un nombre de subdominio personalizado para servicios de Azure AI para el recurso de Voz.

Precaución

Cuando se habilita un nombre de dominio personalizado, la operación no es reversible. La única manera de volver a establecer el nombre regional es crear un recurso de voz nuevo.

Si el recurso de voz tiene muchos modelos y proyectos personalizados asociados creados mediante Speech Studio, se recomienda encarecidamente probar la configuración en un recurso de prueba antes de modificar el usado en producción.

Para crear un nombre de dominio personalizado desde Azure Portal, siga estos pasos:

  1. Vaya a Azure Portal e inicie sesión con su cuenta de Azure.

  2. Seleccione el recurso de voz necesario.

  3. En el grupo Administración de recursos del panel izquierdo, seleccione Redes.

  4. En la pestaña Firewalls y redes virtuales, seleccione Generate Custom Domain Name (Generar nombre de dominio personalizado). En el lado derecho aparece un panel con instrucciones para crear un subdominio personalizado único para el recurso.

  5. En el panel Generate Custom Domain Name (Generar nombre de dominio personalizado), escriba un nombre de dominio personalizado. El dominio personalizado completo tiene el siguiente aspecto: https://{your custom name}.cognitiveservices.azure.com.

    Recuerde que después de crear un nombre de dominio personalizado, no se puede cambiar.

    Después de haber escrito su nombre de dominio personalizado, seleccione Guardar.

  6. Una vez finalizada la operación, en el grupo Administración de recursos, seleccione Keys and Endpoint (Claves y punto de conexión). Confirme que el nuevo nombre del punto de conexión del recurso empieza de esta manera: https://{your custom name}.cognitiveservices.azure.com.

Activación de puntos de conexión privados

Se recomienda usar para los puntos de conexión privados la zona DNS privada asociada a la red virtual con las actualizaciones necesarias. Puede crear una zona DNS privada durante el proceso de aprovisionamiento. Si va a usar su propio servidor DNS, puede que también deba cambiar la configuración de DNS.

Antes de aprovisionar los puntos de conexión privados para un recurso de voz de producción, decida una estrategia de DNS. Además, pruebe los cambios de DNS, especialmente si usa su propio servidor DNS.

Para crear puntos de conexión privados, consulte uno de los artículos siguientes. En estos artículos se emplea una aplicación web como recurso de ejemplo para que esté disponible con puntos de conexión privados.

Use estos parámetros en lugar de los parámetros del artículo que eligió:

Configuración Value
Tipo de recurso Microsoft.CognitiveServices/accounts
Recurso <nombreDelRecursoDeVoz>
Recurso secundario de destino account

DNS para puntos de conexión privados: revisar los principios generales de DNS para puntos de conexión privados en los recursos de servicios de Azure AI. Después, realice las comprobaciones que se describen en las secciones siguientes para confirmar que la configuración de DNS funciona correctamente.

Resolución de DNS en la red virtual

Esta comprobación es obligatoria.

Para probar la entrada de DNS personalizada desde la red virtual, siga estos pasos:

  1. Inicie sesión en una máquina virtual que esté ubicada en la red virtual a la que haya asociado el punto de conexión privado.

  2. Abra un símbolo del sistema de Windows o un shell de Bash, ejecute nslookup y confirme que se resuelve correctamente el nombre de dominio personalizado del recurso.

    C:\>nslookup my-private-link-speech.cognitiveservices.azure.com
    Server:  UnKnown
    Address:  168.63.129.16
    
    Non-authoritative answer:
    Name:    my-private-link-speech.privatelink.cognitiveservices.azure.com
    Address:  172.28.0.10
    Aliases:  my-private-link-speech.cognitiveservices.azure.com
    
  3. Confirme que la dirección IP coincide con la dirección IP del punto de conexión privado.

Resolución de DNS desde otras redes

Realice esta comprobación solo si ha activado la opción Todas las redes o la opción de acceso Redes y puntos de conexión privados seleccionados en la sección Redes del recurso.

Si tiene previsto acceder al recurso con solo un punto de conexión privado, puede omitir esta sección.

  1. Inicie sesión en un equipo conectado a una red a la que se permite el acceso al recurso.

  2. Abra un símbolo del sistema de Windows o el shell de Bash, ejecute nslookup y confirme que se resuelve correctamente el nombre de dominio personalizado del recurso.

    C:\>nslookup my-private-link-speech.cognitiveservices.azure.com
    Server:  UnKnown
    Address:  fe80::1
    
    Non-authoritative answer:
    Name:    vnetproxyv1-weu-prod.westeurope.cloudapp.azure.com
    Address:  13.69.67.71
    Aliases:  my-private-link-speech.cognitiveservices.azure.com
              my-private-link-speech.privatelink.cognitiveservices.azure.com
              westeurope.prod.vnet.cog.trafficmanager.net
    

Nota

La dirección IP resuelta apunta a un punto de conexión de proxy de red virtual, que envía el tráfico de red al punto de conexión privado para el recurso de voz. El comportamiento será diferente en el caso de un recurso con un nombre de dominio personalizado pero sin puntos de conexión privados. Vea esta sección para obtener más información.

Ajuste de una aplicación para usar un recurso de voz con un punto de conexión privado

Un recurso de voz con un dominio personalizado interactúa con el servicio de voz de forma diferente. Esta afirmación se aplica a los recursos de voz con dominios personalizados habilitados tanto si tienen puntos de conexión privados como si no. La información de esta sección se aplica a ambos escenarios.

Siga las instrucciones de esta sección para ajustar las aplicaciones y las soluciones existentes para usar un recurso de voz con un nombre de dominio personalizado y un punto de conexión privado activado.

Un recurso de voz con un nombre de dominio personalizado y un punto de conexión privado activado utiliza una forma diferente de interactuar con el servicio de voz. Esta sección explica cómo utilizar dicho recurso con las API de REST del servicio de voz y el SDK de voz.

Nota

Un recurso de voz sin puntos de conexión privados que utiliza un nombre de dominio personalizado también tiene una forma especial de interactuar con el servicio de voz. Esta forma difiere del escenario de un recurso de voz que usa un punto de conexión privado. Es importante tener esto en cuenta porque puede decidir quitar los puntos de conexión privados más adelante. Consulte Ajuste de una aplicación para usar un recurso de voz sin puntos de conexión privados más adelante en este artículo.

Recurso de voz con un nombre de dominio personalizado y un punto de conexión privado: Uso con las API REST

En esta sección, se usará my-private-link-speech.cognitiveservices.azure.com como nombre DNS del recurso de voz de ejemplo (dominio personalizado).

El servicio de Voz tiene varias API REST para la conversión de voz en texto y la conversión texto a voz. Tenga en cuenta la siguiente información para el escenario con puntos de conexión privados habilitados.

La conversión de voz en texto tiene dos API REST. Cada API sirve para un propósito diferente, usa puntos de conexión distintos y requiere un enfoque diferente cuando se emplea en el escenario con puntos de conexión privados habilitados.

Las API REST de conversión de voz en texto son:

El uso de la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz en el escenario de puntos de conexión privados es el mismo. Es equivalente al caso del SDK de voz que se describe más adelante en este artículo.

La API REST de conversión de voz en texto usa un conjunto diferente de puntos de conexión y, por lo tanto, requiere un enfoque diferente para el escenario con el punto de conexión privado habilitado.

En las siguientes subsecciones se describen ambos casos.

API REST de conversión de voz en texto

Por lo general, los recursos de voz utilizan los Puntos de conexión regionales de los servicios Azure AI para comunicarse con la API de REST de conversión de voz en texto. Estos recursos tienen el siguiente formato de nomenclatura:

{region}.api.cognitive.microsoft.com.

Esta es la dirección URL de una solicitud de ejemplo:

https://westeurope.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions

Nota:

Para los puntos de conexión de Azure Government y Microsoft Azure operado por 21Vianet, consulte este artículo sobre las nubes soberanas.

Después de activar un dominio personalizado para un recurso de voz (lo cual es necesario para los puntos de conexión privados), dicho recurso usará el siguiente patrón de nombres DNS para el punto de conexión básico de la API REST:

{your custom name}.cognitiveservices.azure.com

Esto significa que, en nuestro ejemplo, el nombre del punto de conexión de la API REST será:

my-private-link-speech.cognitiveservices.azure.com

Asimismo, la dirección URL de la solicitud de ejemplo se debe convertir en:

https://my-private-link-speech.cognitiveservices.azure.com/speechtotext/v3.1/transcriptions

Esta dirección URL debe ser accesible desde la red virtual que tenga el punto de conexión privado asociado (siempre que la resolución de DNS sea correcta).

Después de activar un nombre de dominio personalizado para un recurso de voz, normalmente se reemplaza el nombre de host que aparece en todas las direcciones URL de la solicitud por el nuevo nombre de host del dominio personalizado. Todas las demás partes de la solicitud (como la ruta de acceso /speechtotext/v3.1/transcriptions en el ejemplo anterior) permanecen igual.

Sugerencia

Algunos clientes desarrollan aplicaciones que usan la parte de la región del nombre DNS del punto de conexión regional (por ejemplo, para enviar la solicitud al recurso de voz implementado en una región de Azure determinada).

Un dominio personalizado de un recurso de voz no contiene información sobre la región en la que se implementa el recurso. Por lo tanto, la lógica de aplicación descrita anteriormente no funcionará y deberá modificarla.

API REST de conversión de voz en texto para audios de corta duración y API REST de texto a voz

La API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz emplean dos tipos de puntos de conexión:

Nota:

Consulte este artículo para conocer los puntos de conexión de Azure Government y Azure operados por 21Vianet.

La descripción detallada de estos puntos de conexión especiales, y cómo se debe transformar su dirección URL en el caso de un recurso de voz con un punto de conexión privado habilitado, se proporciona en esta subsección sobre el uso con el SDK de voz. El mismo principio descrito para el SDK se aplica a la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz.

Familiarícese con el material de la subsección mencionado en el párrafo anterior y consulte el ejemplo siguiente. En el ejemplo se describe la API REST de texto a voz. El uso de la API REST de conversión de voz en texto para audios de corta duración es totalmente equivalente.

Nota

Cuando se use la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz en escenarios con puntos de conexión privados, emplee una clave de recursos que se pase a través del encabezado Ocp-Apim-Subscription-Key. (Más información sobre la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz)

Usar un token de autorización y pasarlo al punto de conexión especial a través del encabezado Authorization funcionará solo si ha activado la opción de acceso Todas las redes en la sección Redes del recurso de voz. En los demás casos, al intentar obtener un token de autorización recibirá el error Forbidden o BadRequest.

Ejemplo de uso de la API REST de texto a voz

Usaremos Oeste de Europa como región de Azure de ejemplo y my-private-link-speech.cognitiveservices.azure.com como nombre DNS del recurso de voz de ejemplo (dominio personalizado). El nombre de dominio personalizado my-private-link-speech.cognitiveservices.azure.com en nuestro ejemplo pertenece al recurso de voz creado en la región Oeste de Europa.

Para obtener la lista de las voces admitidas en la región, realice la siguiente solicitud:

https://westeurope.tts.speech.microsoft.com/cognitiveservices/voices/list

Consulte más información en la documentación de la API REST de texto a voz.

En los recursos de voz con puntos de conexión privados habilitados, es necesario modificar la dirección URL del punto de conexión para realizar la misma operación. La misma solicitud tiene este aspecto:

https://my-private-link-speech.cognitiveservices.azure.com/tts/cognitiveservices/voices/list

Puede ver una explicación detallada en la subsección Construcción de la dirección URL del punto de conexión del SDK de voz.

Recurso de voz con un nombre de dominio personalizado y un punto de conexión privado: Uso con el SDK de voz

El uso del SDK de voz con un nombre de dominio personalizado y de los recursos de voz con un punto de conexión privado habilitado requiere que revise y, probablemente, cambie el código de la aplicación.

En esta sección, se usará my-private-link-speech.cognitiveservices.azure.com como nombre DNS del recurso de voz de ejemplo (dominio personalizado).

Construcción de la dirección URL del punto de conexión

Normalmente, en los escenarios del SDK (así como en los de la REST API de conversión de voz en texto y la REST API de texto a voz) los recursos de Voz usan los puntos de conexión regionales dedicados en las distintas ofertas de servicio. El formato del nombre DNS para estos puntos de conexión es:

{region}.{speech service offering}.speech.microsoft.com

Un nombre DNS de ejemplo es:

westeurope.stt.speech.microsoft.com

Todos los valores posibles de la región (primer elemento del nombre DNS) se enumeran en Regiones admitidas del servicio de voz (Consulte este artículo para los puntos de conexión Azure Government y Azure operated by 21Vianet). En la tabla siguiente se presentan los valores posibles para la oferta de servicio de Voz (segundo elemento del nombre DNS):

Valor del nombre DNS Oferta del servicio de voz
commands Comandos personalizados
convai Transcripción de reuniones
s2s Traducción de voz
stt Speech to Text
tts Texto a voz
voice Voz personalizada

Por lo tanto, el ejemplo anterior (westeurope.stt.speech.microsoft.com) se refiere a un punto de conexión de conversión de voz en texto en Oeste de Europa.

Los puntos de conexión privados habilitados se comunican con el servicio de Voz a través de un proxy especial. Por eso, debe cambiar las direcciones URL de la conexión del punto de conexión.

Una dirección URL estándar de punto de conexión tiene el siguiente aspecto:

{region}.{speech service offering}.speech.microsoft.com/{URL path}

Una dirección URL de punto de conexión privado es similar a:

{your custom name}.cognitiveservices.azure.com/{speech service offering}/{URL path}

Ejemplo 1. Una aplicación se comunica mediante la siguiente dirección URL (reconocimiento de voz mediante el modelo base para inglés de EE. UU. en el Oeste de Europa):

wss://westeurope.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US

Para usarla en el escenario del punto de conexión privado habilitado cuando el nombre de dominio personalizado del recurso de voz es my-private-link-speech.cognitiveservices.azure.com, debe modificar la dirección URL de la siguiente manera:

wss://my-private-link-speech.cognitiveservices.azure.com/stt/speech/recognition/conversation/cognitiveservices/v1?language=en-US

Observe esta información:

  • El nombre de host westeurope.stt.speech.microsoft.com se reemplaza por el nombre de host del dominio personalizado my-private-link-speech.cognitiveservices.azure.com.
  • El segundo elemento del nombre DNS original (stt) se convierte en el primer elemento de la ruta acceso de la dirección URL y precede a la ruta de acceso original. Por lo tanto, la dirección URL original /speech/recognition/conversation/cognitiveservices/v1?language=en-US se convierte en /stt/speech/recognition/conversation/cognitiveservices/v1?language=en-US.

Ejemplo 2. Una aplicación usa la siguiente dirección URL para sintetizar voz en la región Oeste de Europa:

wss://westeurope.tts.speech.microsoft.com/cognitiveservices/websocket/v1

La siguiente dirección URL equivalente usa un punto de conexión privado activado en el que el nombre de dominio personalizado del recurso de voz es my-private-link-speech.cognitiveservices.azure.com:

wss://my-private-link-speech.cognitiveservices.azure.com/tts/cognitiveservices/websocket/v1

Se aplica el mismo principio que en el ejemplo 1, pero el elemento clave esta vez es tts.

Modificación de aplicaciones

Para modificar el código, siga estos pasos:

  1. Determine la dirección URL del punto de conexión de la aplicación:

    • Active el registro de la aplicación y ejecútelo para registrar la actividad.
    • En el archivo de registro, busque SPEECH-ConnectionUrl. En líneas coincidentes, el parámetro valuecontiene la URL completa que su aplicación utilizó para llegar al servicio de voz.

    Ejemplo:

    (114917): 41ms SPX_DBG_TRACE_VERBOSE:  property_bag_impl.cpp:138 ISpxPropertyBagImpl::LogPropertyAndValue: this=0x0000028FE4809D78; name='SPEECH-ConnectionUrl'; value='wss://westeurope.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?traffictype=spx&language=en-US'
    

    Por lo tanto, la dirección URL que utiliza la aplicación en este ejemplo es:

    wss://westeurope.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?language=en-US
    
  2. Cree una instancia de SpeechConfig mediante una dirección URL de punto de conexión completa:

    1. Modifique el punto de conexión que ha determinado, como se describe en la sección anterior Construcción de la dirección URL del punto de conexión.

    2. Modifique el modo de crear la instancia de SpeechConfig. Lo más probable es que la aplicación esté usando algo parecido a esto:

      var config = SpeechConfig.FromSubscription(speechKey, azureRegion);
      

      Este ejemplo no funciona en el recurso de Voz con un punto de conexión privado habilitado, debido a los cambios en el nombre de host y la dirección URL descritos en las secciones anteriores. Si intenta ejecutar la aplicación existente sin ninguna modificación mediante la clave de un recurso con un punto de conexión privado habilitado, obtendrá un error de autenticación (401).

      Para que funcione, modifique la manera de crear una instancia de la clase SpeechConfig y use la inicialización "desde el punto de conexión"/"con el punto de conexión". Supongamos que tenemos definidas las dos variables siguientes:

      • speechKey contiene la clave del recurso de voz con el punto de conexión privado habilitado.
      • endPoint contiene la dirección URL completa modificada del punto de conexión (para lo que se ha usado el tipo requerido por el lenguaje de programación correspondiente). En nuestro ejemplo, esta variable debe contener:
        wss://my-private-link-speech.cognitiveservices.azure.com/stt/speech/recognition/conversation/cognitiveservices/v1?language=en-US
        

      Cree una instancia SpeechConfig.

      var config = SpeechConfig.FromEndpoint(endPoint, speechKey);
      
      auto config = SpeechConfig::FromEndpoint(endPoint, speechKey);
      
      SpeechConfig config = SpeechConfig.fromEndpoint(endPoint, speechKey);
      
      import azure.cognitiveservices.speech as speechsdk
      config = speechsdk.SpeechConfig(endpoint=endPoint, subscription=speechKey)
      
      SPXSpeechConfiguration *config = [[SPXSpeechConfiguration alloc] initWithEndpoint:endPoint subscription:speechKey];
      
      import * as sdk from "microsoft.cognitiveservices.speech.sdk";
      config: sdk.SpeechConfig = sdk.SpeechConfig.fromEndpoint(new URL(endPoint), speechKey);
      

Sugerencia

Los parámetros de consulta especificados en el URI del punto de conexión no cambian, aunque se hayan establecido con otras API. Por ejemplo, si el idioma de reconocimiento se define en el URI con el parámetro de consulta language=en-US y también se establece en ru-RU a través de la propiedad correspondiente, se usa la configuración de idioma del URI. El idioma válido es entonces en-US.

Los parámetros establecidos en el URI del punto de conexión siempre tienen prioridad. Otras API solo pueden invalidar parámetros que no se especifiquen en el URI del punto de conexión.

Después de realizar esta modificación, la aplicación debería funcionar con los recursos de voz con el punto de conexión privado habilitado. Estamos trabajando para proporcionarle una compatibilidad más fluida en los escenarios de punto de conexión privado.

Uso de Speech Studio

Speech Studio es un portal web con herramientas para compilar e integrar el servicio de Voz de Azure AI en su aplicación. Al trabajar en proyectos de Speech Studio, las conexiones de red y las llamadas API al recurso de Voz correspondiente se realizan en su nombre. Trabajar con puntos de conexión privados, puntos de conexión de servicio de red virtual y otras opciones de seguridad de red puede limitar la disponibilidad de las características de Speech Studio. Normalmente se usa Speech Studio al trabajar con características, como Voz personalizada, Voz neuronal personalizada y Creación de contenido de audio.

Acceso al portal web de Speech Studio desde una red virtual

Para usar Speech Studio desde una máquina virtual dentro de una red virtual de Azure, debe permitir conexiones salientes al conjunto necesario de etiquetas de servicio para esta red virtual. Consulte los detalles aquí.

El acceso al punto de conexión del recurso de Voz no es igual que el acceso al portal web de Speech Studio. No se admite el acceso al portal web de Speech Studio a través de puntos de conexión de servicio de red virtual o privados.

Trabajar con proyectos de Speech Studio

En esta sección se describe cómo trabajar con los distintos tipos de proyectos de Speech Studio para las distintas opciones de seguridad de red del recurso de Voz. Se espera que se establezca la conexión del explorador web a Speech Studio. La configuración de seguridad de red de los recursos de Voz se establece en Azure Portal.

  1. Vaya a Azure Portal e inicie sesión con su cuenta de Azure.
  2. Seleccione el recurso de Voz.
  3. En el grupo Administración de recursos del panel izquierdo, seleccione Redes>Firewalls and virtual networks (Firewalls y redes virtuales).
  4. Seleccione una opción entre Todas las redes, Selected Networks and Private Endpoints (Redes y puntos de conexión privados seleccionados) o Deshabilitado.

Voz personalizada

En la tabla siguiente se describe la configuración de seguridad de Red>Firewalls y redes virtuales para la accesibilidad del proyecto de voz personalizada por recurso de voz.

Nota

Si solo permite puntos de conexión privados a través de la pestaña Redes>Private endpoint connections (Conexiones de punto de conexión privado), no puede usar Speech Studio con el recurso de Voz. Todavía puede usar el recurso de Voz fuera de Speech Studio.

Configuración de seguridad de red de recursos de Voz Accesibilidad del proyecto de Speech Studio
Todas las redes Sin restricciones
Redes y puntos de conexión privados seleccionados Accesible desde las direcciones IP públicas permitidas
Disabled No es accesible

Si selecciona Selected Networks and private endpoints (Redes y puntos de conexión privados seleccionados), entonces verá una pestaña con las opciones de configuración de acceso de Redes virtuales y Firewall. En la sección Firewall, debe permitir al menos una dirección IP pública y usar esta dirección para la conexión del explorador con Speech Studio.

Si solo permite el acceso a través de Red virtual, no permite el acceso al recurso de Voz a través de Speech Studio. Todavía puede usar el recurso de Voz fuera de Speech Studio.

Para usar Habla personalizada sin relajar las restricciones de acceso a la red en el recurso de Voz de producción, considere una de estas soluciones alternativas.

Voz personalizada y Creación de contenido de audio

Los proyectos de Speech Studio con Voz personalizada y Creación de contenido de audio solo se pueden usar cuando la configuración de seguridad de red del recurso de Voz sea Todas las redes.

Ajuste de una aplicación para usar un recurso de voz sin un punto de conexión privado

En este artículo, hemos señalado varias veces que la habilitación de un dominio personalizado para un recurso de Voz es irreversible. Un recurso así usará otra forma diferente de comunicarse con el servicios de Voz, en comparación con los que usan los nombres de puntos de conexión regionales.

En esta sección se explica cómo utilizar un recurso de Voz con un nombre de dominio personalizado pero sin ningún punto de conexión privado con las API REST del servicio Voz y el SDK de Voz. Este recurso puede ser uno que se haya usado una vez en un escenario de punto de conexión privado, pero del cual se hayan eliminado los puntos de conexión privados.

Configuración de DNS

Recuerde que el nombre DNS del dominio personalizado del recurso de voz con un punto de conexión privado habilitado se resuelve desde redes públicas. En este caso, la dirección IP resuelta apunta a un punto de conexión proxy de una red virtual. Ese punto de conexión se utiliza para enviar el tráfico de red al recurso de servicios Azure AI habilitado como punto de conexión privado.

Sin embargo, cuando se quitan todos los puntos de conexión privados del recurso (o justo después de habilitar el nombre de dominio personalizado), se reaprovisiona el registro CNAME del recurso de voz. Ahora apunta a la dirección IP del Punto de conexión regional de los servicios Azure AI correspondientes.

Por lo tanto, la salida del comando nslookup tiene este aspecto:

C:\>nslookup my-private-link-speech.cognitiveservices.azure.com
Server:  UnKnown
Address:  fe80::1

Non-authoritative answer:
Name:    apimgmthskquihpkz6d90kmhvnabrx3ms3pdubscpdfk1tsx3a.cloudapp.net
Address:  13.93.122.1
Aliases:  my-private-link-speech.cognitiveservices.azure.com
          westeurope.api.cognitive.microsoft.com
          cognitiveweprod.trafficmanager.net
          cognitiveweprod.azure-api.net
          apimgmttmdjylckcx6clmh2isu2wr38uqzm63s8n4ub2y3e6xs.trafficmanager.net
          cognitiveweprod-westeurope-01.regional.azure-api.net

Compárelo con el resultado de esta sección.

Recurso de voz con un nombre de dominio personalizado sin puntos de conexión privados: Uso con las API REST

API REST de conversión de voz en texto

El uso de la API REST de conversión de voz en texto es totalmente igual al caso de los recursos de voz con los puntos de conexión privados habilitados.

API REST de conversión de voz en texto para audios de corta duración y API REST de texto a voz

En este caso, el uso de la API REST de conversión de voz en texto para audios de corta duración y el uso de la API REST de texto a voz no presentan diferencias con respecto al caso general; sin embargo, hay una excepción. (Consulte la nota siguiente). Ambas API deben usarse tal y como se describe en la documentación de la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz.

Nota

Cuando se use la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz en escenarios con dominio personalizado, emplee una clave de recursos de voz que se pase a través del encabezado Ocp-Apim-Subscription-Key. (Más información sobre la API REST de conversión de voz en texto para audios de corta duración y la API REST de texto a voz)

Usar un token de autorización y pasarlo al punto de conexión especial a través del encabezado Authorization funcionará solo si ha activado la opción de acceso Todas las redes en la sección Redes del recurso de voz. En los demás casos, al intentar obtener un token de autorización recibirá el error Forbidden o BadRequest.

Recurso de voz con un nombre de dominio personalizado sin puntos de conexión privados: Uso con el SDK de voz

El uso del SDK de voz con recursos de voz con dominios personalizados habilitados sin puntos de conexión privados es equivalente al caso general, tal y como se describe en la documentación del SDK de voz.

En caso de que haya modificado el código para usarlo con recursos de voz con puntos de conexión privados habilitados, tenga en cuenta lo siguiente.

En la sección sobre los recursos de voz con puntos de conexión privados habilitados, hemos explicado cómo determinar la dirección URL del punto de conexión, cómo modificarla y hacer que funcione a través de la inicialización "desde el punto de conexión"/"con el punto de conexión" de la instancia de clase SpeechConfig.

Sin embargo, si intenta ejecutar la misma aplicación después de quitar todos los puntos de conexión privados (lo que deja tiempo para que se reaprovisione el registro DNS correspondiente), obtendrá un error de servicio interno (404). La razón es que el registro DNS ahora apunta al punto de conexión regional de los servicios de Azure AI en lugar de al proxy de red virtual, y las rutas de acceso de direcciones URL como /stt/speech/recognition/conversation/cognitiveservices/v1?language=en-US no se encuentran allí.

Debe revertir la aplicación a la creación de instancias estándar de SpeechConfig en el estilo del código siguiente:

var config = SpeechConfig.FromSubscription(speechKey, azureRegion);

Uso simultáneo de puntos de conexión privados y puntos de conexión de servicio de red virtual

Puede usar puntos de conexión privados y puntos de conexión de servicio de red virtual para acceder al mismo recurso de voz simultáneamente. Para habilitar este uso simultáneo, use la opción Redes y puntos de conexión privados seleccionados en la configuración de red del recurso de voz en Azure Portal. Otras opciones no se admiten en este escenario.

Precios

Para más información sobre los precios, consulte Precios de Azure Private Link.

Más información