Distribuire un modello di riconoscimento vocale personalizzato

Questo articolo illustra come distribuire un endpoint per un modello di riconoscimento vocale personalizzato. Ad eccezione della trascrizione batch, è necessario distribuire un endpoint personalizzato per usare un modello di riconoscimento vocale personalizzato.

Suggerimento

Non è necessario un endpoint di distribuzione ospitato per usare il riconoscimento vocale personalizzato con l'API di trascrizione batch. È possibile risparmiare risorse se il modello di riconoscimento vocale personalizzato viene usato solo per la trascrizione batch. Per altre informazioni, vedere Prezzi del servizio Voce.

È possibile distribuire un endpoint per un modello di base o personalizzato e quindi aggiornare l'endpoint in un secondo momento per usare un modello con training migliore.

Nota

Gli endpoint usati dalle F0 risorse voce vengono eliminati dopo sette giorni.

Aggiungere un endpoint di distribuzione

Per creare un endpoint personalizzato, seguire questa procedura:

  1. Accedere a Speech Studio.

  2. Selezionare Riconoscimento vocale> personalizzato Il nome >del progetto Distribuisci modelli.

    Se si tratta del primo endpoint, si noterà che nella tabella non sono elencati endpoint. Dopo aver creato un endpoint, usare questa pagina per tenere traccia di tutti gli endpoint distribuiti.

  3. Selezionare Distribuisci modello per avviare la creazione guidata del nuovo endpoint.

  4. Nella pagina Nuovo endpoint immettere un nome e una descrizione per l'endpoint personalizzato.

  5. Selezionare il modello personalizzato che si desidera associare all'endpoint.

  6. Facoltativamente, è possibile selezionare la casella per abilitare la registrazione audio e diagnostica del traffico dell'endpoint.

    Screenshot della pagina Nuovo endpoint che mostra la casella di controllo per abilitare la registrazione.

  7. Selezionare Aggiungi per salvare e distribuire l'endpoint.

Nella pagina principale Distribuisci modelli i dettagli sul nuovo endpoint vengono visualizzati in una tabella, ad esempio nome, descrizione, stato e data di scadenza. La creazione di un'istanza di un nuovo endpoint che usa i modelli personalizzati può richiedere fino a 30 minuti. Quando lo stato della distribuzione diventa Succeeded, l'endpoint è pronto per l'uso.

Importante

Prendere nota della data di scadenza del modello. Questa è l'ultima data in cui è possibile usare il modello personalizzato per il riconoscimento vocale. Per altre informazioni, vedere Ciclo di vita del modello e dell'endpoint.

Selezionare il collegamento all'endpoint per visualizzare informazioni specifiche, ad esempio la chiave dell'endpoint, l'URL dell'endpoint e il codice di esempio.

Per creare un endpoint e distribuire un modello, usare il spx csr endpoint create comando . Creare i parametri della richiesta in base alle istruzioni seguenti:

  • Impostare il project parametro sull'ID di un progetto esistente. Questa opzione è consigliata per consentire anche di visualizzare e gestire l'endpoint in Speech Studio. È possibile eseguire il spx csr project list comando per ottenere i progetti disponibili.
  • Impostare il parametro obbligatorio model sull'ID del modello che si vuole distribuire all'endpoint.
  • Impostare il parametro obbligatorio language . Le impostazioni locali dell'endpoint devono corrispondere alle impostazioni locali del modello. Le impostazioni locali non possono essere modificate in un secondo momento. Il parametro dell'interfaccia della locale riga di comando language di Voce corrisponde alla proprietà nella richiesta e nella risposta JSON.
  • Impostare il parametro obbligatorio name . Si tratta del nome visualizzato in Speech Studio. Il parametro dell'interfaccia della displayName riga di comando name di Voce corrisponde alla proprietà nella richiesta e nella risposta JSON.
  • Facoltativamente, è possibile impostare il logging parametro . Impostare su enabled per abilitare la registrazione audio e diagnostica del traffico dell'endpoint. Il valore predefinito è false.

Ecco un esempio di comando dell'interfaccia della riga di comando di Voce per creare un endpoint e distribuire un modello:

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

Dovrebbe essere visualizzato un corpo della risposta nel formato seguente:

{
  "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 proprietà di primo livello self nel corpo della risposta è l'URI dell'endpoint. Usare questo URI per ottenere informazioni dettagliate sul progetto, il modello e i log dell'endpoint. Usare anche questo URI per aggiornare l'endpoint.

Per la Guida dell'interfaccia della riga di comando di Voce con gli endpoint, eseguire il comando seguente:

spx help csr endpoint

Per creare un endpoint e distribuire un modello, usare l'operazione Endpoints_Create dell'API REST Riconoscimento vocale in testo. Costruire il corpo della richiesta in base alle istruzioni seguenti:

  • Impostare la project proprietà sull'URI di un progetto esistente. Questa opzione è consigliata per consentire anche di visualizzare e gestire l'endpoint in Speech Studio. È possibile effettuare una richiesta di Projects_List per ottenere i progetti disponibili.
  • Impostare la proprietà obbligatoria model sull'URI del modello che si vuole distribuire nell'endpoint.
  • Impostare la proprietà obbligatoria locale . Le impostazioni locali dell'endpoint devono corrispondere alle impostazioni locali del modello. Le impostazioni locali non possono essere modificate in un secondo momento.
  • Impostare la proprietà obbligatoria displayName . Si tratta del nome visualizzato in Speech Studio.
  • Facoltativamente, è possibile impostare la loggingEnabled proprietà all'interno propertiesdi . Impostare su true per abilitare la registrazione audio e diagnostica del traffico dell'endpoint. Il valore predefinito è false.

Effettuare una richiesta HTTP POST usando l'URI come illustrato nell'esempio di Endpoints_Create seguente. Sostituire YourSubscriptionKey con la chiave della risorsa Voce, sostituire YourServiceRegion con l'area della risorsa Voce e impostare le proprietà del corpo della richiesta come descritto in precedenza.

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"

Dovrebbe essere visualizzato un corpo della risposta nel formato seguente:

{
  "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 proprietà di primo livello self nel corpo della risposta è l'URI dell'endpoint. Usare questo URI per ottenere informazioni dettagliate sul progetto, il modello e i log dell'endpoint. È anche possibile usare questo URI per aggiornare o eliminare l'endpoint.

Modificare il modello e ridistribuire l'endpoint

Un endpoint può essere aggiornato per usare un altro modello creato dalla stessa risorsa Voce. Come accennato in precedenza, è necessario aggiornare il modello dell'endpoint prima della scadenza del modello.

Per usare un nuovo modello e ridistribuire l'endpoint personalizzato:

  1. Accedere a Speech Studio.
  2. Selezionare Riconoscimento vocale> personalizzato Il nome >del progetto Distribuisci modelli.
  3. Selezionare il collegamento a un endpoint in base al nome e quindi selezionare Cambia modello.
  4. Selezionare il nuovo modello da usare per l'endpoint.
  5. Selezionare Fine per salvare e ridistribuire l'endpoint.

Per ridistribuire l'endpoint personalizzato con un nuovo modello, usare il spx csr model update comando . Creare i parametri della richiesta in base alle istruzioni seguenti:

  • Impostare il parametro obbligatorio endpoint sull'ID dell'endpoint che si vuole distribuire.
  • Impostare il parametro obbligatorio model sull'ID del modello che si vuole distribuire all'endpoint.

Ecco un esempio di comando dell'interfaccia della riga di comando di Voce che ridistribuisce l'endpoint personalizzato con un nuovo modello:

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

Dovrebbe essere visualizzato un corpo della risposta nel formato seguente:

{
  "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"
}

Per la Guida dell'interfaccia della riga di comando di Voce con gli endpoint, eseguire il comando seguente:

spx help csr endpoint

Per ridistribuire l'endpoint personalizzato con un nuovo modello, usare l'operazione di Endpoints_Update dell'API REST Riconoscimento vocale in testo. Costruire il corpo della richiesta in base alle istruzioni seguenti:

  • Impostare la model proprietà sull'URI del modello che si vuole distribuire all'endpoint.

Effettuare una richiesta HTTP PATCH usando l'URI, come illustrato nell'esempio seguente. Sostituire YourSubscriptionKey con la chiave della risorsa Voce, sostituire YourServiceRegion con l'area della risorsa Voce, sostituire YourEndpointId con l'ID endpoint e impostare le proprietà del corpo della richiesta come descritto in precedenza.

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"

Dovrebbe essere visualizzato un corpo della risposta nel formato seguente:

{
  "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"
}

Il completamento della ridistribuzione richiede alcuni minuti. Nel frattempo, l'endpoint usa il modello precedente senza interruzioni del servizio.

Visualizzare i dati di registrazione

I dati di registrazione sono disponibili per l'esportazione se sono stati configurati durante la creazione dell'endpoint.

Per scaricare i log degli endpoint:

  1. Accedere a Speech Studio.
  2. Selezionare Riconoscimento vocale> personalizzato Il nome >del progetto Distribuisci modelli.
  3. Selezionare il collegamento in base al nome dell'endpoint.
  4. In Registrazione contenuto selezionare Scarica log.

Per ottenere i log per un endpoint, usare il spx csr endpoint list comando . Creare i parametri della richiesta in base alle istruzioni seguenti:

  • Impostare il parametro obbligatorio endpoint sull'ID dell'endpoint che si desidera ottenere i log.

Ecco un esempio di comando dell'interfaccia della riga di comando di Voce che ottiene i log per un endpoint:

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

I percorsi di ogni file di log con altri dettagli vengono restituiti nel corpo della risposta.

Per ottenere i log per un endpoint, iniziare usando l'operazione di Endpoints_Get dell'API REST Riconoscimento vocale in testo.

Effettuare una richiesta HTTP GET usando l'URI, come illustrato nell'esempio seguente. Sostituire YourEndpointId con l'ID endpoint, sostituire YourSubscriptionKey con la chiave della risorsa Voce e sostituire YourServiceRegion con l'area della risorsa Voce.

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

Dovrebbe essere visualizzato un corpo della risposta nel formato seguente:

{
  "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"
}

Effettuare una richiesta HTTP GET usando l'URI "logs" del corpo della risposta precedente. Sostituire YourEndpointId con l'ID endpoint, sostituire YourSubscriptionKey con la chiave della risorsa Voce e sostituire YourServiceRegion con l'area della risorsa Voce.

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

I percorsi di ogni file di log con altri dettagli vengono restituiti nel corpo della risposta.

I dati di registrazione sono disponibili nella risorsa di archiviazione di proprietà di Microsoft per 30 giorni e quindi vengono rimossi. Se il proprio account di archiviazione è collegato alla sottoscrizione dei servizi di intelligenza artificiale di Azure, i dati di registrazione non vengono eliminati automaticamente.

Passaggi successivi