Questa guida mostra come inviare input audio a una richiesta di rilevamento dell'intento utilizzando l'API. Dialogflow elabora l'audio e lo converte in testo prima di tentare una corrispondenza dell'intento. Questa conversione è nota come input audio, riconoscimento vocale, conversione della voce in testo o STT.
Prima di iniziare
Questa funzionalità è applicabile solo quando si utilizza l'API per le interazioni con gli utenti finali. Se utilizzi un' integrazione, puoi saltare questa guida.
Prima di leggere questa guida, devi:
- Leggi le nozioni di base su Dialogflow.
- Esegui i passaggi di configurazione.
Crea un agente
- Vai alla console di Dialogflow ES.
- Se richiesto, accedi alla console di Dialogflow. Per saperne di più, consulta la panoramica della console di Dialogflow .
- Nel menu della barra laterale, espandi Caricamento agenti.
- Fai clic su Crea nuovo agente.
- Inserisci il nome dell'agente, la lingua predefinita e il fuso orario predefinito.
- Inserisci un progetto esistente. Per consentire alla console di Dialogflow di creare un progetto, seleziona Crea un nuovo progetto Google.
- Fai clic su Crea.
Importa il file di esempio nell'agente
I passaggi descritti in questa guida presuppongono che tu abbia un agente, quindi devi importarne uno preparato per questa guida. Durante l'importazione, questi passaggi utilizzano l'opzione restore , che sovrascrive tutte le impostazioni, gli intent e le entità dell'agente.
Per importare il file:
-
Scarica il
room-booking-agent.zipfile. - Vai alla console di Dialogflow ES.
- Seleziona l'agente.
- Fai clic sul pulsante delle impostazioni settings accanto al nome dell'agente.
- Seleziona la scheda Esporta e importa.
- Seleziona Ripristina da ZIP e segui le istruzioni per ripristinare il file ZIP che hai scaricato.
Rileva l'intento
Per rilevare l'intento,
chiama il metodo detectIntent sul
Sessions
tipo.
REST
Scarica il file audio di input di esempiobook-a-room.wav
,
che dice "book a room".
Il file audio deve essere codificato in base64 per questo esempio, in modo che possa essere fornito nella richiesta JSON riportata di seguito.
Ecco un esempio di Linux:
wget https://cloud.google.com/dialogflow/es/docs/data/book-a-room.wav base64 -w 0 book-a-room.wav > book-a-room.b64
Per esempi su altre piattaforme, consulta la sezione Codifica in base64 dei contenuti audio nella documentazione dell'API Cloud Speech-to-Text.
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- AUDIO: i contenuti audio codificati in base64
Metodo HTTP e URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/sessions/123456789:detectIntent
Corpo JSON della richiesta:
{
"queryInput": {
"audioConfig": {
"languageCode": "en-US"
}
},
"inputAudio": "AUDIO"
}
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{
"responseId": "3c1e5a89-75b9-4c3f-b63d-4b1351dd5e32",
"queryResult": {
"queryText": "book a room",
"action": "room.reservation",
"parameters": {
"time": "",
"date": "",
"guests": "",
"duration": "",
"location": ""
},
"fulfillmentText": "I can help with that. Where would you like to reserve a room?",
"fulfillmentMessages": [
{
"text": {
"text": [
"I can help with that. Where would you like to reserve a room?"
]
}
}
],
"intent": {
"name": "projects/PROJECT_ID/agent/intents/e8f6a63e-73da-4a1a-8bfc-857183f71228",
"displayName": "room.reservation"
},
"intentDetectionConfidence": 1,
"diagnosticInfo": {},
"languageCode": "en-us"
}
}
Tieni presente che il valore del campo queryResult.action è "room.reservation" e il valore del campo queryResult.fulfillmentMessages[0|1].text.text[0] chiede all'utente ulteriori informazioni.
Go
Per eseguire l'autenticazione in Dialogflow CX, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per eseguire l'autenticazione in Dialogflow CX, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per eseguire l'autenticazione in Dialogflow CX, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per eseguire l'autenticazione in Dialogflow CX, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Linguaggi aggiuntivi
C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client, poi consulta la documentazione di riferimento di Dialogflow CX per .NET.
PHP: segui le istruzioni di configurazione di PHP nella pagina delle librerie client, poi consulta la documentazione di riferimento di Dialogflow CX per PHP.
Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client, poi consulta la documentazione di riferimento di Dialogflow CX per Ruby.