Conseils sur l’enrichissement par IA dans Recherche Azure AI

Remarque

Recherche Azure AI est disponible via le portail Azure, les API REST et les SDK Azure. Il sous-tend également Foundry IQ, la couche de connaissances managée qui transforme le contenu d’entreprise en bases de connaissances réutilisables et prenant en charge les autorisations pour les agents dans le portail Microsoft Foundry.

Cet article fournit des conseils pour vous aider à bien démarrer avec l’enrichissement de l’IA et les ensembles de compétences utilisés lors de l’indexation.

Conseil 1 : Commencer simplement et à petite échelle

L’Assistant Importation de données dans le portail Azure prend en charge l’enrichissement par IA. Sans écrire de code, vous pouvez créer et examiner tous les objets utilisés dans un pipeline d’enrichissement : un index, un indexeur, une source de données et un ensemble de compétences.

Une autre façon de commencer consiste simplement à créer une source de données avec seulement quelques documents ou lignes d’une table représentant les documents que vous souhaitez indexer. Un petit jeu de données est le meilleur moyen d’augmenter la vitesse de recherche et de résolution des problèmes. Faites passer votre exemple via le pipeline de bout en bout et vérifiez que les résultats répondent à vos besoins. Lorsque vous êtes satisfait des résultats, vous êtes prêt à ajouter d’autres fichiers à votre source de données.

Conseil 2 : Regardez ce qui fonctionne même en présence de défaillances

Parfois, une petite défaillance arrête un indexeur. Cette condition est correcte si vous envisagez de résoudre les problèmes un par un. Toutefois, il se peut que vous souhaitiez ignorer un type d’erreur spécifique, afin que l’indexeur puisse continuer et que vous puissiez voir quels flux fonctionnent réellement.

Pour ignorer les erreurs lors du développement, définissez maxFailedItems et maxFailedItemsPerBatch -1 dans le cadre de la définition de l’indexeur.

{
  "parameters": {
    "maxFailedItems": -1,
    "maxFailedItemsPerBatch": -1
  }
}

Remarque

Par bonne pratique, définissez maxFailedItems et maxFailedItemsPerBatch sur 0 pour les charges de travail de production.

Conseil 3 : Utiliser la session de débogage pour résoudre les problèmes

Session de débogage est un éditeur visuel qui montre le graphique de dépendances, les entrées et sorties, et les définitions d’un ensemble de compétences. Il charge un seul document source à partir de la source de données de l’indexeur, en utilisant la configuration actuelle de l’indexeur et de l’ensemble de compétences. Vous pouvez ensuite exécuter l’ensemble de compétences entier, limité à ce document. Au sein d’une session de débogage, vous pouvez identifier et résoudre les erreurs, valider les modifications et les transférer vers un ensemble de compétences parent. Pour un guide étape par étape, consultez Tutoriel : Sessions de débogage.

Conseil 4 : Le contenu attendu n’apparaît pas

Si le contenu est manquant, recherchez les documents supprimés dans le portail Azure. Dans la page du service de recherche, ouvrez indexeurs, sélectionnez l’indexeur, puis sélectionnez la valeur d’état d’une exécution pour afficher les détails et les erreurs d’exécution.

Si le problème est lié à la taille de fichier, une erreur semblable à celle-ci peut s’afficher : « Le nom< du fichier blob >» a la taille des octets de taille< de fichier, qui dépasse la taille maximale pour l’extraction de documents pour votre niveau de >service actuel. » Pour plus d’informations sur les limites de l’indexeur, consultez Limites du service.

Une deuxième raison de l’échec de l’affichage du contenu peut être liée aux erreurs de mappage d’entrée/sortie. Par exemple, un nom de cible de sortie est « Personnes », mais le nom du champ d’index est « personnes » en minuscules. Le système renvoie des messages de succès 201 pour l’ensemble du pipeline, ce qui vous fait penser que l’indexation a réussi, alors qu’en réalité un champ est vide.

Conseil 5 : Étendez le traitement au-delà du temps d’exécution maximal

L’analyse d’image nécessite une grande capacité de calcul, même pour des cas simples. Ainsi, quand des images sont particulièrement volumineuses ou complexes, les temps de traitement peuvent dépasser le temps maximal imparti.

Pour les indexeurs qui ont des ensembles de compétences, l’exécution de l’ensemble de compétences est limitée à deux heures pour la plupart des niveaux. Si le traitement de l’ensemble de compétences ne se termine pas dans ce délai, configurez l’indexeur pour qu’il s’exécute toutes les cinq minutes afin qu’il puisse reprendre le traitement à partir du dernier document valide connu.

L’indexation planifiée reprend au dernier document valide connu. Avec un calendrier récurrent, l’indexeur peut parcourir l'accumulation d’images pendant plusieurs heures ou jours, jusqu'à ce que toutes les images non traitées soient traitées. Pour plus d’informations sur la syntaxe de planification, consultez Planifier un indexeur.

Remarque

Si un indexeur planifié échoue à plusieurs reprises sur le même document, le service réduit sa fréquence d’exécution (jusqu’à une fois toutes les 24 heures) jusqu’à ce qu’il progresse. Après avoir résolu le problème sous-jacent, exécutez l’indexeur à la demande. S’il progresse, l’indexeur retourne à son intervalle configuré. Si l’indexeur ne revient pas à sa planification configurée après une exécution réussie, consultez la FAQ sur le comportement de planification.

Conseil 6 : Augmentez le débit d’indexation

Pour une indexation parallèle, distribuez vos données dans plusieurs conteneurs ou plusieurs dossiers virtuels au sein du même conteneur. Créez ensuite plusieurs paires d’indexeurs et de sources de données. Tous les indexeurs pouvant utiliser le même jeu de compétences et écrire dans le même index de recherche cible, votre application de recherche n’a pas besoin d’être informée de ce partitionnement.

Voir aussi