Ce guide fournit des recommandations pour surveiller et améliorer les performances des gestionnaires de data store.
Suivre les performances de vos agents
Vous pouvez surveiller l'historique des conversations de vos agents et utiliser l'outil d'analyse pour obtenir des statistiques sur les agents.
Exécuter une évaluation en libre-service
Vous pouvez exécuter une évaluation en libre-service qui évaluera la qualité de votre agent de data store et vous recommandera 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 remplacer une réponse en ajoutant une entrée de questions fréquentes pour une question spécifique.
- Si vous obtenez des réponses de mauvaise qualité avec une FAQ structurée, essayez d'utiliser une FAQ non structurée.
- L'utilisation de configurations de recherche permet de s'assurer que les bonnes réponses sont fournies.
- Utilisez les configurations d'analyse et de segmentation pour optimiser les réponses.
- Pour interdire certaines expressions, consultez la section Paramètres de l'agent: expressions interdites.
- Pour personnaliser le filtrage du contenu de l'IA responsable (RAI), consultez Paramètres de l'agent: filtres de sécurité.
Optimisation des outils de data store utilisés par les Playbooks
Ce paramètre accélère la réponse RAG d'un data store et améliore la latence en ne réécrivant pas la requête de l'utilisateur ni en ne remplissant pas dynamiquement les paramètres de l'outil. Cela signifie que la requête utilisateur est transmise au magasin de données telle quelle, et qu'aucun filtre ni paramètre lié aux métadonnées utilisateur n'est renseigné.
Pour activer cette fonctionnalité dans la console Dialogflow CX, sélectionnez le playbook, puis cliquez sur l'onglet Paramètres. Vous pouvez configurer le playbook pour qu'il continue de traiter immédiatement les actions de suivi ou qu'il attende la prochaine entrée de l'utilisateur final.
Si cette option est activée, les instructions suivantes du playbook sont toujours respectées:
- Moment où répondre à la requête de l'utilisateur à l'aide du ou des data store.
- Quand ne pas répondre à la requête de l'utilisateur à l'aide du ou des data store et fournir plutôt une autre réponse.
- Toute instruction à caractère défensif, par exemple "Ne répondez pas aux questions sur les concurrents".
Si cette option est activée, les instructions Playbook suivantes sont ignorées. N'activez pas ce paramètre si vous rencontrez l'une des exigences de requête suivantes:
- Filtres de data store spécifiques à renseigner en suivant les instructions.
- Instructions pour appliquer les métadonnées de personnalisation utilisateur transmises par les filtres.
- Toute autre instruction pour réécrire la requête utilisateur avant d'interroger le magasin de données.
Gérer les digressions de 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 code CVC. 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 datastores qui répondent à la question, appliquer ce gestionnaire à la page de démarrage du flux qui gère la collecte d'informations sur les cartes de crédit, puis définir une cible de transition pour que ce gestionnaire revienne à la "page actuelle".
Gérer les correspondances d'intent indésirables
Si votre agent met en correspondance des intents alors qu'il devrait utiliser un gestionnaire de data store, vous pouvez essayer les solutions suivantes pour corriger le problème:
- Supprimez ou modifiez les expressions d'entraînement vagues afin que toutes vos expressions d'entraînement gèrent précisément l'intention souhaitée et ne soient pas en conflit avec le contenu de votre data store.
- Utilisez des exemples négatifs pour éviter la mise en correspondance d'intent.
Filtrage des datastores
Dans certains cas, vous ne souhaitez peut-être que certains magasins de données soient disponibles pour les requêtes, en fonction des valeurs des paramètres de session. Par exemple, vous pouvez avoir des entrepôts de données uniques pour les catégories de produits. Pour filtrer les data store pour les catégories de produits:
- Définissez les paramètres de session sur les catégories de produits.
- Créez des routes conditionnelles qui vérifient les valeurs des paramètres de session et effectuent la transition vers une page spécifique qui contient le gestionnaire de data store souhaité.
- Le gestionnaire du 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 aux agents conversationnels (Dialogflow CX) des informations sur les utilisateurs.
Ces informations sont fournies au format JSON. Il n'y a pas de schéma attendu. Vous êtes donc libre de définir les propriétés de l'objet. Ce fichier JSON est envoyé au grand modèle de langage tel quel. Par conséquent, les noms et valeurs de propriété descriptifs permettent 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
Vous pouvez fournir ces données aux agents de conversation (Dialogflow CX) lorsque vous envoyez des 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.
Fournissez 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 session | Interface de 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 |
Personnalisation avec Dialogflow CX Messenger
Vous pouvez fournir ces données à l'intégration de Messenger dans Dialogflow CX. Consultez 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, les configurations de recherche de boost et de filtrage sont exposées pour vous permettre de booster, d'enfouir et de filtrer des documents.
Les commandes de boost vous permettent de modifier le classement des résultats de recherche en appliquant une valeur de boost (supérieure à zéro pour un classement plus élevé, inférieure à zéro pour un classement plus faible) à des documents spécifiques.
Les commandes de filtre 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 des agents de conversation (Dialogflow CX). Le format du fichier JSON dépend du type de contrôle de recherche.
Contrôle du boost
La configuration de recherche suivante décrit un contrôle d'amélioration:
"searchConfig": {
"boostSpecs": [
{
"dataStores": [ "DATASTORE_ID" ],
"spec": [
{
"conditionBoostSpecs": {
"condition": "CONDITION",
"boost": "1.0"
}
}
]
}
]
}
Commande de filtrage
La configuration de recherche suivante décrit un contrôle de filtre:
"searchConfig": {
"filterSpecs": [
{
"dataStores": [ "DATASTORE_ID" ],
"filter": "CONDITION"
}
]
}
Configurer la recherche avec l'API
Vous pouvez fournir ces données aux agents de conversation (Dialogflow CX) lorsque vous envoyez des 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.
Fournissez 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 session | Interface de 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 |
Configurer la recherche avec Dialogflow CX Messenger
Vous pouvez fournir ces données à l'intégration de Messenger dans Dialogflow CX.
Pour appliquer un contrôle de recherche, vous devez ajouter l'extrait de code suivant au code Messenger lorsque vous l'intégrez à 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.