L’architecture suivante développe le scénario Analyse de bout en bout avec Azure Synapse Analytics. Elle permet d’effectuer l'apprentissage d’un modèle de Machine Learning (ML) dans Azure Machine Learning et d’implémenter celui-ci avec une application personnalisée générée à l’aide de Microsoft Power Platform.
Architecture
Téléchargez un fichier Visio de cette architecture.
Workflow
Le flux de travail se déroule comme suit :
- Ingérer
- Magasin
- Entraîner et déployer un modèle
- Utiliser
Ingérer
Utilisez des pipelines Azure Synapse pour extraire des données de lot de diverses sources, tant locales que dans le cloud. Cette architecture lambda a deux flux d’ingestion de données : streaming et batch. Ils sont décrits ici :
- Streaming : dans la moitié supérieure du diagramme d’architecture précédent se trouvent les flux de données de streaming (par exemple, les flux Big Data et les appareils IoT).
- Vous pouvez utiliser Azure Event Hubs ou Azure IoT Hub pour ingérer des flux de données générés par des applications clientes ou des appareils IoT. Event Hubs ou IoT Hub ingère et stocke les données de streaming en préservant la séquence des événements reçus. Les consommateurs peuvent se connecter aux points de terminaison de hub pour extraire des messages à traiter.
- Lot : dans la moitié inférieure du diagramme d’architecture, les données sont ingérées et traitées par lots, par exemple des :
Données non structurées (par exemple, vidéo, images, audio et texte libre)
Données semi-structurées (par exemple, JSON, XML, CSV et journaux)
Données structurées (par exemple, bases de données relationnelles et Azure Data Services)
Azure Synapse Link crée une intégration transparente étroite entre Azure Cosmos DB et Azure Synapse Analytics. Des pipelines Azure Synapse peuvent être déclenchés selon une planification prédéfinie ou en réponse à un événement. Ils peuvent également résulter d’appels d’API REST.
Magasin
Les données ingérées peuvent être livrées directement au format brut, puis transformées sur l’Azure Data Lake. Une fois organisées et transformées en structures relationnelles, les données peuvent être présentées en vue de leur consommation dans Azure Synapse Analytics.
Entraîner et déployer un modèle
Machine Learning est un service ML de niveau entreprise pour la génération et le déploiement rapides de modèles. Elle fournit aux utilisateurs de tous niveaux de compétence un concepteur à faible code, un ML automatisé et un environnement de notebook Jupyter hébergé. Vous pouvez déployer des modèles en tant que points de terminaison en temps réel sur Azure Kubernetes Service, ou en tant que point de terminaison managé de Machine Learning. Pour l’inférence par lot de modèles ML, vous pouvez utiliser des pipelines Machine Learning.
Utiliser
Un modèle par lot ou en temps réel publié dans Machine Learning peut générer un point de terminaison REST utilisable dans une application personnalisée générée à l’aide de la plateforme de Power Apps à faible code. Vous pouvez également appeler un point de terminaison Machine Learning en temps réel à partir d’un rapport Power BI afin de présenter des prédictions dans des rapports.
Remarque
La solution Machine Learning et la pile Microsoft Power Platform intègrent une série de connecteurs pour faciliter l’ingestion directe de données. Ces connecteurs peuvent être utiles pour un produit unique à viabilité minimale (MVP, Minimum Viable Product). Toutefois, les sections « Ingérer » et « Stocker » de l’architecture promeuvent le rôle des pipelines de données standardisés pour l’approvisionnement et le stockage à grande échelle de données issues de différentes sources. Ces modèles sont généralement implémentés et gérés par les équipes responsables de la plateforme de données d’entreprise.
Composants
Vous pouvez utiliser les composants suivants.
Services de Microsoft Power Platform
- Power Platform : ensemble d’outils pour l’analyse de données, la création de solutions, l’automatisation de processus et la création d’agents virtuels. Il inclut Power Apps, Power Automate, Power BI et Microsoft Copilot Studio (anciennement Power Virtual Agents).
- Power Apps : suite d’applications, services, connecteurs et plateforme de données. Elle fournit un environnement de développement rapide d'applications pour générer des applications personnalisées répondant à vos besoins.
- Power Automate : service qui vous aide à créer des flux de travail automatisés entre vos applications et services de prédilection. Utilisez-le pour synchroniser des fichiers, obtenir des notifications, collecter des données, etc.
- Power BI : collection de services logiciels, d'applications et de connecteurs qui fonctionnent ensemble pour convertir vos sources de données non liées en insights cohérents, visuellement immersifs et interactifs.
Services Azure
- Machine Learning : service ML de niveau entreprise pour la génération et le déploiement rapides de modèles. Il fournit aux utilisateurs de tous niveaux de compétence un concepteur à faible code, un ML automatisé et un environnement de notebook Jupyter hébergé pour prendre en charge l’IDE de votre choix.
- Points de terminaison managés de Machine Learning : points de terminaison en ligne qui vous permettent de déployer votre modèle sans avoir à créer et gérer l’infrastructure sous-jacente.
- Azure Kubernetes Service : la prise en charge de ML varie selon les cibles de calcul. Azure Kubernetes Service est une cible de ce type, qui convient parfaitement pour des points de terminaison de modèle en temps réel de niveau entreprise.
- Azure Data Lake : système de fichiers compatible Hadoop. Il offre un espace de noms hiérarchique intégré, ainsi que l’échelle et l’économie du Stockage Blob Azure.
- Azure Synapse Analytics : service d’analytique illimité qui réunit l’intégration de données, l’entreposage de données d’entreprise et des fonctionnalités analytiques pour le Big Data.
- Event Hubs et IoT Hub : les deux services ingèrent des flux de données générés par des applications clientes ou des appareils IoT. Ils ingèrent et stockent ensuite des données de diffusion en continu, en préservant la séquence des événements reçus. Les consommateurs peuvent se connecter aux points de terminaison de hub afin de récupérer des messages à traiter.
Services de plateforme
Pour améliorer la qualité de vos solutions Azure, suivez les recommandations et instructions de l’Azure Well-Architected Framework. Le framework se compose des cinq piliers de l’excellence architecturale :
- Optimisation des coûts
- Excellence opérationnelle
- Efficacité des performances
- Fiabilité
- Sécurité
Pour créer une conception conforme à ces recommandations, envisagez les services suivants :
- Microsoft Entra ID : services d'identité, authentification unique et authentification multifacteur sur les charges de travail Azure.
- Microsoft Cost Management : gouvernance financière sur vos charges de travail Azure.
- Azure Key Vault : gestion sécurisée des certificats et des informations d’identification.
- Azure Monitor : collecte, analyse et affichage de la télémétrie de vos ressources Azure. Utilisez Monitor pour identifier les problèmes de manière proactive afin d’optimiser les performances et la fiabilité.
- Microsoft Defender pour le cloud : renforcement et supervision de la sécurité de vos charges de travail Azure.
- Azure DevOps et GitHub : implémentation des pratiques de DevOps pour appliquer l’automatisation et la conformité à vos pipelines de déploiement et de développement de charges de travail pour Azure Synapse Analytics et Machine Learning.
- Azure Policy : implémentation de nomes organisationnelles et de gouvernance pour la cohérence des ressources, la conformité réglementaire, la sécurité, le coût et la gestion.
Autres solutions
Un MVP Machine Learning bénéficie de la rapidité d'obtention des résultats. Dans certains cas, les besoins d’un modèle personnalisé peuvent être satisfaits par des services préformés Azure Cognitive Services ou Azure Applied AI Services. Dans d’autres cas, Power Apps AI Builder peut fournir un modèle adapté.
Détails du scénario
Une tendance technologique générale est la popularité croissante des rôles d’intelligence artificielle citoyenne. Ces rôles sont ceux de professionnels du monde des affaires qui cherchent à améliorer les processus métier par l'application de technologies d'apprentissage automatique (ML) et d'intelligence artificielle (IA). Un contributeur significatif à cette tendance est la maturité et la disponibilité croissantes d’outils à faible code pour développer des modèles ML.
Compte tenu du taux d'échec élevé bien connu de telles initiatives, la capacité à prototyper et valider rapidement une application d'IA dans un cadre réel devient un facteur clé d'une approche Fail-fast. Il existe deux outils clés pour le développement de modèles qui modernisent les processus et produisent des résultats transformateurs :
- Un kit de ressources de ML pour tous les niveaux de compétence
- Prend en charge le développement ML tant sans code qu’entièrement codé.
- dispose d'une interface utilisateur graphique (GUI) flexible et peu codée
- Permet aux utilisateurs de recueillir et préparer rapidement des données.
- Permet aux utilisateurs de créer et déployer rapidement des modèles.
- Offre des fonctionnalités de ML automatisé avancées pour le développement d’algorithmes de ML.
- Un kit de ressources de développement d’applications à faible code
- Permet aux utilisateurs de générer des applications personnalisées et des flux de travail d’automatisation.
- Crée des flux de travail afin de permettre aux consommateurs et aux processus d’entreprise d’interagir avec un modèle ML.
La solution Machine Learning assume le rôle d’interface graphique utilisateur à faible code pour le développement ML. Elle intègre le Machine Learning automatisé et le déploiement sur des points de terminaison en temps réel ou par lot. Power Platform, qui inclut Power Apps et Power Automate, fournit les kits de ressources permettant de générer rapidement une application personnalisée et un workflow qui implémente votre algorithme de ML. Les utilisateurs professionnels peuvent désormais générer des applications ML de niveau production pour transformer des processus d’entreprise hérités.
Cas d’usage potentiels
Ces kits de ressources réduisent le temps et les efforts nécessaires pour prototyper les avantages d’un modèle ML sur un processus d’entreprise. Vous pouvez facilement étendre un prototype à une application de niveau production. Les usages de ces techniques sont les suivants :
- Opérations de fabrication avec des applications héritées qui utilisent des prédictions déterministes obsolètes. De telles situations peuvent bénéficier de la précision accrue d’un modèle ML. La démonstration de la précision accrue nécessite à la fois un modèle et un effort de développement pour l'intégration avec des systèmes hérités locaux.
- Opérations de centre d’appels avec des applications héritées qui ne s’ajustent pas en cas de dérive de données. Des modèles qui se recyclent automatiquement peuvent augmenter considérablement la précision de la prédiction d’évolution ou du profilage de risques. La validation nécessite une intégration avec des systèmes existants de gestion des relations avec la clientèle et des tickets. L’intégration peut être coûteuse.
Considérations
Lorsque vous utilisez ces services pour créer une preuve de concept ou un produit minimum viable, vous n’avez pas terminé. Vous devez encore créer une solution de production. Des infrastructures telles que le Well-Architected Framework fournissent des conseils de référence et les meilleures pratiques à appliquer à votre architecture.
Disponibilité
La plupart des composants utilisés dans cet exemple de scénario sont des services gérés dont la mise à l’échelle est automatique. La disponibilité des services utilisés dans cet exemple varie en fonction de la région.
Les applications basées sur le Machine Learning requièrent généralement un ensemble de ressources pour l’apprentissage, et un autre pour le service. Les ressources nécessaires à l’entraînement n’ont généralement pas besoin de haute disponibilité, car les demandes de production en temps réel ne touchent pas directement ces ressources. Les ressources requises pour servir les demandes doivent offrir une haute disponibilité.
DevOps
Des pratiques de DevOps sont utilisées pour orchestrer l’approche de bout en bout présentée dans cet exemple. Le Guide de DevOps pour le Machine Learning présente les meilleures pratiques et les enseignements tirés de l’adoption des opérations de ML (MLOps) dans l’entreprise avec la solution Machine Learning.
L’automatisation du DevOps peut être appliquée à la solution Microsoft Power Platform fournie dans cet exemple. Pour plus d’informations sur le DevOps de Miscrosoft Power Platform, consultez Microsoft Power Platform Build Tools pour Azure DevOps: Power Platform.
Optimisation des coûts
L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.
Tarification Azure : les services IaaS (infrastructure-as-a-service) et PaaS (platform-as-a-service) internes utilisent un modèle de tarification basé sur la consommation. Ils ne nécessitent pas de frais de licence ou d’abonnement. En règle générale, utilisez la calculatrice de prix Azure pour estimer les coûts. Pour d’autres considérations, consultez Optimisation des coûts dans le Well-Architected Framework.
Tarifs Power Platform : Power Apps, Power Automate et Power BI sont des applications SaaS (software-as-a-Service) qui ont leurs propres modèles tarifaires, notamment par plan d’application et par utilisateur.
Déployer ce scénario
Considérez ce scénario métier. Un agent de terrain utilise une application qui estime le prix du marché d’une voiture. Vous pouvez utiliser la solution Machine Learning pour prototyper rapidement un modèle ML de cette application. Vous utilisez un concepteur à faible code et des fonctionnalités ML pour créer le modèle, puis déployez celui-ci en tant que point de terminaison REST en temps réel.
Le modèle peut prouver le concept, mais un utilisateur n’a aucun moyen simple de consommer un modèle implémenté en tant qu’API REST. Microsoft Power Platform peut aider à jusqu’au bout de la dernière ligne droite comme décrit ici.
Voici une interface utilisateur pour l’application, créée dans Power Apps à l’aide de l’interface à faible code fournie par Power Apps.
Vous pouvez utiliser Power Automate pour générer un flux de travail à faible code afin d’analyser l’entrée de l’utilisateur, de la transmettre au point de terminaison Machine Learning et de récupérer la prédiction. Vous pouvez également utiliser Power BI pour interagir avec le modèle Machine Learning et créer des rapports et des tableaux de bord d’entreprise personnalisés.
Pour déployer cet exemple de bout en bout, suivez les instructions pas à pas dans Car Price Predictor - Azure ML + Power App Solution.
Scénarios étendus
Examinez les scénarios suivants.
Déployer sur Teams
L’exemple d’application ci-dessus peut également être déployé sur Microsoft Teams. Teams fournit un excellent canal de distribution pour vos applications et offre à vos utilisateurs une expérience d’application collaborative. Pour plus d’informations sur le déploiement d’une application dans Teams à l’aide de Power Apps, consultez Publier votre application à l’aide de Power Apps dans Teams : Power Apps.
Consommer l’API à partir de plusieurs applications et automations
Dans cet exemple, nous configurons un flux cloud Power Automate pour consommer le point de terminaison REST en tant qu’action HTTP. Nous pouvons à la place configurer un connecteur personnalisé pour le point de terminaison REST et le consommer directement à partir de Power Apps ou de Power Automate. Cette approche est utile lorsque vous souhaitez que plusieurs applications consomment le même point de terminaison. Elle fournit également une gouvernance en utilisant la stratégie de prévention des pertes de données (DLP, Data Loss Prevention) de connecteur dans le Centre d’administration Microsoft Power Platform. Pour créer un connecteur personnalisé, consultez Utiliser un connecteur personnalisé à partir d’une application Power Apps. Pour plus d’informations sur la stratégie DLP de connecteur de Microsoft Power Platform, consultez Stratégies de protection contre la perte de données : Power Platform.
Contributeurs
Cet article est géré par Microsoft. Il a été écrit à l’origine par :
- Vyas Dev Venugopalan | Sr. Specialist - Azure Data & AI
Étapes suivantes
- Fonctionnement de Machine Learning : Architecture et concepts
- Créer des applications intelligentes dotées d’une intelligence artificielle de classe mondiale