Cet article décrit une architecture que vous pouvez utiliser pour traiter différents documents. L’architecture utilise la fonctionnalité Durable Functions d’Azure Functions pour implémenter des pipelines. Les pipelines traitent les documents via Azure AI Intelligence documentaire.
Architecture
Téléchargez un fichier Visio de cette architecture.
Workflow
Un utilisateur charge un fichier de documents dans une application web. Ce fichier contient plusieurs documents incorporés de différents types, tels que des fichiers PDF ou TIFF (Tag Image File Format) de plusieurs pages. Le fichier de documents est stocké dans le Stockage Blob Azure (1a). Pour lancer le traitement du pipeline, l’application web ajoute un message de commande à une file d’attente de stockage (1b).
Le message de commande déclenche l’orchestration de Durable Functions. Le message contient des métadonnées qui identifient l’emplacement Stockage Blob du fichier de documents à traiter. Chaque instance Durable Functions ne traite qu’un seul fichier de documents.
La fonction d’activité analyse appelle l’API Intelligence documentaire d’analyse de document qui transmet l’emplacement de stockage du fichier de documents à traiter. La fonction d’analyse lit et identifie chaque document dans le fichier de documents. Cette fonction retourne le nom, le type, les plages de pages et le contenu de chaque document incorporé à l’orchestration.
La fonction d’activité magasin de métadonnées enregistre les informations relatives au type de document, à l’emplacement et à la plage de pages de chaque document dans un magasin Azure Cosmos DB.
La fonction d’activité indexation crée un document de recherche dans Recherche Azure AI pour chaque document. Dans le document de recherche, cette fonction utilise les bibliothèques AI Search pour .NET pour inclure la totalité des résultats de la reconnaissance optique de caractères (OCR) et des informations sur le document. Un ID de corrélation est également ajouté au document de recherche afin que les résultats de la recherche puissent être mis en correspondance avec les métadonnées de document correspondantes d’Azure Cosmos DB.
Les utilisateurs peuvent rechercher des documents à partir du contenu et des métadonnées. Pour rechercher des enregistrements de document qui se trouvent dans Azure Cosmos DB, ils peuvent utiliser les ID de corrélation dans le jeu de résultats de recherche. Les enregistrements incluent des liens vers le fichier de documents d’origine dans Stockage Blob.
Composants
Durable Functions est une fonctionnalité d’Azure Functions qui vous permet d’écrire des fonctions avec état dans un environnement de calcul serverless. Dans cette architecture, un message dans une file d’attente de stockage déclenche une instance de Durable Functions, qui lance et orchestre le pipeline de traitement des documents.
Azure Cosmos DB est une base de données multimodèle et distribuée mondialement que vous pouvez utiliser dans vos solutions pour faire évoluer le débit et la capacité de stockage dans le nombre de régions géographiques de votre choix. Des contrats de niveau de service (SLA) complets garantissent le débit, la latence, la disponibilité et la cohérence. Cette architecture utilise Azure Cosmos DB comme magasin de métadonnées pour les informations de classification des documents.
Stockage Azure est un ensemble de services cloud hautement évolutifs et sécurisés pour les données, les applications et les charges de travail. Il inclut Stockage Blob, Azure Files, Stockage Table Azure et Stockage File d’attente Azure. Cette architecture utilise le Stockage Blob pour stocker les fichiers de documents que l’utilisateur charge et que le pipeline Durable Functions traite.
Le service Azure App Service fournit une infrastructure pour la génération, le déploiement et la mise à l’échelle d’applications web. La fonctionnalité Web Apps d’App Service est un outil HTTP que vous pouvez utiliser pour héberger des applications web, des API REST et des back-ends mobiles. Utilisez Web Apps pour développer en .NET, .NET Core, Java, Ruby, Node.js, PHP ou Python. Les applications peuvent facilement s’exécuter et être mises à l’échelle dans les environnements Windows et Linux. Dans cette architecture, les utilisateurs interagissent avec le système de traitement des documents via une application web hébergée par App Service.
AI Intelligence documentaire est un service que vous pouvez utiliser pour extraire des aperçus de vos documents, formulaires et images. Cette architecture utilise AI Intelligence documentaire pour analyser les fichiers de documents et extraire les documents incorporés, avec les informations de contenu et de métadonnées.
AI Search fournit une expérience de recherche avancée sur des contenus privés et hétérogènes dans des applications web, mobiles et d’entreprise. Cette architecture utilise la recherche IA pour indexer les informations de contenu et de métadonnées des documents extraites afin que les utilisateurs puissent rechercher et récupérer des documents.
Autres solutions
Pour faciliter la distribution mondiale, cette solution stocke les métadonnées dans Azure Cosmos DB. Azure SQL Database est une autre option de stockage persistant des métadonnées et des informations des documents.
Pour déclencher des instances Durable Functions, vous pouvez utiliser d’autres plateformes de messagerie, notamment Azure Service Bus.
Détails du scénario
Dans cette architecture, les pipelines identifient les documents dans un fichier de documents, les classifient par type et stockent les informations pour les utiliser dans un traitement ultérieur.
De nombreuses entreprises doivent gérer et traiter des documents qu’elles numérisent en masse et qui contiennent plusieurs types de documents différents, tels que des PDF ou des images TIFF de plusieurs pages. Ces documents peuvent provenir de l’extérieur de l’organisation, et l’entreprise réceptrice ne contrôle pas le format.
Compte tenu de ces contraintes, les organisations doivent créer leurs propres solutions d’analyse de documents, qui peuvent inclure une technologie personnalisée et des traitements manuels. Par exemple, une personne peut séparer manuellement des types de documents individuels et ajouter des qualificateurs de classification pour chaque document.
Beaucoup de ces solutions personnalisées sont basées sur le modèle de workflow de machine à états. Les solutions utilisent des systèmes de base de données pour la persistance de l’état du workflow, avec des services d’interrogation qui recherchent les états qu’ils doivent traiter. La maintenance et l’amélioration de ces solutions peuvent augmenter la complexité et l’effort.
Les organisations ont besoin de solutions fiables, évolutives et résilientes pour traiter et gérer l’identification et la classification des documents pour les types de documents qu’elles utilisent. Cette solution peut traiter des millions de documents chaque jour avec une observabilité complète sur la réussite ou l’échec du pipeline de traitement.
Cas d’usage potentiels
Vous pouvez utiliser cette solution pour :
Créer des rapports de titres. De nombreuses agences gouvernementales et municipalités gèrent des archives papier qui n’existent pas au format numérique. Une solution automatisée efficace peut générer un fichier qui contient tous les documents dont vous avez besoin pour répondre à une demande de documents.
Gérer les dossiers de maintenance. Vous pouvez avoir besoin de numériser et envoyer des dossiers papier, comme des dossiers d’entretien d’avions, de locomotives et de machines, à des organisations extérieures.
Traiter les permis. Les services de permis des villes et des départements utilisent des documents papier générés pour les rapports d’inspection des permis. Vous pouvez prendre une photo de plusieurs documents d’inspection, et identifier, classifier et rechercher automatiquement ces dossiers.
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.
Fiabilité
La fiabilité permet de s’assurer que votre application tient vos engagements auprès de vos clients. Pour en savoir plus, consultez Liste de contrôle de l'examen de la conception pour la fiabilité.
Une charge de travail fiable est à la fois résiliente et disponible. La résilience est la capacité du système à récupérer après des défaillances et à continuer de fonctionner. L’objectif de la résilience est que l’application retrouve un état entièrement fonctionnel suite à une défaillance. La disponibilité indique la possibilité pour vos utilisateurs d’accéder à votre charge de travail quand ils en ont besoin.
Pour plus d’informations sur la fiabilité des composants de solution, consultez les informations du contrat SLA pour les services Azure en ligne.
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 Liste de contrôle de la révision de la conception pour l'optimisation des coûts.
Les coûts les plus significatifs pour cette architecture sont liés au stockage des images dans le compte de stockage, au traitement d’images par Azure AI services, et aux exigences de capacités d’indexation dans le service Azure AI Search.
Pour optimiser les coûts :
Utilisez des stratégies de capacité de réserve et de cycle de vie pour dimensionner correctement les comptes de stockage.
Anticipez les déploiements régionaux et la planification de scale-up opérationnel dans AI Search.
Utilisez la tarification du niveau d’engagement pour AI Intelligence documentaire pour gérer les coûts prévisibles.
Utilisez la stratégie de paiement à l’utilisation pour votre architecture, et effectuez un scale-out selon les besoins au lieu d’investir au départ dans des ressources à grande échelle.
Pensez aux coûts d’opportunité dans votre architecture et pesez le pour et le contre d’une stratégie visant à être un précurseur ou plutôt un suiveur. Pour estimer le coût initial et les coûts opérationnels, utilisez la calculatrice de prix.
Établissez des budgets et des contrôles pour définir les limites de coût de votre solution. Pour configurer les alertes de prévision et de coût réel, utilisez les alertes budgétaires.
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 en savoir plus, consultez Liste de vérification de l'examen de la conception pour l'efficacité des performances
Cette solution peut faire apparaître des goulots d’étranglement des performances quand vous traitez des volumes de données élevés. Afin de garantir l’efficacité des performances de votre solution, veillez à bien comprendre et planifier les options de mise à l’échelle pour Azure Functions, la mise à l’échelle automatique de Azure AI services et le partitionnement Azure Cosmos DB .
Contributeurs
Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.
Auteur principal :
- Kevin Kraus | Spécialiste technique principal Azure
Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.
Étapes suivantes
Articles de présentation :
- Introduction à Azure Storage
- Présentation de Durable Functions
- Présentation d’Azure AI services
- Qu’est-ce que AI Document Intelligence ?
- Présentation de Azure AI Search
- Vue d'ensemble d'App Service
- Présentation d’Azure Cosmos DB
- Qu’est-ce qu’Azure Service Bus ?
Documentation du produit :
- Documentation Azure pour tous les produits
- Documentation de Durable Functions
- Documentation Azure AI services
- Documentation AI Search