Utiliser un flux de travail Azure Logic Apps pour l’indexation automatisée dans Recherche IA Azure

Note

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.

Dans Recherche IA Azure, vous pouvez utiliser l’Assistant Importation de données dans le portail Azure pour créer un flux de travail d’application logique qui indexe et vectorise votre contenu. Cette fonctionnalité équivaut à un indexeur et à une source de données qui génère un pipeline d’indexation et crée du contenu pouvant faire l’objet d’une recherche.

Après avoir créé un flux de travail dans l’Assistant, vous pouvez gérer le flux de travail dans Azure Logic Apps en même temps que vos autres flux de travail. En coulisses, l’assistant suit un modèle de flux de travail qui récupère (ingère) du contenu depuis une source en vue de son indexation dans Recherche Azure AI. Les connecteurs utilisés dans ce scénario sont prédéfinis et existent déjà dans Azure Logic Apps. Par conséquent, le modèle de flux de travail fournit simplement des détails pour ces connecteurs afin de créer des connexions à la source de données, Recherche Azure AI et d’autres éléments requis pour terminer le flux de travail d’ingestion.

Fonctionnalités clés

L’intégration d'Azure Logic Apps dans Recherche Azure AI ajoute la prise en charge des éléments suivants :

  • Plus de sources de données de Microsoft et d’autres fournisseurs
  • Vectorisation intégrée
  • Indexation planifiée ou à la demande
  • Détection des modifications des documents nouveaux et existants

Les entrées de l'assistant Importation de données incluent :

  • Source de données prise en charge
  • Modèle d’incorporation de texte pris en charge

Une fois que l’Assistant a terminé, vous disposez des composants suivants :

Composant Emplacement Descriptif
Index de recherche Recherche d’IA Azure Contient du contenu indexé à partir d’un connecteur Logic Apps pris en charge. Le schéma d’index est un index par défaut créé par l’Assistant. Vous pouvez ajouter des éléments supplémentaires, tels que le profil de scoring ou la configuration sémantique, mais vous ne pouvez pas modifier les champs existants. Vous affichez, gérez et accédez à l'index de recherche sur Recherche Azure AI.
Ressource et flux de travail de l'application logique Azure Logic Apps Vous pouvez afficher le flux de travail en cours d’exécution ou ouvrir le concepteur dans Azure Logic Apps pour modifier le flux de travail, comme vous le feriez si vous avez démarré dans Azure Logic Apps. Vous pouvez modifier et étendre le flux de travail, mais faites preuve de prudence afin de ne pas perturber le pipeline d’indexation. Le workflow créé par l'assistant utilise l'option d'hébergement Consommation.
Modèles d’application logique Azure Logic Apps Jusqu’à deux modèles créés par workflow : un pour l’indexation à la demande et un deuxième modèle pour l’indexation planifiée. Vous pouvez modifier la planification d’indexation dans l’étape Indexer plusieurs documents du flux de travail.

Prerequisites

  • Vous devez être propriétaire ou contributeur dans votre abonnement Azure, avec les autorisations nécessaires pour créer des ressources.

  • Recherche Azure AI, niveau tarifaire de base ou supérieur si vous souhaitez utiliser une identité de service de recherche pour les connexions à une source de données Azure. Sinon, vous pouvez utiliser n’importe quel niveau, soumis aux limites de niveau.

  • Azure OpenAI avec un déploiement de modèle d’incorporation pris en charge. La vectorisation est intégrée au flux de travail. Si vous n’avez pas besoin de vecteurs, vous pouvez ignorer les champs ou essayer une autre stratégie d’indexation.

  • Azure Logic Apps dans une région prise en charge. Elle doit avoir une identité managée affectée par le système si vous souhaitez utiliser l’authentification Microsoft Entra ID sur les connexions plutôt que sur les clés API.

Note

Un flux de travail d’application logique est une ressource facturable. Pour plus d’informations, consultez la tarification d’Azure Logic Apps.

Régions prises en charge

Les fonctionnalités de bout en bout sont disponibles dans les régions suivantes, qui fournissent la connexion à la source de données, le craquage des documents, les blocs de documents, la prise en charge des modèles d’incorporation OpenAI et la prise en charge de l’indexeur Azure AI pour extraire les données. Les régions suivantes pour Azure Logic Apps fournissent l’action ParseDocument sur laquelle l’intégration d’indexation est basée.

  • East US
  • Est des États-Unis 2
  • États-Unis - partie centrale méridionale
  • Ouest des États-Unis 2
  • Ouest des États-Unis 3
  • Brazil South
  • Australia East
  • Asie de l’Est
  • Asie du Sud-Est
  • Europe Nord
  • Suède Centre
  • UK South

Modèles pris en charge

Le chemin de l’application logique via leImporter des donnéesL’assistant prend en charge une sélection de modèles d’intégration.

Déployez l’un des modèles d’incorporation suivants sur Azure OpenAI pour votre workflow de bout en bout.

  • text-embedding-3-small
  • text-embedding-3-large
  • text-embedding-ada-002

Connecteurs pris en charge

Les connecteurs suivants sont utiles pour l’indexation de données non structurées, en complément des indexeurs classiques qui ciblent principalement des données structurées.

Actions prises en charge

L’intégration d’applications logiques inclut les actions d’indexation suivantes. Pour plus d’informations, consultez Se connecter aux outils Foundry à partir de flux de travail dans Azure Logic Apps.

  • Recherchez de nouvelles données.

  • Obtenez les données. Action HTTP qui récupère le document chargé à l’aide de l’URL du fichier à partir de la sortie du déclencheur.

  • Composez les détails du document. Action Opérations de données qui concatène différents éléments.

  • Créer une chaîne de jeton. Action Opérations de données qui produit une chaîne de jetons à l’aide de la sortie de l’action Composer.

  • Créer des blocs de contenu. Action Opérations de données qui fractionne la chaîne de jeton en morceaux, en fonction du nombre de caractères ou de jetons par segment de contenu.

  • Convertissez des données tokenisées en JSON. Une action d'opérations de données qui convertit les segments de chaînes de jetons en un tableau JSON.

  • Sélectionnez des éléments de tableau JSON. Action Opérations de données qui sélectionne plusieurs éléments dans le tableau JSON.

  • Générez les incorporations. Action Azure OpenAI qui crée des incorporations pour chaque élément de tableau JSON.

  • Sélectionnez des incorporations et d’autres informations. Une action des opérations de données qui sélectionne les embeddings et d’autres informations de document.

  • Indexez les données. Action Recherche Azure AI qui indexe les données en fonction de chaque incorporation sélectionnée.

Il prend également en charge les actions de requête suivantes :

  • Attendez l’invite d’entrée. Un déclencheur qui interroge ou attend que de nouvelles données arrivent, soit en fonction d’une périodicité planifiée, soit en réponse à des événements spécifiques respectivement.

  • Message système d’entrée pour le modèle. Action Opérations de données qui fournit une entrée pour entraîner le modèle.

  • Exemples de questions et réponses d’entrée. Action Opérations de données qui fournit des exemples de questions client et des rôles associés pour entraîner le modèle.

  • Message système d’entrée pour la requête de recherche. Une action d'opérations de données qui fournit une requête de recherche pour entraîner le modèle.

  • Générez une requête de recherche. Action de code inline qui utilise JavaScript pour créer une requête de recherche pour le magasin de vecteurs, en fonction des sorties des actions Compose précédentes.

  • Convertissez la requête en incorporation. Action Azure OpenAI qui se connecte à l'API de finalisation de chat, garantissant des réponses fiables dans les discussions en ligne.

  • Obtenez une incorporation. Une action Azure OpenAI qui obtient un seul vecteur incorporé.

  • Recherchez la base de données vectorielle. Une action de recherche IA d’Azure qui exécute des recherches dans le magasin de vecteurs.

  • Créez une invite. Une action Code inclus qui utilise JavaScript pour générer des invites.

  • Effectuer la complétion de chat. Action Azure OpenAI qui se connecte à l'API de finalisation de chat, garantissant des réponses fiables dans les discussions en ligne.

  • Retournez une réponse. Une action de demande qui renvoie les résultats à l’appelant lorsque vous utilisez le déclencheur de demande.

Limites

  • L’index de recherche est généré à l’aide d’un schéma fixe (ID de document, contenu et contenu vectorisé), avec extraction de texte uniquement. Vous pouvez modifier l’index tant que la mise à jour n’affecte pas les champs existants.

  • La vectorisation prend uniquement en charge l’incorporation de texte.

  • La détection de la suppression n’est pas prise en charge. Vous devez supprimer manuellement les documents orphelins de l’index.

  • Les documents en double dans l’index de recherche sont un problème connu avec cette fonctionnalité. Si ce problème se produit, envisagez de supprimer des objets et de recommencer.

  • Aucune prise en charge des points de terminaison privés dans le flux de travail d’application logique créé par l’Assistant Portail. Le flux de travail est hébergé à l’aide de l’option d’hébergement Consommation et est soumis à ses contraintes. Pour utiliser l’option d’hébergement Standard , utilisez une approche programmatique pour créer le flux de travail.

Créer un workflow d’application logique

Suivez ces étapes pour créer un flux de travail d’application logique pour l’indexation du contenu dans Recherche Azure AI.

  1. Démarrez l’Assistant Importation de données dans le portail Azure.

  2. Choisissez un connecteur Azure Logic Apps pris en charge.

    Capture d’écran de la page de source de données choisie dans l’Assistant Importation de données.

  3. Dans Se connecter à vos données, fournissez un préfixe de nom utilisé pour l’index de recherche et le flux de travail. Avoir un nom commun vous aide à les gérer ensemble.

  4. Spécifiez la fréquence d’indexation. Si vous optez pour un calendrier, un modèle incluant une option de planification est utilisé pour créer le flux de travail. Vous pouvez modifier la planification d’indexation dans l’étape Indexer plusieurs documents du flux de travail après sa création.

  5. Sélectionnez un type d’authentification dans lequel le flux de travail de l’application logique se connecte au moteur de recherche et démarre le processus d’indexation. Le flux de travail peut se connecter à l’aide de clés API Recherche Azure AI ou l’Assistant peut créer une attribution de rôle qui accorde des autorisations à l’identité managée affectée par le système Logic Apps, en supposant qu’il en existe une.

  6. Sélectionnez Suivant pour passer à la page suivante.

  7. Dans Vectoriser votre texte, fournissez les informations de déploiement de modèle et de connexion à Azure OpenAI. Choisissez l’abonnement et le service, un modèle d’incorporation de texte pris en charge et le type d’authentification utilisé par le flux de travail pour se connecter à Azure OpenAI.

  8. Sélectionnez Suivant pour passer à la page suivante. Passez en revue la configuration.

  9. Sélectionnez Créer pour commencer le traitement.

    Le flux de travail s’exécute en tant que flux de travail sans serveur dans Logic Apps (Consommation), distinct du service de Recherche IA.

  10. Confirmez la création de l'index dans le portail Azure, dans la page Indexes dans Azure AI recherche. L’Explorateur de recherche est le premier onglet. Sélectionnez Rechercher pour renvoyer du contenu.

Modifier des objets existants

Vous pouvez apporter les modifications suivantes à un index de recherche sans interrompre l’indexation :

Vous pouvez effectuer les mises à jour suivantes d’un flux de travail sans interrompre l’indexation :

  • Modifiez les fichiers de liste dans le dossier pour modifier le nombre de documents envoyés à l’indexation.
  • Modifiez le bloc de texte pour varier les entrées de jeton. La taille de jeton recommandée est de 512 jetons pour la plupart des scénarios.
  • Modifiez le bloc de texte pour ajouter une longueur de chevauchement de page.
  • Modifiez l’étape Indexer plusieurs documents pour contrôler la fréquence d’indexation si vous avez choisi l’indexation planifiée dans l’Assistant.

Dans le concepteur d’applications logiques, passez en revue le flux de travail et chaque étape du pipeline d’indexation. Le flux de travail spécifie l’extraction de documents, la segmentation de documents par défaut (compétence fractionnement de texte), l’incorporation (compétence d’incorporation Azure OpenAI), les mappages de champs de sortie et enfin l’indexation.

Capture d’écran du flux de travail dans le concepteur d’applications logiques.

Gestion des modèles et des flux de travail

L’Assistant crée des modèles et des flux de travail lorsque vous spécifiez un indexeur Logic Apps. Pour les créer et les gérer, notamment la suppression de modèle, utilisez le concepteur d’applications logiques. Le tableau de bord du service de recherche du portail Azure ne fournit pas de gestion de modèle ou de flux de travail, et il n’existe actuellement aucune prise en charge programmatique dans les API Recherche IA Azure.