Cet article décrit les solutions Azure pour la création, l’entraînement, le déploiement et l’utilisation de modèles de traitement de documents personnalisés. Ces services Azure offrent également des fonctionnalités d’interface utilisateur pour effectuer l’étiquetage ou le balisage destiné au traitement du texte.
Architecture
Téléchargez un fichier Visio de cette architecture.
Dataflow
Les orchestrateurs comme Azure Logic Apps, Azure Data Factory ou Azure Functions ingèrent des messages et des pièces jointes provenant de serveurs de messagerie ainsi que des fichiers provenant de serveurs FTP ou d’applications web.
Azure Functions et Logic Apps permettent des charges de travail serverless. Le service que vous choisissez dépend de vos préférences pour les fonctionnalités des services, comme le développement, les connecteurs, la gestion et le contexte d’exécution. Pour plus d’informations, consultez Comparer Azure Functions et Azure Logic Apps.
Envisagez d’utiliser Azure Data Factory pour le déplacement de données en bloc.
Les orchestrateurs envoient des données ingérées à Stockage Blob Azure ou Data Lake Storage, en organisant les données entre les magasins de données en fonction de caractéristiques comme les extensions de fichier ou les clients.
Document Intelligence Studio, Language Studio ou Azure Machine Learning studio étiquettent et balisent les données textuelles et génèrent les modèles personnalisés. Vous pouvez utiliser ces trois services indépendamment ou dans différentes combinaisons pour traiter différents cas d’usage.
Si le document nécessite l'extraction de paires clé-valeur ou la création d'une table personnalisée à partir d'un format d'image ou d'un fichier PDF, utilisez Document Intelligence Studio pour étiqueter les données et entraîner le modèle personnalisé. De la même manière, s'il est nécessaire de déterminer le type de document avant d'invoquer le modèle d'extraction approprié, utilisez le Document Intelligent Studio pour étiqueter les documents.
Pour la classification de documents basée sur le contenu ou pour l’extraction d’entités spécifiques à un domaine, vous pouvez entraîner une classification de texte personnalisée ou un modèle de reconnaissance d’entité nommée (NER, Named Entity Recognition) dans Language Studio.
Azure Machine Learning (AML) studio peut également faire l’étiquetage pour la classification de texte ou l’extraction d’entités avec des frameworks open-source comme PyTorch ou TensorFlow. AML Studio propose également un catalogue de modèles de base avec des capacités de réglage fin pour diverses tâches telles que la classification de textes, la réponse à des questions, le résumé, etc. Le réglage fin peut être réalisé à l'aide de l'interface utilisateur d'AML studio ou par le biais du code.
Pour déployer les modèles personnalisés et les utiliser pour l’inférence :
Le service Azure AI Intelligence documentaire dispose d'une fonction intégrée de modèles de déploiement Utilisez le SDK ou l’API REST de Form Recognizer pour appliquer des modèles personnalisés pour l’inférence. Incluez l’ID de modèle ou le nom de modèle personnalisé dans l’URL de requête Document Intelligence, selon la version de l’API. Document Intelligence ne nécessite pas d’étapes de déploiement supplémentaires.
Language Studio offre une option pour déployer des modèles de langage personnalisés. Obtenez l’URL de prédiction du point de terminaison REST en sélectionnant le modèle à déployer. Vous pouvez effectuer une inférence de modèle en utilisant le point de terminaison REST ou les bibliothèques clientes du SDK Azure.
Azure Machine Learning peut déployer des modèles personnalisés sur des points de terminaison managés Azure Machine Learning en ligne ou par lots. Vous pouvez également déployer sur Azure Kubernetes Service (AKS) en tant que service web en utilisant le SDK Azure Machine Learning. Les modèles fondamentaux ajustés du Catalogue de Modèles peuvent être déployés sur des endpoints pour l’inférence.
Composants
Logic Apps fait partie d’Azure Integration Services. Logic Apps crée des workflows automatisés qui intègrent des applications, des données, des services et des systèmes. Avec des connecteurs managés pour des services comme Stockage Azure et Microsoft 365, vous pouvez déclencher des workflows quand un fichier arrive dans le compte de stockage ou quand un e-mail est reçu.
Data Factory est un service d’extraction, de transformation, de chargement (ETL) cloud managé pour l’intégration et la transformation des données. Data Factory peut ajouter des activités de transformation à un pipeline qui incluent l’appel d’un point de terminaison REST ou l’exécution d’un notebook sur les données ingérées.
Azure Functions est un service de calcul serverless qui peut héberger des charges de travail pilotées par les événements avec des processus de courte durée.
Stockage Blob est la solution de stockage d’objets pour les fichiers bruts dans ce scénario. Stockage Blob prend en charge les bibliothèques pour plusieurs langages, comme .NET, Node.js et Python. Les applications peuvent accéder aux fichiers sur Stockage Blob via HTTP/HTTPS. Stockage Blob a des niveaux d’accès chaud, froid et archive pour prendre en charge l’optimisation des coûts de stockage de grandes quantités de données.
Data Lake Storage est un ensemble de fonctionnalités basées sur Stockage Blob Azure pour l’analytique Big Data. Data Lake Storage conserve le rapport coût-efficacité de Stockage Blob, et offre des fonctionnalités comme la sécurité au niveau des fichiers et la sémantique du système de fichiers avec un espace de noms hiérarchique.
Azure AI Intelligence documentaire, qui fait partie d'Azure Applied AI Services, a des fonctionnalités d'analyse de documents intégrées pour extraire du texte imprimé et manuscrit, des tableaux et des paires clé-valeur. Document Intelligence possède des modèles prédéfinis pour extraire des données à partir de factures, de documents, de reçus, de cartes d’identité et de cartes de visite. Document Intelligence peut aussi entraîner et déployer des modèles personnalisés en utilisant un modèle de formulaire personnalisé ou un modèle de document neuronal personnalisé.
Le Studio Intelligence documentaire fournit une interface utilisateur pour explorer les fonctionnalités et les modèles d’Intelligence documentaire, ainsi que pour la création, l’étiquetage, l’entraînement et le déploiement de modèles personnalisés.
Azure Cognitive Service for Language regroupe les services de traitement en langage naturel d’Azure. La suite offre des options prédéfinies et personnalisables. Pour plus d’informations, consultez les fonctionnalités disponibles d’Azure AI Language.
Language Studio fournit une interface utilisateur permettant d’explorer et d’analyser les fonctionnalités de langage d’Azure AI Language. Language Studio fournit également des options pour la création, l’étiquetage, l’entraînement et le déploiement de modèles personnalisés.
Azure Machine Learning est une plateforme ouverte permettant de gérer le développement et le déploiement de modèles Machine Learning à grande échelle.
- Azure Machine Learning studio fournit des options d’étiquetage des données pour les images et le texte.
- Exportez des données étiquetées sous forme de jeux de données COCO ou Azure Machine Learning. Vous pouvez utiliser les jeux de données pour l’entraînement et le déploiement de modèles dans des notebooks Azure Machine Learning.
- Déployez des modèles sur AKS en tant que service web pour l’inférence en temps réel à grande échelle, ou en tant que points de terminaison managés pour l’inférence en temps réel et par lots.
Autres solutions
Vous pouvez ajouter d’autres workflows à ce scénario en fonction de cas d’usage spécifiques.
Si le document est au format image ou PDF, vous pouvez extraire les données en utilisant Vision par ordinateur Azure, l’API Read de Form Recognizer ou des bibliothèques open source.
Vous pouvez produire un résumé de documents et de conversations en utilisant le modèle prédéfini dans Azure AI Language.
Utilisez le code de prétraitement pour effectuer des étapes de traitement du texte, comme le nettoyage, la suppression des mots d’arrêt, la lemmatisation, la recherche de radical et le résumé du texte sur les données extraites, selon les exigences de traitement des documents. Vous pouvez exposer le code en tant qu’API REST pour l’automatisation. Effectuez ces étapes manuellement ou automatisez-les en les intégrant au processus d’ingestion de Logic Apps ou d’Azure Functions.
Azure AI studio est également une autre option pour le fine-tuning et le déploiement de modèles fondamentaux.
Détails du scénario
Le traitement de documents est un vaste domaine. Il peut être difficile de répondre à tous vos besoins de traitement de documents avec les modèles prédéfinis disponibles dans Azure AI Intelligence documentaire et Azure AI Language. Il peut être nécessaire de créer des modèles personnalisés pour automatiser le traitement des documents pour d’autres applications et domaines.
Les principales problématiques de la personnalisation des modèles sont les suivants :
- L’étiquetage ou le balisage des données texte avec des entités de paire clé-valeur pertinentes afin de classifier du texte pour l’extraction.
- Le déploiement de modèles de façon sécurisée à grande échelle pour faciliter l’intégration aux applications consommatrices.
Cas d’usage potentiels
Les cas d’usage suivants peuvent tirer parti des modèles personnalisés pour le traitement de documents :
- Créer des modèles personnalisés de reconnaissance d’entité nommée et de classification de texte basés sur des frameworks open source.
- Extraire des paires clé-valeur personnalisées des documents pour différents secteurs d’activité verticaux, comme l’assurance et la santé.
- Étiqueter et extraire des entités dépendant de domaines spécifiques au-delà des modèles de reconnaissance d’entité nommée prédéfinis pour des domaines comme la sécurité ou la finance.
- Créer des tableaux personnalisées à partir de documents.
- Extraire des signatures.
- Étiqueter et classifier des e-mails ou d’autres documents en fonction du contenu.
Considérations
Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.
Pour cet exemple de charge de travail, l’implémentation de chaque pilier dépend de la configuration et de l’utilisation optimales de chaque composant des services Azure.
Fiabilité
La fiabilité permet de s’assurer que votre application tient vos engagements auprès de vos clients. Pour plus d’informations, consultez la page Vue d’ensemble du pilier de fiabilité.
Disponibilité
Consultez les contrats SLA pour chaque composant des services Azure :
- Azure AI Intelligence documentaire : SLA pour Azure Applied AI Services.
- Azure AI Language : SLA pour Azure Cognitive Services.
- Azure Functions - Contrat SLA pour Azure Functions.
- Azure Kubernetes Service (AKS) : Contrat SLA pour Azure Kubernetes Service (AKS).
- Stockage Azure - Contrat SLA pour les comptes de stockage.
Pour connaître les options de configuration permettant de concevoir des applications à haute disponibilité avec des comptes de stockage Azure, consultez Utiliser la géoredondance pour concevoir des applications à haute disponibilité.
Résilience
Gérez les modes d’échec des services individuels comme Azure Functions et Stockage Azure pour garantir la résilience des services de calcul et des magasins de données dans ce scénario. Pour plus d’informations, consultez Liste de contrôle de la résilience pour des services Azure spécifiques.
Pour Intelligence documentaire, consultez Sauvegarder et récupérer vos modèles Form Recognizer.
Pour la classification de texte personnalisée avec Azure AI Language, sauvegardez et récupérez vos modèles de classification de texte personnalisés.
Pour la reconnaissance d’entité nommée personnalisée dans Azure AI Language, sauvegardez et récupérez vos modèles personnalisés de reconnaissance d’entité nommée.
Azure Machine Learning dépend des services qui le constituent, comme Stockage Blob, les services de calcul et Azure Kubernetes Service (AKS). Pour assurer la résilience d’Azure Machine Learning, configurez chacun de ces services pour qu’ils soient résilients. Pour plus d’informations, consultez Basculement de la continuité d’activité et reprise d’activité.
Sécurité
La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez Vue d’ensemble du pilier Sécurité.
Implémentez la protection des données, la gestion des identités et des accès, et les recommandations de sécurité réseau pour Stockage Blob, Cognitive Services pour Intelligence documentaire et Language Studio, et Azure Machine Learning.
Azure Functions peut accéder aux ressources dans un réseau virtuel Azure via l’intégration de réseau virtuel.
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.
Le coût total de l’implémentation de cette solution dépend des prix des services que vous choisissez.
Les principaux coûts de cette solution sont les suivants :
Le coût de calcul impliqué dans la formation et le déploiement des modèles Azure Machine Learning. Choisissez le type de nœud, la taille de cluster et le nombre de nœuds appropriés pour optimiser les coûts. Pour la formation, Azure Machine Learning fournit des options pour définir les nœuds minimums du cluster de calcul à zéro et définir le temps d’inactivité avant la réduction d’échelle. Pour plus d’informations, consultez Gérer et optimiser les coûts d’Azure Machine Learning.
Durée et activités d’orchestration des données. Pour Azure Data Factory, les frais pour les activités de copie sur le runtime d’intégration Azure sont basés sur le nombre d’unités d’intégration de données utilisées et la durée d’exécution. Les exécutions des activités d’orchestration ajoutées sont également facturées en fonction de leur nombre.
Les plans tarifaires Logic Apps dépendent des ressources que vous créez et que vous utilisez. Les articles suivants peuvent vous aider à choisir le bon plan pour des cas d’usage spécifiques :
Pour plus d’informations sur la tarification de composants spécifiques, consultez les ressources suivantes :
- Tarification de Document Intelligence d’Azure AI
- Tarification d’Azure Functions
- Tarification de Logic Apps
- Tarifs d’Azure Data Factory
- Tarifs Stockage Blob Azure
- Service Language - Tarifs
- Tarifs d’Azure Machine Learning
Utilisez la calculatrice de prix Azure pour ajouter vos choix de composants sélectionnés et estimer le coût global de la solution.
Efficacité des performances
L’efficacité des performances est la capacité de votre charge de travail à s’adapter à la demande des utilisateurs de façon efficace. Pour plus d’informations, consultez Vue d’ensemble du pilier d’efficacité des performances.
Extensibilité
Pour mettre à l’échelle Azure Functions automatiquement ou manuellement, choisissez le bon plan d’hébergement.
Intelligence documentaire prend en charge 15 requêtes simultanées par seconde par défaut. Pour demander un quota supérieur, créez un ticket de support Azure.
Pour les modèles personnalisés Azure Machine Learning hébergés en tant que services web sur AKS, le front-end
azureml-fe
est mis à l'échelle automatiquement selon les besoins. Ce composant route aussi les demandes d’inférence entrantes vers les services déployés.Pour les déploiements en tant que points de terminaison managés, prise en charge de la mise à l’échelle automatique via l’intégration à la fonctionnalité de mise à l’échelle automatique d’Azure Monitor.
Les limites du service d’API sur la reconnaissance d’entité nommée personnalisée et la classification de texte personnalisée pour l’inférence sont de 20 requêtes GET ou POST par minute.
Contributeurs
Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.
Auteur principal :
- Jyotsna Ravi | Ingénieur client senior
Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.
Étapes suivantes
- Bien démarrer : Form Recognizer Studio
- Utilisez les Modèles de Document Intelligence via les SDK ou l’API REST
- Démarrage rapide : prise en main de Language Studio
- Présentation de la Reconnaissance optique de caractères (OCR)
- Configuration d’Azure Functions avec un réseau virtuel