Ce guide fournit des recommandations pour surveiller et améliorer les performances des agents de data store.
Suivre les performances de votre agent
Vous pouvez surveiller l'historique des conversations de vos agents et utiliser l'outil d'analyse pour obtenir des statistiques sur ces derniers.
Exécuter une évaluation en libre-service
Vous pouvez effectuer une évaluation en libre-service qui évalue la qualité de votre agent de data store et recommande des modifications.
Améliorer les réponses des agents
Si vous constatez que certaines réponses ne répondent pas à vos attentes lors des tests, procédez comme suit.
- Vous pouvez écraser une réponse en ajoutant une entrée de FAQ pour une question spécifique.
- Si vos réponses à des questions fréquentes structurées sont de mauvaise qualité, essayez d'utiliser des questions fréquentes non structurées.
- L'utilisation de configurations de recherche vous permet de vous assurer que les bonnes réponses sont fournies.
- Utilisez les configurations d'analyse et de fragmentation pour optimiser les réponses.
- Pour bannir certaines expressions, consultez Paramètres de l'agent: phrases interdites.
Gérer les digressions de la conversation
Un utilisateur final peut poser des questions de clarification au cours d'une conversation. Par exemple, lors de la collecte des informations de carte de crédit, il peut vouloir clarifier ce qu'est un CVV. Dans ce cas, votre agent doit répondre à la question et reprendre la collecte des informations de carte de crédit nécessaires. Pour ce faire, vous pouvez créer un gestionnaire de data store avec des data stores qui répondent à la question, l'appliquer à la page de démarrage du flux qui gère la collecte des informations de carte de crédit et définir une cible de transition pour que ce gestionnaire revienne à la "page actuelle".
Gérer les correspondances d'intents indésirables
Si votre agent met en correspondance les intents alors qu'il devrait utiliser un gestionnaire de data store, vous pouvez essayer de résoudre ce problème en procédant comme suit:
- Supprimez ou modifiez des phrases d'entraînement vagues, afin qu'elles gèrent chacune avec précision l'intention souhaitée et n'entrent pas en conflit avec le contenu de votre data store.
- Utilisez des exemples négatifs pour éviter la mise en correspondance des intents.
Filtrage du data store
Dans certains cas, il se peut que vous ne souhaitiez que certains datastores soient disponibles pour les requêtes, en fonction des valeurs des paramètres de session. Par exemple, vous pouvez avoir des data stores uniques pour les catégories de produits. Pour filtrer le data store par catégorie de produits:
- Définissez les paramètres de session sur les catégories de produits.
- Créez des routes de condition qui vérifient les valeurs des paramètres de session et passent à une page spécifique disposant du gestionnaire de data store souhaité.
- Le gestionnaire de data store doit revenir à la page d'appel pour que la conversation puisse se poursuivre.
Personnalisation
Pour rendre les réponses génératives plus pertinentes pour les utilisateurs finaux, vous pouvez fournir à Dialogflow des informations sur les utilisateurs.
Ces informations sont fournies au format JSON. Comme aucun schéma n'est attendu, vous êtes libre de définir les propriétés de l'objet. Ce fichier JSON est envoyé en l'état au grand modèle de langage. Les noms de propriété et les valeurs descriptifs permettent donc d'obtenir les meilleurs résultats.
Exemple :
{
"subscription plan": "Business Premium Plus",
"devices owned": [
{"model": "Google Pixel 7"},
{"model": "Google Pixel Tablet"}
]
}
Personnaliser avec l'API Dialogflow
Vous pouvez fournir ces données à Dialogflow lors de l'envoi de requêtes de détection d'intent. Ces informations doivent être fournies dans chaque requête de détection d'intent, car elles ne sont pas conservées dans la session.
Indiquez ces informations dans le champ queryParams.endUserMetadata
de la méthode Sessions.detectIntent
.
Sélectionnez un protocole et une version pour la référence de session :
Protocole | V3 | V3beta1 |
---|---|---|
REST | Ressource de session | Ressource de session |
RPC | Interface de la session | Interface de la session |
C++ | SessionsClient | Non disponible |
C# | SessionsClient | Non disponible |
Go | SessionsClient | Non disponible |
Java | SessionsClient | SessionsClient |
Node.js | SessionsClient | SessionsClient |
PHP | Non disponible | Non disponible |
Python | SessionsClient | SessionsClient |
Ruby | Non disponible | Non disponible |
Personnaliser avec Dialogflow Messenger
Vous pouvez fournir ces données à l'intégration de Dialogflow Messenger. Reportez-vous à la méthode setContext.
Configuration de la recherche
Pour mieux contrôler le comportement de l'agent et améliorer la qualité des réponses, vous pouvez augmenter et filtrer les configurations de recherche afin de vous permettre de booster, d'enfouir et de filtrer les documents.
Les commandes d'optimisation vous permettent de modifier le classement des résultats de recherche en appliquant une valeur d'optimisation (supérieure à zéro pour un classement plus élevé, inférieure à zéro pour un classement inférieur) à des documents spécifiques.
Les commandes de filtrage vous permettent de conserver ou de supprimer des résultats de recherche en fonction des critères de filtre spécifiés.
Ces informations sont fournies au format JSON aux requêtes Dialogflow. Le format du fichier JSON dépend du type de commande de recherche.
Contrôle de l'amplification
La configuration de recherche suivante décrit une commande d'optimisation:
"searchConfig": {
"boostSpecs": [
{
"dataStores": [ "DATASTORE_ID" ],
"spec": [
{
"conditionBoostSpecs": {
"condition": "CONDITION",
"boost": "1.0"
}
}
]
}
]
}
Commande de filtrage
La configuration de recherche suivante décrit une commande de filtrage:
"searchConfig": {
"filterSpecs": [
{
"dataStores": [ "DATASTORE_ID" ],
"filter": "CONDITION"
}
]
}
Définir la configuration de la recherche avec l'API Dialogflow
Vous pouvez fournir ces données à Dialogflow lors de l'envoi de requêtes de détection d'intent. Ces informations doivent être fournies dans chaque requête de détection d'intent, car elles ne sont pas conservées dans la session.
Indiquez ces informations dans le champ queryParams.searchConfig
de la méthode Sessions.detectIntent
.
Sélectionnez un protocole et une version pour la référence de session :
Protocole | V3 | V3beta1 |
---|---|---|
REST | Ressource de session | Ressource de session |
RPC | Interface de la session | Interface de la session |
C++ | SessionsClient | Non disponible |
C# | SessionsClient | Non disponible |
Go | SessionsClient | Non disponible |
Java | SessionsClient | SessionsClient |
Node.js | SessionsClient | SessionsClient |
PHP | Non disponible | Non disponible |
Python | SessionsClient | SessionsClient |
Ruby | Non disponible | Non disponible |
Définir la configuration de la recherche avec Dialogflow Messenger
Vous pouvez fournir ces données à l'intégration de Dialogflow Messenger.
Pour appliquer une commande de recherche, l'extrait suivant doit être ajouté au code DF Messenger lors de son intégration à un site Web:
<script>
document.addEventListener('df-messenger-loaded', () => {
const dfMessenger = document.querySelector('df-messenger');
const searchConfig = { ... }
dfMessenger.setQueryParameters(searchConfig);
});
</script>
Consultez la méthode setQueryParameters.