Créer une requête de recherche

Créer une requête de recherche est un outil de niveau rubrique que votre agent peut utiliser pour capturer une version réécrite de l’entrée d’un utilisateur, enrichie avec l’historique des conversations. Vous pouvez utiliser la requête réécrite dans les tâches en aval, telles que la recherche ou la synthèse. Cette chaîne réécrite donne aux créateurs une version structurée et clarifiée de la requête d’origine, que vous pouvez réutiliser pour répondre aux besoins de votre agent.

Cette fonctionnalité est particulièrement puissante pour les scénarios de recherche personnalisés . Votre agent peut prendre un contrôle total sur la façon dont les requêtes sont mises en correspondance avec du contenu indexé, transmises à des systèmes externes ou journalisées pour l’analytique.

À mesure que les agents évoluent de simples bots de questions et de réponses aux agents métier personnalisés, la modification des requêtes utilisateur devient essentielle. La réécriture des requêtes permet de combler l’écart entre l’intention de l’utilisateur et le langage spécifique au domaine pour générer des résultats plus pertinents et précis.

Quand utiliser Créer une requête de recherche

Utilisez l’action Créer une requête de recherche lorsque vous souhaitez effectuer les actions suivantes :

Générer des expériences de recherche personnalisées

Utilisez la chaîne de requête réécrite comme entrée pour votre propre logique de recherche. Il peut s’agir, par exemple, d’interroger une API non-Microsoft, de filtrer les bases de connaissances internes ou de créer des invites dynamiques.

Exemple : insérez la requête réécrite dans un système de recherche basé sur SharePoint ou SQL personnalisé.

Améliorer la pertinence avec le contexte

Utilisez l’historique des conversations pour réécrire des requêtes vagues dans quelque chose de plus ciblé.

Exemple : convertissez « montrez-moi le formulaire » en « formulaire de demande d’intégration des employés » en fonction des questions précédentes des utilisateurs.

Optimiser la récupération spécifique au domaine

Adaptez la requête réécrite pour qu’elle corresponde à la façon dont votre organisation catégorise ou indexe les informations.

Exemple : ajoutez des balises telles que le service, l’intervalle de temps ou le rôle d’utilisateur pour rendre les requêtes de recherche plus précises.

Fonctionnement de l’action Créer une requête de recherche

  1. Sélectionnez l’icône Ajouter un nœud sous le nœud après lequel vous souhaitez que votre agent effectue une recherche personnalisée.

  2. Sélectionnez Ajouter un outil, puis Créer une requête de recherche.

    Capture d’écran après l’ajout d’un nœud, mettant en surbrillance la sélection d’un outil et axée sur Créer une requête de recherche.

    Un nœud Créer une requête de recherche s’affiche sur le canevas.

    L’outil Créer une requête de recherche réécrit l’entrée de l’utilisateur en fonction des éléments suivants :

    • Entrée d’origine
    • Toute variable de contexte ou d’historique de conversation pertinente

    L’outil génère une chaîne de recherche nettoyée et enrichie en tant que variable à utiliser dans la logique en aval.

    Capture d’écran de la boîte de dialogue Créer une requête de recherche.

Exemple de cas d’utilisation : copilote du manuel de l’employé

Un utilisateur pourrait dire : « Parlez-moi de la politique en matière de congés. »

L’assistant enrichit cette demande avec :

  1. Type de congé

  2. S’il s’agit d’un congé pour eux-mêmes ou pour quelqu’un d’autre

  3. S’il souhaite la politique actuelle ou une politique antérieure

Flux de dialogue (représentation YAML simplifiée)

# Compose the custom search input

- kind: SetVariable 

  variable: Topic.SearchQueryInput 

  value: = "Leave policy: " & PlainText(Topic.LeaveType) &  

           If(Topic.ForSelf, "; for self", "; for someone else") &  

           "; version: " & PlainText(Topic.IsCurrentPolicy) &  

           "; original query: " & PlainText(Topic.UserOriginalInput)

# Generate a rewritten query using CreateSearchQuery 

- kind: CreateSearchQuery 

  userInput: =Topic.SearchQueryInput 

  result: Topic.SearchQuery 

# Use it in any way you want 

- kind: CustomSearchOrAPI 

  input: =Topic.SearchQuery 

Exemple de requête finale réécrite

Politique en matière de congés : maladie ; pour soi-même ; version : actuelle ; requête d’origine : je souhaite en savoir plus sur le congé maladie

Cette chaîne réécrite peut maintenant être :

  • Transmise à un moteur de recherche personnalisé.

  • Utilisée dans un appel d’API externe.

  • Journalisée à des fins d’analyse ou de réglage.

  • Renvoyée à l’utilisateur pour confirmation.