Intégration de documents contenant des données non structurées
Utilisez l'intégration des données non structurées pour ingérer, nettoyer, transformer et enrichir les données non structurées en vue du traitement RAG. Utilisez l'interface utilisateur intuitive, par glisser-déposer, avec des modules prédéfinis pour des tâches telles que l'extraction de données textuelles, le filtrage et l'expurgation des informations confidentielles pour traiter vos données. Vous pouvez créer des flux de données visuels reproductibles qui permettent de traiter en permanence les nouvelles modifications et mises à jour afin de garantir que l'application utilise toujours les dernières données disponibles.
Présentation
L'intégration des données non structurées permet aux équipes chargées des données, quel que soit leur niveau de compétence, de créer des pipelines de préparation des données reproductibles pour les applications RAG. Le service fournit des modules de traitement préconfigurés qui peuvent être combinés dans des flux afin d'ingérer des données non structurées provenant de diverses sources telles que des documents locaux, AWS S3, Box, SharePoint, ou FileNet,, et de stocker les résultats dans des bases de données vectorielles telles que Milvus.
Un flux est une série d'étapes permettant de traiter vos données. Les flux sont constitués de nœuds opérateurs qui s'exécutent en séquence, chaque opérateur effectuant une tâche spécifique telle que l'extraction de données, le filtrage ou la suppression des informations personnelles identifiables. Les opérateurs traitent les documents, en consommant la représentation d'un document et en produisant des données supplémentaires à son sujet. Vous pouvez configurer les opérateurs à utiliser et leur ordre d'exécution, et vous pouvez créer des branches dans les flux afin d'appliquer différents traitements en fonction de certaines conditions.
Le service prend en charge le traitement continu grâce à des tâches planifiées qui détectent et traitent automatiquement uniquement les documents modifiés, garantissant ainsi que votre application RAG utilise toujours les données les plus récentes sans intervention manuelle. Cela réduit la charge de travail manuelle liée à la préparation des données brutes non structurées pour l'IA d'entreprise en déterminant si les données sont pertinentes et exactes pour le cas d'utilisation concerné, ce qui permet une intégration non structurée à grande échelle.
Comment les flux traitent les données
Lorsque des documents contenant des données non structurées sont chargés dans un flux, une table en mémoire est créée avec une ligne par document, et les métadonnées du document sont collectées. Chaque opérateur de la séquence de flux modifie ce tableau en ajoutant une nouvelle fonctionnalité.
Les opérateurs peuvent effectuer les opérations suivantes sur le tableau de données :
- Filtrer les lignes : exclure les documents qui ne sont pas pertinents
- Modifier le contenu : transformer les données dans les colonnes, par exemple pour la suppression des informations personnelles identifiables
- Ajouter des colonnes : inclure de nouvelles informations, par exemple pour les annotations
Chaque opérateur reçoit les caractéristiques d'entrée de tous les opérateurs précédents et produit des caractéristiques de sortie qui sont transmises à l'opérateur suivant dans la séquence. À la suite du flux complet, les données prétraitées et vectorisées sont chargées dans une base de données vectorielle, et les entités extraites peuvent être conservées et stockées dans un magasin d'entités, afin que les données puissent être utilisées ultérieurement dans vos cas d'utilisation RAG.
Exécution et automatisation des flux
Pour exécuter un flux, vous configurez une tâche qui définit les paramètres d'exécution. Chaque exécution d'un flux est appelée « exécution de tâche ». Une durée d'exécution est utilisée pour exécuter un flux.
Après la création d'un flux, l'intégration de données non structurées maintient le flux en direct. Avec les tâches planifiées, lorsque les documents sources sont mis à jour, les enchâssements sont retraités uniquement pour les documents qui ont été modifiés. Cela résout les problèmes liés à la vectorisation des données, qui deviennent obsolètes après leur utilisation, et garantit la fraîcheur des données tout en réduisant les efforts manuels nécessaires à la préparation des données non structurées pour les applications d'IA d'entreprise.
Sources de données
La fonctionnalité d'intégration des données non structurées prend en charge plusieurs formats d'entrée, comme indiqué dans la section « Formats de données source pris en charge ».
Vous pouvez utiliser des ressources connectées, importer dans un projet n'importe quelle ressource de données prise en charge depuis votre ordinateur local, ou utiliser les ensembles de documents existants.
Prise en charge des langages
Vous pouvez traiter des documents contenant des données non structurées dans les langues suivantes :
- Anglais
- Japonais
- Coréen
- Français
- Italien
- Polonais
- Allemand
- Espagnol
Veuillez noter que les documents traités ensemble doivent être rédigés dans la même langue. Vous pouvez utiliser le nœud de branchement pour diriger le flux en fonction de la langue. De plus, les classes de documents doivent être traduites dans la langue correspondante.
bases de données cible
L'intégration des données non structurées prend en charge plusieurs bases de données cibles pour le stockage des résultats des flux, telles que les bases de données vectorielles ou les bases de données d'entités. Pour obtenir la liste des bases de données cibles, consultez la section « Destinations de sortie prises en charge ».
Environnements d'exécution
L'intégration de données non structurées fournit les moteurs d'exécution suivants, responsables de l'exécution des flux :
- Python (par défaut)
- Spark
Paramètres du projet
Vous pouvez prédéfinir un certain nombre de paramètres de configuration pour vos flux d'intégration de données non structurées au sein du projet, tels que les paramètres ACL, le stockage des ensembles de documents, les modèles d'intégration par défaut et l'environnement d'exécution. Pour plus d'informations, consultez les paramètres d'intégration des données non structurées.
Récupération de la liste de contrôle d'accès pour les documents ingérés
Grâce à la liste de contrôle d'accès (ACL), vous pouvez récupérer et conserver les détails des autorisations au niveau des fichiers lors de l'ingestion des données. Lorsque la récupération des ACL est activée dans les paramètres du projet, le système récupère les droits de propriété et d'accès à partir de la source et les stocke dans la passerelle de politiques communes (CPG) à l'aide d'une connexion Presto. Les paramètres du projet vous permettent de contrôler la manière de procéder si la connexion sélectionnée ne prend pas en charge la récupération ACL.
Exigences
Pour récupérer les ACL, vous devez remplir les conditions suivantes :
Connexions requises
Vous devez disposer d'une connexion Presto avec la fonctionnalité CPG activée pour enregistrer les informations ACL récupérées. Cette option peut être configurée dans les paramètres du projet pour tous les flux du projet, ou à l'aide du nœud « Contrôle d'accès » pour chaque flux individuellement.
Activation de l'ACL dans un projet
Procédez comme suit pour activer la récupération ACL :
- Accédez aux paramètres du projet et, sous Stratégie de liste de contrôle d'accès, sélectionnez Activer la récupération de la liste de contrôle d'accès.
- Activez les ACL sur watsonx.data comme décrit dans la section Gouvernance via les listes de contrôle d'accès.
Lorsque ces paramètres sont activés, le système récupère les listes ACL de tous les documents à partir de la source lors de l'ingestion. Par défaut, si la source ne prend pas en charge la récupération des ACL lors de l'importation, les documents correspondants ne sont pas importés. Cependant, vous pouvez choisir d'importer des documents indépendamment du statut de récupération ACL en sélectionnant Ingérer les documents même si la récupération de la liste de contrôle d'accès depuis la source n'est pas prise en charge par la connexion dans les paramètres du projet.
Activation de la liste de contrôle d'accès (ACL) pour des flux individuels
Quels que soient les paramètres du projet, vous pouvez ajouter le nœud « Contrôle d'accès » à votre flux, comme décrit dans la section « Contrôle d'accès ».