In dit artikel wordt een schaalbare en veilige oplossing beschreven voor het bouwen van een pijplijn voor geautomatiseerde documentverwerking. De oplossing maakt gebruik van AI Document Intelligence voor de gestructureerde extractie van gegevens. NLP-modellen (Natural Language Processing) en aangepaste modellen verrijken de gegevens.
Architectuur
Een Visio-bestand van deze architectuur downloaden.
Gegevensstroom
In de volgende secties worden de verschillende fasen van het proces voor gegevensextractie beschreven.
Gegevensopname en extractie
Documenten worden opgenomen via een browser aan de front-end van een webtoepassing. De documenten bevatten afbeeldingen of hebben een PDF-indeling. Azure-app Service fungeert als host voor een back-endtoepassing. De oplossing stuurt de documenten naar die toepassing via Azure-toepassing Gateway. Deze load balancer wordt uitgevoerd met Azure Web Application Firewall, waarmee de toepassing wordt beschermd tegen veelvoorkomende aanvallen en beveiligingsproblemen.
De back-endtoepassing plaatst een aanvraag op een Azure AI Document Intelligence REST API-eindpunt dat gebruikmaakt van een van de modellen op basis van de use-casevereiste.
Voorbeelden van vooraf getrainde documentanalysemodellen zijn:
- OCR-model lezen
- indelingsanalysemodel
-
algemeen document. U kunt ook indelingsanalysemodel gebruiken met optionele querytekenreeksparameter
features=keyValuePairs
ingeschakeld.)
vooraf getrainde scenariospecifieke modellen omvatten (niet beperkt tot):
De reactie van Azure AI Document Intelligence bevat onbewerkte OCR-gegevens (Optical Character Recognition) en gestructureerde extracties, afhankelijk van het model.
De App Service-back-endtoepassing gebruikt de betrouwbaarheidswaarden om de extractiekwaliteit te controleren. Als de kwaliteit lager is dan een opgegeven drempelwaarde, markeert de app de gegevens voor handmatige verificatie. Wanneer de extractiekwaliteit voldoet aan de vereisten, worden de gegevens in Azure Cosmos DB ingevoerd voor downstreamtoepassingsverbruik. De app kan ook de resultaten retourneren naar de front-endbrowser.
Andere bronnen bieden afbeeldingen, PDF-bestanden en andere documenten. Bronnen zijn e-mailbijlagen en FTP-servers (File Transfer Protocol). Hulpprogramma's zoals Azure Data Factory en AzCopy dragen deze bestanden over naar Azure Blob Storage. Azure Logic Apps biedt pijplijnen voor het automatisch extraheren van bijlagen uit e-mailberichten.
Wanneer een document Blob Storage invoert, wordt een Azure-functie geactiveerd. De functie doet het volgende:
- Hiermee plaatst u een aanvraag op het relevante vooraf gebouwde Eindpunt van Azure AI Document Intelligence.
- Het antwoord wordt ontvangen.
- Evalueert de extractiekwaliteit.
De geëxtraheerde gegevens voeren Azure Cosmos DB in voor downstreamtoepassingsverbruik.
De geëxtraheerde gegevens kunnen ook worden gepusht naar Azure AI-zoekopdracht voor indexering om RAG-toepassingen te bouwen.
Gegevensverrijking
De pijplijn die wordt gebruikt voor gegevensverrijking, is afhankelijk van de use-case.
Gegevensverrijking kan de volgende NLP-mogelijkheden bevatten:
- NER (Named Entity Recognition)
- De extractie van persoonlijke gegevens, sleuteltermen, statusinformatie en andere domeinafhankelijke entiteiten
De web-app om de gegevens te verrijken:
Haalt de geëxtraheerde gegevens op uit Azure Cosmos DB.
Hiermee worden aanvragen verzonden naar deze functies van de AI Language-API:
Ontvangt antwoorden van de AI Language-API.
Aangepaste modellen voeren fraudedetectie, risicoanalyse en andere soorten analyses uit op de gegevens:
- Azure Machine Learning-services trainen en implementeren de aangepaste modellen.
- De geëxtraheerde gegevens worden opgehaald uit Azure Cosmos DB.
- De modellen leiden inzichten af van de gegevens.
Deze mogelijkheden bestaan voor deductie:
- Realtime processen. De modellen kunnen worden geïmplementeerd op beheerde online-eindpunten of Kubernetes Online-eindpunten, waarbij het beheerde Kubernetes-cluster overal kan zijn, inclusief Azure Kubernetes Service (AKS).
- Batchdeductie kan worden uitgevoerd op batch-eindpunten of in virtuele Azure-machines.
Gegevensverrijking, zoals consolidatie van specifieke informatie, samenvatting en controle op juistheid, kan ook worden uitgevoerd door de geëxtraheerde gegevens door te geven aan het Azure OpenAI-eindpunt.
De verrijkte gegevens worden ingevoerd in Azure Cosmos DB.
Analyses en visualisaties
Toepassingen gebruiken de onbewerkte OCR, gestructureerde gegevens van Azure AI Document Intelligence-eindpunten en de verrijkte gegevens van NLP:
- Power BI geeft de gegevens weer en geeft er rapporten over.
- De gegevens werken als bron voor Azure AI Search.
- Andere toepassingen verbruiken de gegevens.
Onderdelen
App Service is een PaaS-aanbieding (Platform as a Service) in Azure. U kunt App Service gebruiken om webtoepassingen te hosten die u handmatig of automatisch kunt in- of uitschalen. De service ondersteunt verschillende talen en frameworks, zoals ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP en Python.
Application Gateway is een load balancer van laag 7 (toepassingslaag) die verkeer naar webtoepassingen beheert. U kunt Application Gateway uitvoeren met Azure Web Application Firewall om webtoepassingen te beschermen tegen veelvoorkomende aanvallen en beveiligingsproblemen.
Azure Functions is een serverloos rekenplatform dat u kunt gebruiken om toepassingen te bouwen. Met Functions kunt u triggers en bindingen gebruiken om te reageren op wijzigingen in Azure-services, zoals Blob Storage en Azure Cosmos DB. Functies kunnen geplande taken uitvoeren, gegevens in realtime verwerken en berichtenwachtrijen verwerken.
Azure AI Document Intelligence maakt deel uit van Azure AI-services. Azure AI Document Intelligence biedt een verzameling vooraf gebouwde eindpunten voor het extraheren van gegevens uit verschillende documenten en formulieren voor het bouwen van intelligente oplossingen voor documentverwerking in organisaties zonder dat u voor elk documenttype/elke oplossing zelf specifieke modellen hoeft te trainen en te bouwen. De service biedt ook aan om uw eigen aangepaste modellen te bouwen met minimale inspanning en het model te gebruiken via de bijbehorende model-id op schaal. Meerdere aangepaste modellen kunnen worden toegewezen aan één model-id door een samengestelde modelte maken. De invoervereisten variëren van model tot model. De uitvoerindeling is JSON.
Azure Storage is een cloudopslagoplossing die object-, blob-, bestands-, schijf-, wachtrij- en tabelopslag omvat.
Blob Storage is een service die deel uitmaakt van Azure Storage. Blob Storage biedt geoptimaliseerde cloudobjectopslag voor grote hoeveelheden ongestructureerde gegevens.
Azure Data Lake Storage is een schaalbare, veilige Data Lake voor high-performance analyseworkloads. De gegevens zijn doorgaans afkomstig van meerdere heterogene bronnen en kunnen gestructureerd, semigestructureerd of ongestructureerd zijn. Azure Data Lake Storage Gen2 combineert Azure Data Lake Storage Gen1-mogelijkheden met Blob Storage. Als een oplossing van de volgende generatie biedt Data Lake Storage Gen2 semantiek van het bestandssysteem, beveiliging op bestandsniveau en schaal. Maar het biedt ook de gelaagde opslag, hoge beschikbaarheid en mogelijkheden voor herstel na noodgevallen van Blob Storage.
Azure Cosmos DB is een volledig beheerde, zeer responsieve, schaalbare NoSQL-database. Azure Cosmos DB biedt beveiliging op bedrijfsniveau en biedt ondersteuning voor API's voor veel databases, talen en platforms. Voorbeelden hiervan zijn SQL, MongoDB, Gremlin, Table en Apache Cassandra. Serverloze, automatische schaalopties in Azure Cosmos DB beheren efficiënt de capaciteitsvereisten van toepassingen.
AI Language biedt veel NLP-services die u kunt gebruiken om tekst te begrijpen en te analyseren. Sommige van deze services kunnen worden aangepast, zoals aangepaste NER, aangepaste tekstclassificatie, begrip van gesprekstaal en antwoord op vragen.
Machine Learning is een open platform voor het beheren van de ontwikkeling en implementatie van machine learning-modellen op schaal. Machine Learning is geschikt voor vaardigheidsniveaus van verschillende gebruikers, zoals gegevenswetenschappers of bedrijfsanalisten. Het platform ondersteunt veelgebruikte open frameworks en biedt geautomatiseerde featurization en algoritmeselectie. U kunt modellen implementeren voor deductie met behulp van eindpunten waar u online-eindpunten kunt gebruiken voor realtime deductie en batcheindpunten om asynchrone of langdurige deductie uit te voeren. Als u een aangepast model bouwt door een basismodel te verfijnen vanuit modelcatalogus, kunt u dit model ook implementeren als serverloze API-eindpunten. U kunt modellen ook implementeren voor AKS- en Kubernetes-cluster met Azure Arc voor deductie.
AKS is een volledig beheerde Kubernetes-service waarmee u eenvoudig toepassingen in containers kunt implementeren en beheren. AKS biedt serverloze Kubernetes-technologie, een geïntegreerde CI/CD-ervaring (continue integratie en continue levering) en beveiliging en governance op bedrijfsniveau.
Power BI is een verzameling softwareservices en apps die analysegegevens weergeven.
Azure AI Search- is een cloudzoekservice die infrastructuur, API's en hulpprogramma's levert voor zoeken. U kunt Azure AI Search gebruiken om zoekervaringen te bouwen op privé-, heterogene inhoud in web-, mobiele en bedrijfstoepassingen.
Alternatieven
U kunt Document Intelligence Batch Analysis API gebruiken om de documenten bulksgewijs te verwerken.
U kunt multimodale Modellen van Azure OpenAI gebruiken om tekst uit afbeeldingen te extraheren.
U kunt Azure AI Content Understanding - gebruiken voor het opnemen van documenten, afbeeldingen, video's en audio in verschillende use cases.
U kunt Azure AI Foundry- gebruiken voor het bouwen, testen van & het implementeren van aangepaste modellen en het ontwikkelen, evalueren, implementeren en implementeren van & generatieve AI-toepassingen.
U kunt een andere Azure Compute Service kiezen in plaats van App Service om uw toepassing te hosten.
U kunt elke relationele database gebruiken voor permanente opslag van de geëxtraheerde gegevens, waaronder:
Scenariodetails
Het automatiseren van documentverwerking en gegevensextractie is een integrale taak in organisaties in alle brancheverticalen. AI is een van de bewezen oplossingen in dit proces, hoewel het bereiken van 100 procent nauwkeurigheid een verre realiteit is. Maar het gebruik van AI voor digitalisering in plaats van uitsluitend handmatige processen kan handmatige inspanning verminderen met maximaal 90 procent.
Optische tekenherkenning (OCR) kan inhoud extraheren uit afbeeldingen en PDF-bestanden, die deel uitmaken van de documenten die organisaties gebruiken. Dit proces maakt gebruik van trefwoorden zoeken en reguliere expressiekoppeling. Met deze mechanismen worden relevante gegevens uit volledige tekst geëxtraheerd en vervolgens gestructureerde uitvoer gemaakt. Deze aanpak heeft nadelen. Voor het reviseren van het proces na extractie om te voldoen aan gewijzigde documentindelingen, is veel onderhoud vereist.
Potentiële gebruikscases
Deze oplossing is ideaal voor de financiële sector. Het kan ook van toepassing zijn op de automobiel-, reis- en gastvrijheidsindustrie. De volgende taken kunnen profiteren van deze oplossing:
- Onkostendeclaratie goedkeuren
- Facturen, ontvangsten en facturen voor verzekeringsclaims en financiële controles verwerken
- Verwerkingsclaims met facturen, kwijtingsoverzichten en andere documenten
- Goedkeuringen voor werk (SoW) automatiseren
- Id-extractie automatiseren voor verificatiedoeleinden, zoals bij paspoorten of rijbewijs
- Het proces van het invoeren van visitekaartjesgegevens in bezoekersbeheersystemen automatiseren
- Aankooppatronen identificeren en financiële documenten dupliceren voor fraudedetectie
- Gestructureerde extractie van gegevens uit ongestructureerd document automatiseren in scenario's voor het ophalen van augmented generation
Overwegingen
Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.
Betrouwbaarheid
Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten hebt gedaan. Zie de controlelijst ontwerpbeoordeling voor betrouwbaarheid voor meer informatie.
Tolerantie
De tolerantie van de oplossing is afhankelijk van de foutmodi van afzonderlijke services, zoals App Service, Functions, Azure Cosmos DB, Storage en Application Gateway. Zie de controlelijst voor tolerantie voor specifieke Azure-services voor meer informatie.
U kunt Azure AI Document Intelligence tolerant maken. Mogelijkheden zijn onder andere het ontwerpen van een failover naar een andere regio en het splitsen van de workload in twee of meer regio's. Zie Een back-up maken van uw Azure AI Document Intelligence-modellen en deze herstellen voor meer informatie.
Machine Learning-services zijn afhankelijk van veel Azure-services. Om tolerantie te bieden, moet u elke service zo configureren dat deze tolerant is. Zie Failover voor bedrijfscontinuïteit en herstel na noodgevallen voor meer informatie.
Beschikbaarheid
De beschikbaarheid van de architectuur is afhankelijk van de Azure-services waaruit de oplossing bestaat:
Azure AI Document Intelligence maakt deel uit van Azure AI-services. Zie Sla (Service Level Agreement) voor Azure AI-services voor de beschikbaarheidsgarantie van deze service.
AI-taal maakt deel uit van Azure AI-services. Zie sla voor Azure AI-services voor de beschikbaarheidsgarantie voor deze services.
Azure Cosmos DB biedt hoge beschikbaarheid door vier replica's van gegevens binnen elke regio te onderhouden en door gegevens in verschillende regio's te repliceren. De exacte beschikbaarheidsgarantie is afhankelijk van of u repliceert binnen één regio of in meerdere regio's. Zie Hoge beschikbaarheid bereiken met Azure Cosmos DB voor meer informatie.
Blob Storage biedt redundantieopties waarmee hoge beschikbaarheid wordt gegarandeerd. U kunt een van deze methoden gebruiken om gegevens drie keer te repliceren in een primaire regio:
- Op één fysieke locatie voor lokaal redundante opslag (LRS).
- In drie beschikbaarheidszones die gebruikmaken van verschillende beschikbaarheidsparameters. Zie Duurzaamheid en beschikbaarheidsparameters voor meer informatie. Deze optie werkt het beste voor toepassingen waarvoor hoge beschikbaarheid is vereist.
Zie deze resources voor de beschikbaarheidsgaranties van andere Azure-services in de oplossing:
Beveiliging
Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie de controlelijst ontwerpbeoordeling voor beveiliging voor meer informatie.
Azure Web Application Firewall helpt uw toepassing te beschermen tegen veelvoorkomende beveiligingsproblemen. Deze Application Gateway-optie maakt gebruik van OWASP-regels (Open Worldwide Application Security Project) om aanvallen zoals scripting op meerdere sites, sessiekapingen en andere aanvallen te voorkomen.
Als u de Beveiliging van App Service wilt verbeteren, kunt u de volgende opties overwegen:
- App Service heeft toegang tot resources in Azure Virtual Network via integratie van virtuele netwerken.
- U kunt App Service gebruiken in een App Service-omgeving, die u implementeert in een toegewezen virtueel netwerk. Deze aanpak helpt bij het isoleren van de connectiviteit tussen App Service en andere resources in het virtuele netwerk.
Zie Beveiliging in Azure-app Service voor meer informatie.
Blob Storage en Azure Cosmos DB versleutelen data-at-rest. U kunt deze services beveiligen met behulp van service-eindpunten of privé-eindpunten.
Azure Functions ondersteunt integratie van virtuele netwerken. Met deze functionaliteit hebben functie-apps toegang tot resources in een virtueel netwerk. Zie Azure Functions-netwerkoptiesvoor meer informatie.
U kunt Azure AI Document Intelligence en AI Language configureren voor toegang vanuit specifieke virtuele netwerken of vanuit privé-eindpunten. Deze services versleutelen data-at-rest. U kunt abonnementssleutels, tokens of Microsoft Entra ID gebruiken om aanvragen voor deze services te verifiëren. Zie Aanvragen verifiëren voor Azure AI-services voor meer informatie.
Machine Learning biedt veel beveiligingsniveaus:
- Werkruimteverificatie biedt identiteits- en toegangsbeheer.
- U kunt autorisatie gebruiken om de toegang tot de werkruimte te beheren.
- Door werkruimtebronnen te beveiligen, kunt u de netwerkbeveiliging verbeteren.
- U kunt Tls (Transport Layer Security) gebruiken om webservices te beveiligen die u implementeert via Machine Learning.
- Als u gegevens wilt beveiligen, kunt u de toegangssleutels wijzigen voor Azure Storage-accounts die door Machine Learning worden gebruikt.
Kostenoptimalisatie
Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie de controlelijst ontwerpbeoordeling voor Kostenoptimalisatie voor meer informatie.
De kosten voor het implementeren van deze oplossing zijn afhankelijk van de onderdelen die u gebruikt en welke opties u voor elk onderdeel kiest.
Veel factoren kunnen van invloed zijn op de prijs van elk onderdeel:
- Het aantal documenten dat u verwerkt
- Het aantal gelijktijdige aanvragen dat uw toepassing ontvangt
- De grootte van de gegevens die u na verwerking opslaat
- Uw implementatieregio
Deze resources bieden informatie over prijsopties voor onderdelen:
- Prijzen voor AI Document Intelligence
- Prijzen van App Service
- Azure Functions-prijzen
- Prijzen voor Application Gateway
- Prijzen voor Azure Blob Storage
- Prijzen van Azure Cosmos DB
- Prijzen van de taalservice
- Prijzen voor Azure Machine Learning
- prijzen voor Azure OpenAI Service
Nadat u een prijscategorie voor elk onderdeel hebt gekozen, gebruikt u de Azure-prijscalculator om de kosten van de oplossing te schatten.
Prestatie-efficiëntie
Prestatie-efficiëntie is de mogelijkheid van uw workload om te schalen om te voldoen aan de eisen die gebruikers op een efficiënte manier stellen. Zie de controlelijst ontwerpbeoordeling voor prestatie-efficiëntie voor meer informatie.
App Service kan automatisch worden uitgeschaald en ingeschaald naarmate de belasting van de toepassing varieert. Zie Een instelling voor automatische schaalaanpassing maken voor Azure-resources op basis van prestatiegegevens of een planning voor meer informatie.
Azure Functions kan automatisch of handmatig worden geschaald. Het hostingabonnement dat u kiest, bepaalt het schaalgedrag van uw functie-apps. Zie Azure Functions-hostingopties voor meer informatie.
Standaard ondersteunt Azure AI Document Intelligence 15 gelijktijdige aanvragen per seconde. U kunt deze waarde verhogen door een Azure-ondersteuningsticket te maken met een aanvraag voor quotumverhoging.
Voor aangepaste modellen die u implementeert op online-eindpunten voor realtime deductie, kan automatisch schalen worden ingeschakeld via de functie voor automatisch schalen in Azure Monitor. Dit kan worden beheerd met behulp van Azure CLI, REST API, Python SDK, Azure Portal, enzovoort.
Voor batchdeductie worden modellen geïmplementeerd op batcheindpunten die worden uitgevoerd op Azure Machine Learning-rekenclusters (AML) of Kubernetes-clusters. In het geval van AML-rekenclusters worden automatisch schalen van de rekenkracht en het omlaag schalen van berekeningen naar nul ondersteund. Het minimum- en maximumaantal exemplaren wordt gedefinieerd tijdens het maken van het rekencluster, terwijl het aantal exemplaren dat voor batchdeductie wordt gebruikt, wordt gedefinieerd in de definitie van de batchimplementatie.
Voor AI-taal zijn gegevens- en frequentielimieten van toepassing. Raadpleeg deze hulpbronnen voor meer informatie:
Medewerkers
Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.
Hoofdauteur:
- Jyotsna Ravi | Principal Customer Engineer
- Dixit Arora | Senior klanttechnicus
Volgende stappen
- Wat is AI-documentinformatie?
- Azure AI Document Intelligence SDK's of REST API gebruiken
- Wat is AI-taal?
- Wat is Azure Machine Learning?
- Inleiding tot Azure Functions
- Azure Functions configureren met een virtueel netwerk
- Wat is Azure-toepassing Gateway?
- Wat is Azure Web Application Firewall op Azure-toepassing Gateway?
- Zelfstudie: Toegang krijgen tot on-premises SQL Server vanuit een beheerd virtueel data factory-netwerk met behulp van een privé-eindpunt
- Documentatie bij Azure Storage