Cette page décrit la fonctionnalité de saisie semi-automatique avancée de Gemini Enterprise.
De la même manière que la saisie semi-automatique de base, la saisie semi-automatique avancée génère des suggestions de requêtes en fonction des premiers caractères saisis pour la requête.
Avant de lire cette page, familiarisez-vous avec la saisie semi-automatique de base de Gemini Enterprise. Consultez Configurer la saisie semi-automatique.
Principales fonctionnalités de la saisie semi-automatique avancée
Voici les principales fonctionnalités de la saisie semi-automatique avancée qui la distinguent de la saisie semi-automatique de base :
Recherche combinée : la saisie semi-automatique avancée peut être utilisée avec des applications connectées à plusieurs data store.
Contrôle des accès : la saisie semi-automatique avancée respecte les contrôles des accès. (Les contrôles d'accès sont également appelés LCA, ou listes de contrôle des accès.) La saisie semi-automatique avancée ne suggère que des requêtes de recherche liées aux documents auxquels l'utilisateur a accès. Pour en savoir plus sur le contrôle des accès, consultez Identité et autorisations.
- Amélioration linguistique : la saisie semi-automatique avancée peut être configurée pour améliorer les suggestions dans une ou plusieurs langues. Par exemple, si la langue du navigateur est le néerlandais, les suggestions de saisie semi-automatique dans cette langue peuvent être boostées. Pour en savoir plus, consultez Envoyer une requête de saisie semi-automatique avec un boost de langue.
Différents types de suggestions : avec la saisie semi-automatique avancée, au lieu des suggestions de requêtes de saisie semi-automatique standards, vous pouvez spécifier que vous souhaitez différents types de suggestions :
Suggestions enrichies : les utilisateurs reçoivent des suggestions de saisie automatique concernant les documents dont les titres correspondent aux lettres qu'ils saisissent. Pour en savoir plus, consultez Envoyer une requête de saisie semi-automatique et renvoyer des suggestions enrichies.
Requêtes récentes : les utilisateurs reçoivent des suggestions de saisie automatique correspondant à leurs requêtes récentes dont le préfixe correspond aux lettres qu'ils saisissent. Pour en savoir plus, consultez Envoyer une requête de saisie semi-automatique et renvoyer les requêtes récentes.
Avant de commencer
Avant de commencer à utiliser la saisie semi-automatique avancée, procédez comme suit :
Examinez et, si vous le souhaitez, modifiez les paramètres de saisie semi-automatique de votre application. Consultez Mettre à jour les paramètres de saisie semi-automatique.
Pour les datastores plus petits, définissez Activer la saisie semi-automatique sur Maintenant. Nous vous recommandons de le faire, car les petits datastores peuvent ne pas contenir suffisamment de données pour fournir des suggestions précises.
Si vos datastores contiennent des informations permettant d'identifier personnellement l'utilisateur ou si vous utilisez le modèle de suggestions de requêtes d'historique de la Recherche ou d'événements utilisateur, consultez Se protéger contre les fuites d'informations permettant d'identifier personnellement l'utilisateur et configurez les mesures de protection contre la perte de données (DLP) qui peuvent être nécessaires pour éviter les fuites d'informations permettant d'identifier personnellement l'utilisateur.
Si vous prévoyez d'utiliser les suggestions de recherche récentes (
RECENT_SEARCH), assurez-vous d'enregistrer les événements utilisateur de recherche. Gemini Enterprise ne remplit pas automatiquement l'index de recherche récent lorsque des recherches sont effectuées à l'aide de la méthodeSearchService.Search. Pour renvoyer les requêtes récentes, vous devez enregistrer les événements utilisateur de recherche à l'aide de la méthodeuserEvents.write. Consultez Avant de commencer pour les requêtes récentes.
Envoyer des requêtes de saisie semi-automatique
L'exemple suivant montre comment envoyer des requêtes de saisie semi-automatique avancées à l'aide de la méthode completionConfig.completeQuery.
REST
Pour envoyer une requête de saisie semi-automatique à l'aide de l'API, procédez comme suit :
Trouvez l'ID de votre application. Si vous disposez déjà de l'ID de votre application, passez à l'étape suivante.
Dans la console Google Cloud , accédez à la page Gemini Enterprise.
Sur la page Applications, recherchez le nom de votre application et récupérez son ID dans la colonne ID.
Appelez la méthode
completionConfig.completeQuery.curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/completionConfig:completeQuery" \ -d '{ "query":"QUERY_STRING" }'Remplacez les éléments suivants :
PROJECT_ID: par l'ID du projet.APP_ID: ID de l'application.QUERY_STRING: saisie semi-automatique utilisée pour récupérer les suggestions.
Envoyer une requête de saisie semi-automatique avec un boost de langue
Vous pouvez booster ou enterrer les suggestions de saisie semi-automatique en fonction du code de langue. Par exemple, vous pouvez rendre les suggestions de saisie semi-automatique dans certaines langues plus ou moins susceptibles d'apparaître.
La valeur de boost doit être comprise entre -1 et 1. La définition d'un nombre négatif "masque" les suggestions de saisie semi-automatique dans cette langue, tandis qu'un nombre positif booste la langue.
Utilisez des tags de langue à deux lettres définis par la norme BCP 47, par exemple en, fr, hi et zh.
REST
Pour envoyer une requête de saisie semi-automatique incluant une valeur d'amélioration de la langue, procédez comme suit :
Trouvez l'ID de votre application. Si vous disposez déjà de l'ID de votre application, passez à l'étape suivante.
Dans la console Google Cloud , accédez à la page Gemini Enterprise.
Sur la page Applications, recherchez le nom de votre application et récupérez son ID dans la colonne ID.
Appelez la méthode
completionConfig.completeQuery.curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/completionConfig:completeQuery" \ -d '{ "query":"QUERY_STRING", "boostSpec": { "conditionBoostSpecs": [{ "condition": "(langCode: ANY(LANG_CODE))", "boost": BOOST_VALUE }] } }'Remplacez les éléments suivants :
PROJECT_ID: par l'ID du projet.APP_ID: ID de l'application.QUERY_STRING: saisie semi-automatique utilisée pour récupérer les suggestions.LANG_CODE: code à deux lettres pour une ou plusieurs langues, entre guillemets échappés. Par exemple,\"fr\", \"es\"pour appliquer la valeur de boost à l'espagnol et au français.BOOST_VALUE: nombre à virgule flottante compris entre -1 et 1. Lorsque la valeur est négative, les suggestions automatiques dans la langue sont rétrogradées (elles apparaissent plus bas dans la liste des suggestions). Lorsque la valeur est positive, les suggestions sont promues (elles apparaissent plus haut dans la liste).
Envoyer une requête de saisie semi-automatique et renvoyer des suggestions enrichies
La saisie semi-automatique enrichie renvoie du contenu (documents) dont les titres contiennent des mots commençant par la requête.
En plus du titre du document, la requête de saisie semi-automatique renvoie source_type et entity_type, ainsi que les propriétés clés, si elles sont disponibles : uri, create_time et update_time. Vous pouvez afficher et modifier les mappages de propriétés clés dans l'onglet Schéma de la page du data store.
Comme pour toutes les suggestions de saisie semi-automatique avancées, les LCA sont respectées pour tous les documents suggérés.
Exemple
Un employé interroge le site intranet de son entreprise pour trouver des informations techniques sur les autorisations d'accès.
L'employé commence à saisir tec, et les documents suivants peuvent être renvoyés : Data technicians handbook, Access technology guide et Techniques for troubleshooting access issues.
Avec les suggestions enrichies, vous pouvez afficher les informations suivantes pour chacun de ces documents suggérés :
le titre du document (
title), un lien vers le document (uri)la date de sa dernière mise à jour (
update_time) ;La source (
source_type), par exemple si le document a été trouvé dans Confluence Cloud ou Slack.
Savoir quand un document a été mis à jour pour la dernière fois et d'où il provient aide l'employé à choisir le document à consulter en premier.
Limites
La saisie semi-automatique enrichie ne s'applique qu'aux connecteurs tiers et qu'à certains datastores d'entités pour ces connecteurs tiers. Le tableau suivant indique les entités compatibles avec les différents connecteurs.
| Connecteur tiers | Entités acceptées | |||
|---|---|---|---|---|
| Box | Fichier | |||
| Confluence Cloud | Page | Espace | ||
| Dropbox | Fichier | |||
| Jira Cloud | Problème | Espace | ||
| OneDrive | Fichier | |||
| Salesforce | Compte | Leadership | Opportunité | |
| ServiceNow | Incident | Connaissances | ||
| SharePoint Online | Pièce jointe | Événement | Fichier | Page |
| Slack | Message | |||
Procédure
Pour envoyer une requête de saisie semi-automatique qui renvoie une suggestion enrichie, procédez comme suit :
REST
Trouvez l'ID de votre application. Si vous disposez déjà de l'ID de votre application, passez à l'étape suivante.
Dans la console Google Cloud , accédez à la page Gemini Enterprise.
Sur la page Applications, recherchez le nom de votre application et récupérez son ID dans la colonne ID.
Appelez la méthode
completionConfig.completeQuery.curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/completionConfig:completeQuery" \ -d '{ "query":"QUERY_STRING", "suggestionTypes": ["CONTENT"] }'Remplacez les éléments suivants :
PROJECT_ID: par l'ID du projet.APP_ID: ID de l'application.QUERY_STRING: saisie semi-automatique utilisée pour récupérer les suggestions.
Envoyer une requête de saisie semi-automatique et renvoyer les requêtes récentes
Renvoie, sous forme de suggestions, une liste des requêtes les plus récentes de l'utilisateur qui correspondent au préfixe de la requête dans la demande.
Les suggestions de requêtes correspondantes sont listées de la plus récente à la plus ancienne. Pour utiliser la recherche récente, vous devez fournir le pseudo-identifiant utilisateur.
Avant de commencer
Avant de pouvoir récupérer les requêtes récentes avec la saisie semi-automatique, vous devez enregistrer les recherches des utilisateurs en tant qu'événements utilisateur de recherche en appelant la méthode userEvents.write.
Si les événements utilisateur de recherche ne sont pas écrits, les requêtes envoyées à completionConfig.completeQuery avec suggestionTypes: ["RECENT_SEARCH"] renvoient une liste de suggestions vide ({}).
Pour enregistrer un événement utilisateur de recherche, envoyez une requête POST à la méthode userEvents.write avec les valeurs suivantes :
eventType: défini sur"search"userPseudoId: défini sur l'identifiant pseudonymisé unique de l'utilisateurengine: défini sur le nom de ressource de votre moteursearchInfo.searchQuery: défini sur la chaîne de requête de recherche saisie par l'utilisateur.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/userEvents:write" \
-d '{
"eventType": "search",
"userPseudoId": "USER_PSEUDO_ID",
"engine": "projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID",
"searchInfo": {
"searchQuery": "SEARCH_QUERY"
}
}'
Remplacez les éléments suivants :
PROJECT_ID: par l'ID du projet.LOCATION: emplacement de votre application ou de votre data store (par exemple,globalouus).APP_ID: ID de l'application.USER_PSEUDO_ID: identifiant pseudonymisé de l'utilisateur. Il doit correspondre auuserPseudoIdtransmis dans les requêtescompletionConfig.completeQueryultérieures.SEARCH_QUERY: chaîne de requête recherchée par l'utilisateur.
Pour en savoir plus, consultez Enregistrer des événements utilisateur en temps réel avec la méthode userEvents.write.
Exemple
Un employé interroge le site intranet de son entreprise pour obtenir des informations sur les congés. L'employé a effectué les requêtes suivantes, classées de la plus récente à la plus ancienne :
PTO, Vacation blackout periods, How much vacation time do I have?, Time
off, Vacation policy, covering a vacant position during absences et Can I
take unpaid time off?.
Désormais, lorsque l'employé saisit vac dans le champ de recherche, les suggestions de saisie semi-automatique sont les suivantes :
Vacation blackout periodsHow much vacation time do I have?Vacation policyCovering a vacant position during absences
Procédure
Pour envoyer une requête de saisie semi-automatique qui renvoie les requêtes les plus récentes de l'utilisateur, procédez comme suit :
REST
Trouvez l'ID de votre application. Si vous disposez déjà de l'ID de votre application, passez à l'étape suivante.
Dans la console Google Cloud , accédez à la page Gemini Enterprise.
Sur la page Applications, recherchez le nom de votre application et récupérez son ID dans la colonne ID.
Appelez la méthode
completionConfig.completeQuery.curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/completionConfig:completeQuery" \ -d '{ "query":"QUERY_STRING", "suggestionTypes": ["RECENT_SEARCH"], "userPseudoId": "USER_PSEUDO_ID" }'Remplacez les éléments suivants :
PROJECT_ID: par l'ID du projet.APP_ID: ID de l'application.QUERY_STRING: saisie semi-automatique utilisée pour récupérer les suggestions.USER_PSEUDO_ID: identifiant pseudonymisé de l'utilisateur. Vous pouvez utiliser un cookie HTTP pour ce champ, qui identifie de manière unique un visiteur sur un seul appareil. Ne définissez pas ce champ sur le même identifiant pour plusieurs utilisateurs. Cela combinerait l'historique de leurs requêtes. N'incluez pas d'informations permettant d'identifier personnellement l'utilisateur dans ce champ.
Utiliser la saisie semi-automatique pour les listes de blocage
Vous pouvez utiliser une liste de blocage pour empêcher des termes spécifiques d'apparaître sous forme de suggestions de saisie automatique.
Bien que la saisie semi-automatique avancée soit au niveau de l'application, les listes de blocage sont au niveau du datastore. Ceci est important si votre application est une application de recherche mixte. Créez une liste de blocage pour chaque data store connecté à l'application.
Pour en savoir plus sur la création et l'utilisation de listes de blocage, consultez Utiliser la saisie semi-automatique pour les listes de blocage.
Utiliser une liste importée de suggestions de saisie semi-automatique
Vous pouvez choisir de fournir votre propre liste de suggestions de saisie semi-automatique au lieu d'utiliser les suggestions générées à partir d'un modèle de données de saisie semi-automatique.
Pour savoir comment importer une liste, consultez Utiliser une liste importée de suggestions de saisie semi-automatique.