Implementación de un modelo de voz personalizada

En este artículo, aprenderá a implementar un punto de conexión para un modelo de voz personalizada. Excepto con la transcripción por lotes, tiene que implementar un punto de conexión personalizado para usar un modelo de voz personalizada.

Sugerencia

No se requiere un punto de conexión de implementación hospedado para usar la voz personalizada con la API de transcripción de Batch. Es posible conservar los recursos si el modelo de voz personalizado solo se usa para la transcripción por lotes. Para más información, consulte Precios del servicio de voz.

Puede implementar un punto de conexión para un modelo base o personalizado y, luego, actualizar el punto de conexión para usar un modelo mejor entrenado.

Nota

Los puntos de conexión usados por los recursos de Voz F0 se eliminan después de siete días.

Incorporación de un extremo de implementación

Para crear un punto de conexión privado, siga estos pasos:

  1. Inicie sesión en Speech Studio.

  2. Seleccione Voz personalizada> El nombre del proyecto >Implementación de modelos.

    Si se trata del primer punto de conexión, observará que no aparece ningún punto de conexión en la tabla. Después de crear un punto de conexión, usará esta página para realizar el seguimiento de cada punto de conexión implementado.

  3. Seleccione Implementar modelo para iniciar el asistente para el nuevo punto de conexión.

  4. Seleccione Nuevo punto de conexión, escriba un nombre y una descripción para el punto de conexión personalizado.

  5. Seleccione el modelo personalizado que desea asociar al punto de conexión.

  6. Opcionalmente, puede activar la casilla para habilitar el registro de audio y diagnóstico del tráfico del punto de conexión.

    Captura de pantalla de la página Nuevo punto de conexión que muestra la casilla para habilitar el registro.

  7. Seleccione Agregar para guardar e implementar el punto de conexión.

En la página principal Implementar modelos, los detalles sobre el nuevo punto de conexión se muestran en una tabla, como el nombre, la descripción, el estado y la fecha de expiración. Se puede tardar hasta 30 minutos en crear una instancia de un nuevo punto de conexión que use los modelos personalizados. Cuando el estado de la implementación cambie a Correcta, el punto de conexión estará listo para su uso.

Importante

Tome nota de la fecha de expiración del modelo. Esta es la última fecha en la que puede usar el modelo personalizado para el reconocimiento de voz. Para más información, consulte Ciclo de vida del modelo y el punto de conexión.

Seleccione el vínculo del punto de conexión para ver información específica de él, como la clave de punto de conexión, la dirección URL del punto de conexión y el código de ejemplo.

Para crear un punto de conexión e implementar un modelo, use el comando spx csr endpoint create. Construya los parámetros de solicitud según las instrucciones siguientes:

  • Establezca el parámetro project en el identificador de un proyecto existente. Esto se recomienda para que también pueda ver y administrar el punto de conexión en Speech Studio. Puede ejecutar el comando spx csr project list para obtener los proyectos disponibles.
  • Establezca el parámetro model obligatorio en el identificador del modelo que quiere implementar en el punto de conexión.
  • Establezca el parámetro language necesario. La configuración regional del punto de conexión tiene que coincidir con la configuración regional del modelo. Esta configuración regional no se podrá modificar más adelante. El parámetro language de la CLI de Voz corresponde a la propiedad locale de la solicitud y respuesta JSON.
  • Establezca el parámetro name necesario. Este es el nombre que se mostrará en Speech Studio. El parámetro name de la CLI de Voz corresponde a la propiedad displayName de la solicitud y respuesta JSON.
  • También tiene la opción de definir el parámetro logging. Establézcalo en enabled para habilitar el registro de audio y diagnóstico del tráfico del punto de conexión. El valor predeterminado es false.

Este es un ejemplo del comando de la CLI de Voz para crear un punto de conexión e implementar un modelo:

spx csr endpoint create --api-version v3.1 --project YourProjectId --model YourModelId --name "My Endpoint" --description "My Endpoint Description" --language "en-US"

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/ae8d1643-53e4-4554-be4c-221dcfb471c5"
  },
  "links": {
    "logs": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790/files/logs",
    "restInteractive": "https://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restConversation": "https://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restDictation": "https://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketInteractive": "wss://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketConversation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketDictation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/d40f2eb8-1abf-4f72-9008-a5ae8add82a4"
  },
  "properties": {
    "loggingEnabled": true
  },
  "lastActionDateTime": "2022-05-19T15:27:51Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-19T15:27:51Z",
  "locale": "en-US",
  "displayName": "My Endpoint",
  "description": "My Endpoint Description"
}

La propiedad self de nivel superior del cuerpo de la respuesta es el URI del punto de conexión. Use este URI para obtener detalles sobre el proyecto, el modelo y los registros del punto de conexión. También usará este URI para actualizar el punto de conexión.

Para obtener ayuda de la CLI de Voz con puntos de conexión, ejecute el siguiente comando:

spx help csr endpoint

Para crear un punto de conexión e implementar un modelo, use la operación Endpoints_Create de la API REST de conversión de voz en texto. Construya el cuerpo de la solicitud según las instrucciones siguientes:

  • Establezca la propiedad project en el URI de un proyecto existente. Esto se recomienda para que también pueda ver y administrar el punto de conexión en Speech Studio. Puede realizar una solicitud Projects_List para obtener proyectos disponibles.
  • Establezca la propiedad model obligatoria en el URI del modelo que quiere implementar en el punto de conexión.
  • Establezca la propiedad locale obligatoria. La configuración regional del punto de conexión tiene que coincidir con la configuración regional del modelo. Esta configuración regional no se podrá modificar más adelante.
  • Establezca la propiedad displayName requerida. Este es el nombre que se mostrará en Speech Studio.
  • También tiene la opción de definir la propiedad loggingEnabled en properties. Establézcalo en true para habilitar el registro de audio y diagnóstico del tráfico del punto de conexión. El valor predeterminado es false.

Haga una solicitud HTTP POST con el URI como se muestra en el siguiente ejemplo de Endpoints_Create. Reemplace YourSubscriptionKey por la clave de recurso de Voz, YourServiceRegion por la región del recurso de Voz, y establezca las propiedades del cuerpo de la solicitud como se ha descrito anteriormente.

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/d40f2eb8-1abf-4f72-9008-a5ae8add82a4"
  },
  "properties": {
    "loggingEnabled": true
  },
  "displayName": "My Endpoint",
  "description": "My Endpoint Description",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/ae8d1643-53e4-4554-be4c-221dcfb471c5"
  },
  "locale": "en-US",
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints"

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/ae8d1643-53e4-4554-be4c-221dcfb471c5"
  },
  "links": {
    "logs": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790/files/logs",
    "restInteractive": "https://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restConversation": "https://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restDictation": "https://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketInteractive": "wss://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketConversation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketDictation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/d40f2eb8-1abf-4f72-9008-a5ae8add82a4"
  },
  "properties": {
    "loggingEnabled": true
  },
  "lastActionDateTime": "2022-05-19T15:27:51Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-19T15:27:51Z",
  "locale": "en-US",
  "displayName": "My Endpoint",
  "description": "My Endpoint Description"
}

La propiedad self de nivel superior del cuerpo de la respuesta es el URI del punto de conexión. Use este URI para obtener detalles sobre el proyecto, el modelo y los registros del punto de conexión. Use también este URI para actualizar o eliminar el punto de conexión.

Cambio del modelo y reimplementación del punto de conexión

Un punto de conexión se puede actualizar para usar otro modelo creado por el mismo recurso de Voz. Como se mencionó anteriormente, debe actualizar el modelo del punto de conexión antes de que expire el modelo.

Para usar un nuevo modelo y volver a implementar el punto de conexión personalizado:

  1. Inicie sesión en Speech Studio.
  2. Seleccione Voz personalizada> El nombre del proyecto >Implementación de modelos.
  3. Seleccione el vínculo a un punto de conexión por nombre y luego seleccione Cambiar modelo.
  4. Seleccione el nuevo modelo que desea que use el punto de conexión.
  5. Seleccione Listo para guardar y volver a implementar el punto de conexión.

Para volver a implementar el punto de conexión personalizado con un nuevo modelo, use el comando spx csr model update. Construya los parámetros de solicitud según las instrucciones siguientes:

  • Establezca el parámetro endpoint obligatorio en el identificador del punto de conexión que quiere implementar.
  • Establezca el parámetro model obligatorio en el identificador del modelo que quiere implementar en el punto de conexión.

Este es un ejemplo de comando de la CLI de Voz que vuelve a implementar el punto de conexión personalizado con un nuevo modelo:

spx csr endpoint update --api-version v3.1 --endpoint YourEndpointId --model YourModelId

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/1e47c19d-12ca-4ba5-b177-9e04bd72cf98"
  },
  "links": {
    "logs": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790/files/logs",
    "restInteractive": "https://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restConversation": "https://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restDictation": "https://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketInteractive": "wss://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketConversation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketDictation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/639d5280-8995-40cc-9329-051fd0fddd46"
  },
  "properties": {
    "loggingEnabled": true
  },
  "lastActionDateTime": "2022-05-19T23:01:34Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-19T15:41:27Z",
  "locale": "en-US",
  "displayName": "My Endpoint",
  "description": "My Updated Endpoint Description"
}

Para obtener ayuda de la CLI de Voz con puntos de conexión, ejecute el siguiente comando:

spx help csr endpoint

Para volver a implementar el punto de conexión personalizado con un nuevo modelo, use la operación Endpoints_Update de la API REST de conversión de voz en texto. Construya el cuerpo de la solicitud según las instrucciones siguientes:

  • Establezca la propiedad model en el URI del modelo que quiere implementar en el punto de conexión.

Realice una solicitud HTTP PATCH con el URI, como se muestra en el ejemplo siguiente. Reemplace YourSubscriptionKey por la clave de recurso de Voz, reemplace YourServiceRegion por la región del recurso de Voz, reemplace YourEndpointId por el identificador del punto de conexión, y establezca las propiedades del cuerpo de la solicitud como se ha descrito anteriormente.

curl -v -X PATCH -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/1e47c19d-12ca-4ba5-b177-9e04bd72cf98"
  }
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/YourEndpointId"

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/1e47c19d-12ca-4ba5-b177-9e04bd72cf98"
  },
  "links": {
    "logs": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790/files/logs",
    "restInteractive": "https://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restConversation": "https://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restDictation": "https://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketInteractive": "wss://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketConversation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketDictation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/639d5280-8995-40cc-9329-051fd0fddd46"
  },
  "properties": {
    "loggingEnabled": true
  },
  "lastActionDateTime": "2022-05-19T23:01:34Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-19T15:41:27Z",
  "locale": "en-US",
  "displayName": "My Endpoint",
  "description": "My Updated Endpoint Description"
}

La reimplementación tarda varios minutos en completarse. Mientras tanto, el punto de conexión usa el modelo anterior sin interrupción del servicio.

Visualización de datos de registro

Los datos de registro están disponibles para su exportación si los configuró al crear el punto de conexión.

Para descargar los registros del punto de conexión:

  1. Inicie sesión en Speech Studio.
  2. Seleccione Voz personalizada> El nombre del proyecto >Implementación de modelos.
  3. Seleccione el vínculo por nombre de punto de conexión.
  4. En Registro de contenido, seleccione Descargar registro.

Para obtener los registros de un punto de conexión, use el comando spx csr endpoint list. Construya los parámetros de solicitud según las instrucciones siguientes:

  • Establezca el parámetro endpoint obligatorio en el identificador del punto de conexión para el que quiere obtener los registros.

Este es un ejemplo de comando de la CLI de Voz que obtiene los registros de un punto de conexión:

spx csr endpoint list --api-version v3.1 --endpoint YourEndpointId

Las ubicaciones de cada archivo de registro con más detalles se devuelven en el cuerpo de la respuesta.

Para obtener registros de un punto de conexión, empiece por usar la operación Endpoints_Get de la API REST de conversión de voz en texto.

Haga una solicitud HTTP GET con el URI, tal como se muestra en el ejemplo siguiente. Reemplace YourEndpointId por el identificador del punto de conexión, YourSubscriptionKey por la clave del recurso de Voz y YourServiceRegion por la región del recurso de Voz.

curl -v -X GET "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/YourEndpointId" -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey"

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790",
  "model": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/1e47c19d-12ca-4ba5-b177-9e04bd72cf98"
  },
  "links": {
    "logs": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/98375aaa-40c2-42c4-b65c-f76734fc7790/files/logs",
    "restInteractive": "https://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restConversation": "https://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "restDictation": "https://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketInteractive": "wss://eastus.stt.speech.microsoft.com/speech/recognition/interactive/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketConversation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/conversation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790",
    "webSocketDictation": "wss://eastus.stt.speech.microsoft.com/speech/recognition/dictation/cognitiveservices/v1?cid=98375aaa-40c2-42c4-b65c-f76734fc7790"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/2f78cdb7-58ac-4bd9-9bc6-170e31483b26"
  },
  "properties": {
    "loggingEnabled": true
  },
  "lastActionDateTime": "2022-05-19T23:41:05Z",
  "status": "Succeeded",
  "createdDateTime": "2022-05-19T23:41:05Z",
  "locale": "en-US",
  "displayName": "My Endpoint",
  "description": "My Updated Endpoint Description"
}

Haga una solicitud HTTP GET con el URI de "logs" del cuerpo de respuesta anterior. Reemplace YourEndpointId por el identificador del punto de conexión, YourSubscriptionKey por la clave del recurso de Voz y YourServiceRegion por la región del recurso de Voz.

curl -v -X GET "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/endpoints/YourEndpointId/files/logs" -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey"

Las ubicaciones de cada archivo de registro con más detalles se devuelven en el cuerpo de la respuesta.

Los datos de registro están disponibles en el almacenamiento propiedad de Microsoft durante 30 días, tras los cuales se quitan. Si su propia cuenta de almacenamiento está vinculada a la suscripción a los servicios de Azure AI, los datos de registro no se eliminan automáticamente.

Pasos siguientes