Améliorer l’index
Avec un index de base et un client capable de soumettre des requêtes et d’afficher des résultats, vous pouvez obtenir une solution de recherche efficace. Toutefois, Recherche Azure AI prend en charge plusieurs façons d’améliorer un index pour offrir une meilleure expérience utilisateur. Cette rubrique décrit quelques-unes des façons dont vous pouvez étendre votre solution de recherche.
Rechercher le texte en cours de frappe
En ajoutant un suggesteur à un index, vous pouvez activer deux formes d’expérience de type recherche en cours de frappe pour aider les utilisateurs à trouver plus facilement les résultats pertinents :
- Suggestions : récupérez et affichez une liste de résultats suggérés lorsque l’utilisateur tape dans la zone de recherche, sans avoir à soumettre la requête de recherche.
- Autocomplete : compléter des termes de recherche partiellement saisis en fonction de valeurs dans les champs d’index.
Pour implémenter une de ces fonctionnalités ou les deux, créez ou mettez à jour un index, en définissant un générateur de suggestions pour un ou plusieurs champs.
Une fois que vous avez ajouté un suggesteur, vous pouvez utiliser les points de terminaison des API REST suggestion et autocomlete ou les méthodes .NET DocumentsOperationsExtensions.Suggest et DocumentsOperationsExtensions.AutoComplete pour envoyer un terme de recherche partiel et récupérer une liste de résultats suggérés ou des termes de saisie semi-automatique à afficher dans l’interface utilisateur.
Remarque
Pour plus d’informations sur les suggesteurs, consultez Ajouter la saisie semi-automatique et les suggestions aux applications clientes dans la documentation Recherche Azure AI.
Évaluation personnalisée et amélioration des résultats
Par défaut, les résultats de la recherche sont triés selon un score de pertinence calculé sur la base d’un algorithme de fréquence des termes / fréquence inverse de documents (TF/IDF). Vous pouvez personnaliser la façon dont ce score est calculé en définissant un profil de score qui applique une valeur de pondération à des champs spécifiques, ce qui a pour effet d’améliorer le score de recherche des documents lorsque le terme de recherche est trouvé dans ces champs. En outre, vous pouvez augmenter les résultats en fonction des valeurs de champ, par exemple, en augmentant le score de pertinence pour les documents en fonction de la date de leur dernière modification ou de leur taille de fichier.
Une fois que vous avez défini un profil de score, vous pouvez spécifier son utilisation dans une recherche individuelle, ou vous pouvez modifier une définition d’index pour qu’elle utilise votre profil de score personnalisé par défaut.
Remarque
Pour plus d’informations sur les profils de scoring, consultez profils de score dans la documentation Recherche Azure AI.
Synonymes
Souvent, la même chose peut être référencée de plusieurs façons. Par exemple, une personne recherchant des informations sur le Royaume-Uni peut utiliser l’une des conditions suivantes :
- Royaume-Uni
- Royaume-Uni
- Royaume-Uni*
- GB*
*Pour être précis, le Royaume-Uni et la Grande-Bretagne sont des entités différentes, mais elles sont souvent confondues. Il est donc raisonnable de supposer qu’une personne recherchant « Royaume-Uni » est peut-être intéressée par les résultats qui référencent les termes « Grande-Bretagne ».
Pour aider les utilisateurs à trouver les informations dont ils ont besoin, vous pouvez définir des mappages de synonymes qui lient les termes liés. Vous pouvez ensuite appliquer ces mappages de synonymes à des champs individuels dans un index, de sorte que lorsqu’un utilisateur recherche un terme particulier, les documents contenant les champs qui contiennent le terme ou l’un de ses synonymes sont inclus dans les résultats.
Remarque
Pour plus d’informations sur les mappages de synonymes, consultez Synonymes dans Recherche Azure AI dans la documentation Recherche Azure AI.