Partager via


Plateforme de données pour les charges de travail IA sur Azure

Le choix d’une plateforme de données implique de comprendre les défis uniques liés aux données que ces solutions apportent. Les solutions GenAI, en particulier celles créées avec des modèles de base, dépendent de données variées et de haute qualité, d’un accès rapide aux magasins de données évolutifs qui prennent en charge la recherche vectorielle. L’objectif est de répondre à ces besoins sans ajouter de complexité inutile à votre architecture. Comprendre les principes de conception efficace du pipeline de données est essentiel avant d’évaluer les options de plateforme.

Lors de l’évaluation des choix de plateforme, commencez par vous demander si vous avez vraiment besoin de composants supplémentaires. Les architectures plus simples sont souvent plus rapides à déployer, plus faciles à gérer et plus rentables. Posez-vous les questions suivantes :

  • Le modèle peut-il atteindre ses performances attendues à l’aide de données provenant d’une seule source ?
  • Le magasin de données source fournit-il déjà les fonctionnalités d’analyse ou de recherche dont vous avez besoin ?
  • Les données sources sont-elles déjà structurées et indexées pour la recherche ia ou vectorielle ?

Si la réponse est oui à la plupart de ces questions, une architecture complexe peut ne pas être nécessaire. Par exemple, les bases de données telles qu’Azure Cosmos DB et Azure SQL Database prennent déjà en charge les types de données vectorielles et la recherche vectorielle en mode natif, mais elles doivent être activées et configurées. Ces fonctionnalités peuvent réduire le besoin d’indexation distinctes ou de bases de données vectorielles spécialisées, ce qui réduit le déplacement des données tout en améliorant les performances.

À mesure que votre charge de travail augmente et que les données proviennent de plusieurs sources, la décision de la plateforme devient plus complexe. Vous devrez peut-être prendre en compte les solutions qui prennent en charge les pipelines ETL ou ELT, les index de recherche spécialisés et le stockage évolutif pour les jeux de données volumineux. Chaque fonctionnalité ajoutée doit servir d’objectif clair au lieu de simplement développer la pile technologique.

Cet article fournit des conseils sur le choix d’une plateforme de données pour les charges de travail où les données doivent être stockées, traitées ou analysées. L’accent est mis sur les solutions qui prennent en charge l’IA générative (GenAI). Nous vous recommandons vivement de comprendre les principes de conception de pipeline de données appropriés avant d’explorer les fonctionnalités technologiques décrites par cet article. Pour plus d'informations, voir Grounding Data Design.

Pour obtenir des recommandations spécifiques à l’entraînement et au réglage précis du modèle discriminant, consultez considérations relatives à la plateforme de données d’entraînement.

Considérations relatives à la plateforme de stockage de données

Dans les charges de travail IA, les données passent généralement par plusieurs phases de stockage et de traitement, guidées par les pipelines qui connectent chaque étape. Une étape importante est le magasin de données qui contient les informations collectées et combinées à partir de plusieurs sources. Ce magasin vous permet de traiter et d’affiner les données jusqu’à ce qu’elles sont prêtes pour la phase suivante.

Remarque

Vous n’avez peut-être pas besoin de ce composant dans votre architecture. Dans certains cas, vous pouvez accéder aux données directement à partir des systèmes sources. Toutefois, cela peut entraîner des problèmes de performances et peut surcharger ces systèmes avec des requêtes IA. Cela peut également entraîner des problèmes d’accès ou de fiabilité. Pour éviter ces problèmes, il est généralement préférable de copier les données dans un magasin dédié pour l’agrégation et le traitement.

Lorsque vous choisissez une plateforme pour ce magasin, assurez-vous qu’elle respecte les mêmes normes de sécurité que vos systèmes sources, est rentable et fonctionne correctement avec les tâches de traitement ETL, ELT ou EL. Vos options peuvent aller de solutions de stockage simples à des plateformes de données à grande échelle, en fonction de vos besoins en matière de volume de données et de performances. Recherchez une option de stockage fiable, évolutive et offre une bonne valeur pour votre charge de travail.

Voici quelques questions pour vous aider à guider votre choix de technologie de magasin de données.

La plateforme peut-elle gérer différents formats de données ?

Votre magasin de données doit être en mesure de stocker un large éventail de formats de données et, si nécessaire, de convertir des données entre eux.

Par exemple, si votre pipeline d’ingestion apporte des données à partir d’une base de données relationnelle et d’un fichier JSON, elle doit prendre en charge les données structurées et semi-structurées. Vous souhaiterez peut-être convertir vos données au format Delta pour activer les fonctionnalités plus riches de la technologie Delta Lake. La plateforme doit fournir des outils intégrés pour ce type de transformation afin que vous n’ayez pas besoin d’écrire du code personnalisé.

Pensez-vous stocker plusieurs versions des données ?

Les données changent au fil du temps dans les valeurs et la structure, et les systèmes sources stockent généralement uniquement l’état actuel. Si vous avez besoin d’un contexte historique, choisissez une plateforme de données qui prend en charge le contrôle de version. Sans cela, vous devrez peut-être dupliquer des jeux de données, ce qui ajoute de la complexité.

Le contrôle de version présente d’autres avantages. Dans certains cas, vous pouvez avoir besoin de copies distinctes de données pour différents cas d’usage. Chaque copie peut évoluer indépendamment, et la plateforme doit gérer le contrôle de version sur toutes les copies afin de préserver le contexte de vos modèles IA.

La plateforme dispose-t-elle de fonctionnalités intégrées de gestion du cycle de vie des données ?

La gestion du cycle de vie des données (DLM) permet de contrôler la croissance de la création à la suppression. Votre plateforme doit supprimer automatiquement des copies intermédiaires, gérer les données archivées et prendre en charge la rétention réglementaire si nécessaire. Sans cela, les données peuvent croître incontrôlablement et ce volume inutile peut rendre le traitement difficile. Par exemple, vous devrez peut-être réexécuter plusieurs fois les étapes de prétraitement pour améliorer la qualité des données. La plateforme doit supprimer automatiquement les copies intermédiaires lorsqu’elles ne sont plus nécessaires.

Dans d’autres cas, vous devrez peut-être conserver les données pour la conformité ou les audits. Recherchez les options de stockage qui prennent en charge les niveaux froids ou archivés pour les données rarement sollicitées à moindre coût.

La plateforme prend-elle en charge les fonctionnalités de gouvernance des données ?

L’auditabilité est un aspect important pour les charges de travail IA. Votre plateforme doit maintenir les pistes d’audit pour suivre l’accès aux données, garantir la confidentialité et documenter les origines des données. Il doit également prendre en charge un dictionnaire de données ou un catalogue qui gère les métadonnées, les types de données, l’objectif et la traçabilité, en particulier lorsque les données proviennent de plusieurs sources.

Quelle quantité de données prévoyez-vous de stocker ?

Les charges de travail IA génèrent de grands volumes de données, ce qui peut augmenter davantage avec plusieurs versions et métadonnées supplémentaires. Votre plateforme de données doit être mise à l’échelle efficacement pour le stockage et le débit, gérer des taux d’ingestion élevés, des écritures simultanées et un traitement intensif sans dégradation des performances.

Lorsque vous choisissez une plateforme, considérez l’ensemble du flux de travail, car l’ingestion et le traitement se produisent souvent en même temps. Le système doit prendre en charge le traitement parallèle et le déplacement fréquent des données et fournir des données de télémétrie pour fournir un aperçu clair des performances de lecture et d’écriture.

Ce magasin de données est-il essentiel à la fiabilité de votre charge de travail ?

Choisissez une plateforme qui prend en charge la fiabilité et l’extensibilité via la réplication ou plusieurs instances. De nombreux entrepôts de big data utilisent des contrôleurs qui distribuent automatiquement les traitements et assurent un basculement lorsqu'une instance devient indisponible.

Les données doivent également être durables et accessibles. Assurez-vous que la plateforme garantit l’intégrité des données, fournit des API accessibles et prend en charge les fonctionnalités de sauvegarde ou de restauration si la reconstruction des données à partir de zéro serait coûteuse.

Avez-vous des contraintes de coût ?

Une fois les exigences de fiabilité et de performances remplies, envisagez d’optimiser les coûts. Pour de nombreuses charges de travail d’IA, un modèle en écriture seule et en lecture multiple est suffisant et permet de contrôler les dépenses. Les données de référence devraient être rentables pour le stockage et la récupération, même si cela ne nécessite pas le même niveau de réactivité des opérations qu'une base de données de production. L’objectif est d’équilibrer les coûts, l’efficacité et les performances.

Avez-vous besoin de prendre en charge la souveraineté des données ou les exigences de conformité régionale ?

Pour les charges de travail qui gèrent des données réglementées ou sensibles, envisagez de déployer dans un cloud souverain, tel qu’Azure Government, Microsoft Azure géré par 21Vianet ou d’autres clouds partenaires nationaux. Ces environnements sont conçus pour répondre à des exigences strictes en matière de résidence des données, de confidentialité et de conformité en garantissant que le stockage, le traitement et l’accès des données restent dans des juridictions spécifiques.

Les clouds souverains offrent un meilleur contrôle et une indépendance sur vos données, ce qui est souvent une exigence pour les secteurs tels que le gouvernement, la défense ou les banques. Toutefois, gardez à l’esprit que certaines fonctionnalités avancées de l’IA et de la plateforme de données peuvent ne pas encore être disponibles dans ces régions. Passez en revue la disponibilité du service avant de concevoir votre architecture.

Utilisez Microsoft Purview pour gérer le suivi du catalogue, de la classification et de la traçabilité des données dans ces environnements. Pour les charges de travail hautement confidentielles, envisagez d’utiliser l’informatique confidentielle et les clés gérées par le client pour renforcer la protection des données. Vous devez vérifier que votre déploiement s’aligne sur les réglementations régionales.

Options technologiques

Fonction Technologies recommandées Alternatives / Outils complémentaires
Stockage de données multi-format Azure Data Lake Storage Gen2, Microsoft Fabric Lakehouse, Azure Databricks Lakehouse Stockage Blob Azure, Azure Synapse Analytics, entrepôt de données sur site
Contrôle de version et traçabilité des données Microsoft Fabric Lakehouse, Azure Data Lake Storage Gen2 (avec Delta Lake), Azure Databricks (Delta Lake) Git LFS, DVC (Contrôle de version de données), Apache Iceberg
Gestion du cycle de vie des données (DLM) Azure Data Lake Storage Gen2 (stratégies de cycle de vie), Stockage Blob Azure (hiérarchisation), Azure Databricks (optimisation de table) Amazon S3 (stratégies de cycle de vie), Google Cloud Storage
Gouvernance et catalogage des données Catalogue Microsoft Purview, Azure Databricks Unity Apache Atlas, DataHub, Collibra
Stockage de données à volume élevé Azure Data Lake Storage Gen2, Azure Synapse Analytics, Azure Databricks Lakehouse Stockage Blob Azure, Hadoop HDFS, Amazon S3

Considérations relatives à la plateforme de traitement des données

La plateforme de traitement des données joue un rôle clé dans la préparation et la transformation des données afin qu’elles soient prêtes à être utilisées en aval, qu’il s’agisse de l’indexation, de l’analytique ou d’autres cas d’usage.

Remarque

Pour GenAI et la génération augmentée par récupération (RAG), il est utile de comprendre la différence entre les processus ETL, ELT et EL.

  • ETL : Extrayez, transformez, puis chargez-les, généralement pour l’entreposage de données traditionnel.
  • ELT : Extrayez, chargez, puis transformez, courants pour les lacs de données et les outils Big Data comme PySpark.
  • EL : Extraire et charger, utilisé dans les scénarios RAG où vous stockez d’abord des documents, puis effectuer des transformations telles que la segmentation de texte ou l’extraction d’images ultérieurement.

Il existe deux endroits où le traitement peut se produire :

  • Couche d’ingestion. Le pipeline d’ingestion collecte des données à partir de différentes sources et les déplace dans votre magasin de données agrégé. En cours de route, il effectue souvent le prétraitement ou la mise en forme de base afin que les données soient interrogeables. Pour réduire le besoin de code personnalisé, il est préférable d’utiliser une plateforme de données qui gère cela dans la mesure du possible. Lors de l’évaluation des outils, tenez compte des fonctionnalités ETL ou ELT requises pour prendre en charge vos charges de travail IA, telles que l’augmentation des données.

  • Couche de traitement. Une fois que les données atterrissent dans le magasin d’agrégation, elles ont généralement besoin d’un traitement plus approfondi avant d’être prêtes à être indexées ou utilisées dans des modèles IA. Ces pipelines doivent offrir des niveaux similaires de fiabilité et d’extensibilité que votre couche d’ingestion, mais le focus passe à la transformation et à la réorganisation des données.

Les tâches classiques sont les suivantes :

  • Reconnaissance et enrichissement d’entités
  • Intégration de sources de données supplémentaires
  • Exécution de recherches et de transformations
  • Nettoyage ou suppression de données non pertinentes

Une plateforme de données forte permet d’automatiser et d’orchestrer ces opérations efficacement.

Quelle est la prise en charge de la connexion aux sources de données ?

La plateforme doit facilement se connecter aux sources de données que vous prévoyez d'ingérer, qu'il s'agisse de bases de données relationnelles, de sources de big data ou de stockage de blobs.

Recherchez des connecteurs prédéfinis et des intégrations à faible code. Dans l'idéal, vous souhaitez des connecteurs glisser-déposer ou configurables qui prennent en charge les recherches, la copie de données et la gouvernance.

La plateforme peut-elle traiter différents formats de données ?

Les données sont de nombreuses formes : structurées (SQL, tables relationnelles), semi-structurées (JSON, XML, Parquet) et non structurées (documents, images) et streaming (données IoT). Choisissez une plateforme qui peut gérer les formats dont vous avez besoin pour prendre en compte les exigences immédiates et à long terme.

La plateforme offre-t-elle des fonctionnalités pour la préparation et la rescoping des données ?

Avant que vos données soient prêtes pour l’indexation ou la consommation de modèles, elles doivent être nettoyées, enrichies et remodelées. Vos stratégies de conception de données doivent décrire explicitement les exigences. Une bonne plateforme doit :

  • Supprimer les doublons et remplir les valeurs manquantes
  • Gérer le stemming, la normalisation et d'autres tâches de nettoyage de base lors de la planification de la prise en charge de la recherche par mot clé ou hybride (mot clé + vecteur)
  • Prise en charge des transformations avancées telles que la segmentation, l’enrichissement et l’analyse des documents

Si votre magasin de données prend en charge ces opérations en mode natif, vous pouvez traiter les données en place sans les déplacer. Sinon, utilisez des outils externes comme Azure Databricks ou Azure Data Factory pour des transformations lourdes.

Dans certains cas, vous pouvez choisir de externaliser une partie de cette responsabilité à la plateforme qui prend en charge la phase suivante. Un exemple courant de cette approche est l’implémentation de RAG. Pendant le traitement, les documents sont divisés en blocs plus petits, chaque bloc étant stocké sous la forme d’une ligne distincte dans l’index. Ces blocs sont ensuite associés à des incorporations, souvent générés par le biais d’un service OpenAI. Dans Recherche IA Azure, ce processus est orchestré dans le cadre du pipeline d’enrichissement pendant l’indexation, où les documents sont traités par un modèle d’incorporation (tel qu’un modèle d’incorporation OpenAI) pour générer des représentations vectorielles qui sont ensuite stockées dans l’index.

Existe-t-il un orchestrateur intégré pour la gestion des flux de travail ?

Le traitement des données se produit généralement en tant que travaux modulaires nécessitant une coordination complexe. Votre plateforme doit inclure un orchestrateur pour définir, planifier et surveiller ces flux de travail. Rechercher :

  • Prise en charge des dépendances de tâches et des vérifications qui valident la séquence d'exécution.
  • Modification flexible des flux de travail qui permet des ajustements faciles sans réécrire de grandes parties du code.
  • Fonctionnalités de supervision et de journalisation

Les outils populaires incluent Azure Data Factory pour son ensemble de fonctionnalités enrichi pour la gestion des flux de travail ou Azure Databricks pour une orchestration plus complexe. Si le coût est un problème, Apache NiFi ou Airflow peut être plus économique.

Quelle quantité de données prévoyez-vous d’ingérer ?

Estimer la quantité de données que vous allez ingérer et la fréquence de l’ingestion. Par exemple, si vous prévoyez de charger 10 téraoctets de données quotidiennement dans un index, la plateforme doit prendre en charge une parallélisation forte et une exécution distribuée. Pour les charges de travail plus petites, des outils plus simples comme Logic Apps peuvent fonctionner, mais pour des volumes plus élevés, Data Factory ou Databricks sont plus adaptés. Pour la scalabilité et le débit, envisagez les éléments suivants :

  • Volume et fréquence de données
  • Exigences de latence tolérables
  • Complexité du travail

Par exemple, le nettoyage des données implique la validation et le remplacement potentiellement des champs non valides ou le masquage des informations sensibles. Ces tâches, bien que de base, nécessitent des ressources importantes, car chaque ligne est traitée individuellement, ce qui ajoute au temps global.

Quelles fonctionnalités de supervision avez-vous besoin ?

Les pipelines de traitement des données doivent avoir des fonctionnalités de surveillance et fournir des insights sur les performances et l’état des travaux du pipeline. Votre plateforme doit fournir :

  • Suivi de la progression des travaux
  • Journaux, métriques et alertes pour comprendre le comportement du pipeline
  • Intégration à votre ensemble d'outils de supervision élargi

Identifiez les lacunes dans les données de télémétrie intégrées et déterminez quelle surveillance supplémentaire vous devez implémenter. Cette surveillance peut impliquer l’ajout de métriques ou de journalisation personnalisées pour capturer des détails spécifiques sur les étapes du travail.

Quelle fiabilité attendez-vous de la plateforme de traitement des données ?

Choisissez une plateforme qui réduit les points d’échec uniques et prend en charge les nouvelles tentatives pour les tâches ayant échoué. Par exemple, l’hébergement d’une logique de traitement personnalisée appelée à partir de Data Factory sur Azure Kubernetes Service (AKS) offre généralement une fiabilité plus forte que l’hébergement dans Azure Logic Apps.

Si vos données sont rarement mises à jour et que vous gérez le traitement par lots hebdomadaire, des défaillances occasionnelles peuvent être acceptables. Toutefois, pour les scénarios d’IA en temps réel, vous aurez besoin d’une fiabilité plus élevée.

Existe-t-il des contraintes de coût ?

L’objectif est d’éviter le sur-ingénierie et de choisir une plateforme qui répond à vos besoins aujourd’hui tout en laissant place à l’échelle. Par exemple, si vous n’avez pas besoin des fonctionnalités avancées de Databricks, Data Factory peut offrir une option plus abordable. Les outils open source tels que Airflow ou NiFi peuvent réduire davantage les coûts.

Quelles sont les exigences de sécurité sur les flux de travail et sur les données que vous traitez ?

Les exigences de sécurité, de confidentialité et de résidence des données doivent guider votre choix. Dans l’idéal, la plateforme doit fournir une prise en charge intégrée pour une telle isolation qui permet une gestion efficace et sécurisée des données. Au moins, assurez-vous que la plateforme :

  • Répond aux lois régionales sur la résidence des données. Vous devrez peut-être exécuter des pipelines distincts pour différentes régions, comme l’une pour l’Europe et l’autre pour l’Amérique, afin de respecter les réglementations locales en matière de conformité.
  • Prend en charge la gestion des identités et des accès (IAM) pour s’assurer que seules les identités autorisées ont accès à des travaux ou étapes spécifiques dans les flux de travail.
  • Autorise le contrôle d’accès affiné au niveau du flux de travail ou de l’étape.

Options technologiques

Fonction Technologies recommandées Alternatives / Outils complémentaires
Nettoyage des données Azure Data Factory, Azure Databricks, Microsoft Fabric Dataflows Apache NiFi, Apache Airflow
Transformation des données Azure Databricks, Azure Synapse Analytics, Microsoft Fabric Data Engineering Azure Data Factory Pipelines
Enrichissement des données Azure AI Document Intelligence, Azure OpenAI Service, Azure AI Search API Python personnalisées ou services IA tiers
Orchestration de flux de travail Pipelines Azure Data Factory, travaux Databricks Apache Airflow, Apache NiFi
Flux de travail RAG Azure OpenAI Service, Recherche Azure AI, Azure Databricks Science des données Microsoft Fabric

Considérations relatives à un index de recherche

Un index de recherche stocke les données contextuelles ou de référence qui sont envoyées avec l’invite au point d'inférence du modèle. Les requêtes d’index sont un composant essentiel de la préparation des données envoyées au modèle dans les requêtes d’inférence et doivent fournir des performances à faible latence.

Contrairement aux pipelines ETL orientés lots, cet index doit permettre une inférence en temps réel, ce qui signifie que des performances élevées et une fiabilité absolue sont indispensables. Il est conçu pour les charges de travail IA et prend en charge des fonctionnalités telles que l’indexation de mots clés, le filtrage et la recherche basée sur des vecteurs, qui vont au-delà de ce que fournissent les magasins de données traditionnels.

La conception idéale est un magasin de données hautes performances, optimisé pour les lectures, qui peut gérer des requêtes imprécises ou approximatives tout en retournant des résultats pertinents. Choisissez la technologie d’index en gardant ces points à l’esprit.

Quels types de recherche l’index de recherche prend-il en charge ?

Chaque requête adressée au système peut entraîner une ou plusieurs requêtes à l’index. Pour la génération augmentée de récupération (RAG) et d’autres charges de travail pilotées par l’IA, la recherche vectorielle est obligatoire. La recherche vectorielle permet au système de rechercher des points de données sémantiquement similaires à l’aide d’incorporations plutôt que de correspondances exactes de mots clés.

Toutefois, la combinaison de la recherche vectorielle avec la recherche en texte intégral, le filtrage et les types de données spéciaux (tels que la géolocalisation) rend l’index beaucoup plus puissant.

Votre conception de données doit clairement spécifier quels types de recherche sont requis et comment ils doivent fonctionner ensemble. Pour plus d’informations, consultez Interrogation efficace dans la conception des données.

Comment l’index gère-t-il les données modales ?

Les charges de travail IA traitent souvent des données qui incluent non seulement du texte, mais également des images, des fichiers audio ou vidéo. L’index lui-même ne peut pas comprendre directement les images. Par conséquent, avant d’ajouter des images à l’index, elles doivent être converties en représentation textuelle (à l’aide de l’OCR ou du sous-titrage d’images), à partir desquelles les incorporations sont générées, ou des incorporations vectorielles peuvent être générées directement à partir de l’image à l’aide de modèles de vision. L’index peut ensuite effectuer une recherche vectorielle, ce qui autorise les requêtes sémantiques.

Dans ce cas d’usage, l’index de recherche doit avoir :

  • Prise en charge de la recherche vectorielle pour stocker et interroger des incorporations (vecteurs numériques) dérivées de l’image.
  • Intégration avec des API externes et des services IA pour extraire ou enrichir des données pendant le processus d’indexation.
  • Possibilité de stocker des champs extraits (texte, balises, légendes, incorporations) dans les champs de schéma appropriés en tant que métadonnées pour la recherche et le filtrage.

L’index prend-il en charge les fonctionnalités de mise à jour automatique lorsque les données des sources de données changent ?

L’automatisation est essentielle pour maintenir l’actualisation des données. Sélectionnez un index qui prend en charge les mises à jour automatiques ou les actualisations incrémentielles lorsque les données sous-jacentes changent.

Si la plateforme n’offre pas cela en mode natif, vous devez implémenter un processus personnalisé pour détecter et envoyer (push) les mises à jour. Décharger cette responsabilité sur la plateforme peut réduire la surcharge opérationnelle et simplifier la maintenance, en particulier à mesure que les volumes de données augmentent.

L’index peut-il s’exécuter avec de grands volumes de données ?

L’index doit être mis à l’échelle efficacement à mesure que le volume de données augmente. Pour les charges de travail qui implémentent RAG, chaque document est souvent divisé en plusieurs blocs, ce qui augmente considérablement la quantité de données stockées.

Votre plateforme choisie doit être en mesure de :

  • Mettre à l’échelle horizontalement à mesure que les données augmentent
  • Maintenir les performances des requêtes sous une charge importante
  • Stocker les données brutes et les métadonnées associées, les enrichissements et les entités

L’index a-t-il des fonctionnalités de fiabilité intégrées ?

La fiabilité de l’index de recherche doit refléter celle de votre point de terminaison d’inférence, car les deux font partie du même chemin de traitement en temps réel.

Chaque étape doit répondre à des attentes similaires en matière de temps d’activité et de performances. Pour ce faire, lorsque vous choisissez la plateforme de données, recherchez :

  • Fonctionnalités de haute disponibilité et de redondance de zone pour survivre aux pannes zonales et régionales.
  • Récupération automatique et reconstruction d’index simple pour empêcher l’utilisation d’un index endommagé pour l’inférence.
  • Fonctionnalités d’alias d’index ou de permutation pour permettre des mises à jour sans interruption.

En outre, comprenez les modes d’échec du système ou les indicateurs de contrainte, tels que la limitation. Par exemple, lors de la réindexation en arrière-plan, le débit peut diminuer. Le système peut normalement gérer 50 utilisateurs simultanés, mais seulement 30 pendant ce travail. Planifiez le timing des tâches et la capacité en conséquence, en tenant compte des requêtes front-end et des tâches de maintenance back-end.

Quels sont les principaux facteurs de coût de cette technologie ?

Les coûts d’index de recherche sont généralement basés sur l’utilisation. Il est donc important de modéliser votre volume de données, votre taux de requête et votre débit attendus.

La plupart des plateformes d’index, telles qu’Azure AI Search, sont des offres PaaS (Platform as a Service), où la tarification est abstraite et présentée en unités de capacité, de stockage et d’utilisation des fonctionnalités.

Gardez à l’esprit les points suivants :

  • Limites de tarification et de mise à l’échelle des niveaux
  • Coûts supplémentaires des fonctionnalités avancées (par exemple, l’extraction d’images ou l’enrichissement d’ensemble de compétences)
  • Capacité inutilisée dans les niveaux surprovisionnés
  • Complexité des index (nombre d’index et limites de requête simultanées)

Pour comprendre les coûts associés à la recherche IA, consultez Planifier et gérer les coûts d’un service Search IA.

Les fonctionnalités de sécurité de l’index répondent-elles à votre conception des données de sécurité ?

Votre conception de données doit clairement spécifier les exigences de sécurité et de confidentialité, et votre index doit les prendre entièrement en charge. Lorsque vous travaillez dans des environnements de développement ou de test qui utilisent des données réelles, vérifiez que l’index est conforme aux stratégies de contrôle d’accès et de traçabilité. Recherchez des fonctionnalités telles que :

  • Masquage des données et suppression des informations d’identification personnelle
  • Gestion des identités clientes via l’ID Microsoft Entra
  • Contrôles d’accès au niveau du document pour filtrer les résultats en fonction de l’identité de l’utilisateur

Si la plateforme ne prend pas en charge ces fonctionnalités en mode natif, envisagez d’implémenter des filtres au niveau des requêtes comme secours. Pour plus d’informations, consultez Filtres de sécurité pour réduire les résultats dans la recherche IA.

Du point de vue de la sécurité réseau, l’index doit :

  • Prise en charge du contrôle de sortie et de la segmentation du réseau
  • Intégrer à des réseaux privés lorsque le calcul s’exécute dans un réseau virtuel
  • Utiliser des identités managées pour l’authentification via Microsoft Entra ID
  • Éviter d’exposer des composants directement à l’Internet public

Les incorporations peuvent toujours exposer des informations sensibles si elles ne sont pas correctement sécurisées. Les risques incluent l’inversion d'incorporation (reconstruction du texte d’origine à partir de vecteurs), l’empoisonnement des données (insertion de vecteurs malveillants) et l’accès non autorisé aux magasins d'incorporation ou sauvegardes. Pour atténuer ces risques, appliquez des mesures de sécurité telles que :

  • Chiffrement au repos et en transit
  • Contrôles d’accès stricts
  • Connectivité de réseau privé décrite ci-dessus
  • Surveiller les points de terminaison d’intégration pour les anomalies ou les altérations

Comme pour d’autres types de données, il est important d'avoir des processus pour supprimer les données sensibles ou personnelles. Traitez les index vectoriels comme des magasins de données sensibles qui nécessitent le même niveau de sécurité et de gouvernance que d’autres systèmes de production.

Options technologiques

Fonction Technologies recommandées Alternatives / Outils complémentaires
Recherche vectorielle et recherche sémantique Recherche Azure AI, Azure Cosmos DB (recherche vectorielle), Azure Database pour PostgreSQL (pgvector) Pinecone, Weaviate, Chroma, Qdrant
Recherche en texte intégral et indexation de mots clés Recherche d’IA Azure Elasticsearch, Apache Solr, Azure SQL Database Full-Text Search
Traitement des données modales Recherche Azure AI (avec fonctionnalités avancées), Azure AI Document Intelligence, Azure AI Vision Traitement personnalisé avec les API OpenAI, Amazon Textract
Actualisation et indexation automatiques des données Recherche Azure AI (avec indexeurs), déclencheurs Azure Data Factory Solutions d’interrogation personnalisées, Apache NiFi, capture de données modifiées
Haute disponibilité et fiabilité Recherche Azure AI (redondance de zone), Azure Cosmos DB (distribution mondiale) Déploiements multirégions, équilibreurs de charge, Azure Traffic Manager
Alias d'index et mises à jour sans interruption Recherche Azure AI (alias d’index), Azure Cosmos DB Modèles de déploiement bleu-vert, logique de routage personnalisée
Contrôle de sécurité et d’accès au niveau du document Recherche Azure AI (filtres de sécurité), intégration d’ID Microsoft Entra Couches d’autorisation personnalisées, sécurité au niveau des lignes dans les bases de données
Sécurité réseau et accès privé Azure Private Link, intégration de réseau virtuel, identités managées Passerelles VPN, Pare-feu Azure, groupes de sécurité réseau personnalisés

Considérations relatives à la formation et au réglage précis

Lors de la conception de votre plateforme de données pour les charges de travail Machine Learning (ML) traditionnelles ou non GenAI, votre focus passe de l’inférence en temps réel à la qualité des données, à la reproductibilité et à la séparation de l’environnement. Ces charges de travail s’appuient sur des données agrégées bien structurées et impliquent souvent des couches supplémentaires, telles que les magasins de fonctionnalités et les magasins de données d’inférence par lots, pour optimiser les performances du modèle et l’efficacité des coûts.

Nous vous recommandons vivement de comprendre les principes de conception de pipeline de données appropriés avant d’explorer les fonctionnalités technologiques décrites par cet article. Pour plus d’informations, consultez Conception des données d’entraînement.

Prévoyez-vous d’effectuer une formation avec des données de production ?

La façon dont vous déployez vos modèles détermine la précision des données de production associées à votre environnement de développement. Il existe deux approches de déploiement principales :

  • Déploiement de modèle. Le modèle est entraîné ou paramétré à l’aide de données de production pendant le développement. Cette approche peut améliorer la pertinence du modèle, mais exige des contrôles de sécurité forts, car les données sensibles sont utilisées en dehors de la production.

  • Déploiement de code. Le modèle est entraîné à l’aide de données hors production dans le développement et interagit uniquement avec les données réelles une fois qu’il est déployé en production. Cette méthode simplifie la sécurité du développement, mais peut augmenter les coûts de calcul et de stockage, car l’entraînement peut avoir besoin d’être répété dans plusieurs environnements.

Quelle que soit l’approche, votre plateforme de données doit séparer clairement les environnements de développement et de production, ce qui garantit une isolation et un contrôle d’accès appropriés.

Vous hiérarchisez la commodité par rapport aux fonctionnalités ?

Lorsque vous choisissez une plateforme de données pour l'apprentissage automatique, ne basez pas votre décision uniquement sur la compatibilité avec les notebooks.

Les notebooks sont parfaits pour l’analyse exploratoire des données, mais ils ne constituent pas un facteur déterminant pour la sélection d’une plateforme de données de niveau production. Les ressources de calcul pour les notebooks sont généralement situées à l'extérieur du stockage de données agrégées et sont intégrées à des outils externes tels qu'Azure Machine Learning et Databricks Workspaces.

Hiérarchisez les fonctionnalités principales, telles que le contrôle de version des données, la gouvernance, l’extensibilité et la sécurité, par rapport aux fonctionnalités pratiques.

Comment allez-vous traiter et préparer vos données ?

Dans les charges de travail ML, le modèle de traitement des données que vous choisissez a un impact important sur la flexibilité et les performances.

  • ETL (Extraire, transformer, charger) : courant dans l’entreposage de données traditionnel, où les contraintes de schéma vous obligent à transformer des données avant de les charger dans le système cible.
  • ELT (Extraire, Charger, Transformer) – typique des lacs de données ou de l'architecture de type "lakehouse", où les données brutes sont chargées en premier, puis transformées ultérieurement à l'aide d'outils tels que Python ou PySpark.
  • EL (Extraire, charger) : courant dans les modèles GenAI et RAG, où vous stockez d’abord des documents ou des supports et effectuez des transformations en aval (telles que la segmentation de texte ou l’extraction d’images) ultérieurement.

ELT est souvent préféré, car il conserve les données brutes et permet des transformations plus flexibles pendant la préparation du modèle.

Avez-vous besoin d’un magasin de fonctionnalités ?

Il est souvent utile d’introduire un magasin de fonctionnalités en tant que couche de données intermédiaire entre votre magasin de données agrégé et votre environnement d’entraînement.

Un magasin de fonctionnalités agit comme un catalogue de fonctionnalités organisées, avec des métadonnées telles que la traçabilité des fonctionnalités, l’heure de génération et la source. Il s’agit de l’endroit idéal pour conserver des données d’apprentissage « dorées » qui peuvent être réutilisées sur plusieurs modèles ou expériences.

Les magasins de fonctionnalités managés, comme celui d’Azure Machine Learning, s’intègrent directement à MLflow et à d’autres outils de cycle de vie ML. Ils permettent la reproductibilité, la gouvernance et le contrôle de version pour vos fonctionnalités.

Traitez le magasin de fonctionnalités comme un magasin de données sensible à son propre droit avec les contrôles d’accès, le chiffrement et l’audit appropriés.

Devez-vous utiliser un magasin de données d’inférence par lots ?

Dans certains cas, vous pouvez améliorer les performances et réduire les coûts en effectuant une inférence par lots, c’est-à-dire en pré-calculant les résultats d’inférence et en les stockant pour une utilisation ultérieure au lieu d’appeler le modèle en temps réel.

Cette approche peut être très efficace lorsque les mêmes requêtes ou prédictions sont demandées à plusieurs reprises (par exemple, la génération de faq ou de recommandations standard).

Les principaux avantages sont les suivants :

  • Une latence réduite et une expérience utilisateur améliorée, les résultats sont servis instantanément.
  • Scalabilité plus facile, car l’inférence peut être distribuée par lots et distribuée hors connexion.
  • Fiabilité améliorée qui évite que le point de terminaison d’inférence soit chargé en temps réel.
  • Les coûts de calcul inférieurs résultant du traitement par lots peuvent utiliser du matériel de niveau inférieur.
  • Pré-validation intégrée dans laquelle les résultats peuvent être vérifiés pour la précision avant d’être exposés aux utilisateurs.

Toutefois, cette approche fonctionne mieux lorsqu’un pourcentage significatif de prédictions est réutilisé. Si votre charge de travail implique principalement des requêtes uniques, la gestion d’un magasin d’inférence par lots peut ne pas valoir la complexité.

Votre magasin de données d’inférence par lots doit être optimisé pour les opérations de lecture, évolutifs suffisamment pour gérer les jeux de données volumineux et intégrés à votre magasin de données agrégé.

Les technologies qui conviennent à ce modèle incluent Azure Cosmos DB pour un accès rapide, globalement distribué, ou le Azure Table Storage pour des charges de travail plus simples et à moindre coût.

Options technologiques

Fonction Technologies recommandées Alternatives / outils complémentaires
Stockage de données agrégé Azure Data Lake Storage Gen2, Microsoft Fabric Lakehouse, Azure Synapse Analytics Stockage Blob d'Azure, Base de données SQL, entrepôt de données local
Traitement et transformation des données (ETL/ELT) Azure Data Factory, Azure Databricks (PySpark, SQL), Microsoft Fabric Data Engineering Apache Airflow, Apache NiFi, Synapse Pipelines
Environnement de développement et de formation Azure Machine Learning (avec intégration MLflow), Espaces de travail Azure Databricks JupyterHub, Kubeflow, Amazon SageMaker
Magasin de fonctionnalités Magasin de fonctionnalités Azure Machine Learning, Magasin de fonctionnalités Databricks Festin (open source), Tecton
Inférence par lots Azure Cosmos DB, Azure Table Storage Azure SQL Database, PostgreSQL, Redis Cache
Suivi des expériences et du registre de modèles MLflow (intégré dans Azure Machine Learning ou Databricks) Weights & Biases, Neptune.ai, DVC
Orchestration et automatisation Pipelines de Azure Data Factory, pipelines de Azure Machine Learning Apache Airflow, Préfectoral
Contrôle de sécurité et d’accès Microsoft Entra ID (Azure AD), Azure Key Vault, Identités managées HashiCorp Vault, AWS IAM

Étapes suivantes