Ce guide explique comment insérer une entrée audio dans une requête de détection d'intent à l'aide de l'API. Dialogflow traite le contenu audio et le convertit en texte avant d'essayer d'établir une correspondance d'intent. Cette conversion est appelée entrée audio, reconnaissance vocale ou speech-to-text (STT).
Avant de commencer
Cette fonctionnalité n'est disponible que lorsque l'API est utilisée pour les interactions de l'utilisateur final. Si vous utilisez une intégration, vous pouvez ignorer ce guide.
Avant de lire ce guide, procédez comme suit :
- Consultez la section Principes de base de Dialogflow.
- Effectuez la procédure de configuration.
Créer un agent
- Accédez à la console Dialogflow ES.
- Si nécessaire, connectez-vous à la console Dialogflow. Pour en savoir plus, consultez la section Présentation de la console Dialogflow.
- Dans le menu de la barre latérale, développez Chargement des agents.
- Cliquez sur Create new agent (Créer un agent).
- Saisissez le nom de l'agent, la langue par défaut et le fuseau horaire par défaut.
- Saisissez un projet existant. Pour autoriser la console Dialogflow à créer un projet, sélectionnez Créer un projet Google.
- Cliquez sur Créer.
Importer le fichier d'exemple dans l'agent
Dans la mesure où les étapes de ce guide sont fondées sur certaines hypothèses concernant votre agent, vous devez importer un agent préparé pour ce guide. Lors de l'importation, ces étapes utilisent l'option de restauration qui écrase l'ensemble des paramètres, des intents et des entités de l'agent.
Pour importer le fichier, procédez comme suit :
-
Téléchargez le
room-booking-agent.zipfichier. - Accédez à la console Dialogflow ES.
- Sélectionnez votre agent.
- Cliquez sur le bouton des paramètres settings à côté du nom de l'agent.
- Sélectionnez l'onglet Export and Import (Exporter et importer).
- Sélectionnez Restaurer depuis un fichier ZIP et suivez les instructions pour restaurer le fichier ZIP que vous avez téléchargé.
Détecter un intent
Pour détecter l'intent,
appelez la méthode detectIntent du
Sessions
type.
REST
Téléchargez l'exemple de fichier d'entrée audiobook-a-room.wav
, qui énonce la phrase "book a room".
Pour cet exemple, le fichier audio doit être encodé en base64 afin de pouvoir être inclus dans la requête JSON ci-dessous.
Voici un exemple avec 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
Pour des exemples sur d'autres plates-formes, consultez l'article Encoder du contenu audio en base64 de la documentation de l'API Cloud Speech-to-Text.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud
- AUDIO : contenu audio encodé en base64
Méthode HTTP et URL :
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/sessions/123456789:detectIntent
Corps JSON de la requête :
{
"queryInput": {
"audioConfig": {
"languageCode": "en-US"
}
},
"inputAudio": "AUDIO"
}
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{
"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"
}
}
Notez que la valeur du champ queryResult.action est "room.reservation" et que celle du champ queryResult.fulfillmentMessages[0|1].text.text[0] demande des précisions à l'utilisateur.
Go
Pour vous authentifier auprès de Dialogflow CX, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Pour vous authentifier auprès de Dialogflow CX, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Pour vous authentifier auprès de Dialogflow CX, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Pour vous authentifier auprès de Dialogflow CX, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Langages supplémentaires
C# : Veuillez suivre les Instructions de configuration de C# sur la page des bibliothèques clientes, puis consultez la Documentation de référence sur Dialogflow CX pour .NET.
PHP: Veuillez suivre les Instructions de configuration pour PHP sur la page des bibliothèques clientes, puis consultez la Documentation de référence sur Dialogflow CX pour PHP.
Ruby : Veuillez suivre les Instructions de configuration pour Ruby sur la page des bibliothèques clientes, puis consultez la Documentation de référence sur Dialogflow CX pour Ruby.