Delen via


Documentclassificatie automatiseren in Azure

Azure Functions
Azure OpenAI Service
Azure AI-services
Azure AI Search
Azure AI documentanalyse

In dit artikel wordt een architectuur beschreven die u kunt gebruiken om verschillende documenten te verwerken. De architectuur maakt gebruik van de durable functions-functie van Azure Functions om pijplijnen te implementeren. De pijplijnen verwerken documenten via Azure AI Document Intelligence voor documentsplitsing, NER -herkenning (named entity recognition) en classificatie. Documentinhoud en metagegevens worden gebruikt voor het ophalen van augmented generation (RAG)-gebaseerde verwerking van natuurlijke taal (NLP).

Architectuur

Diagram met een architectuur voor het identificeren, classificeren en doorzoeken van documenten.

Een Visio-bestand van deze architectuur downloaden.

Werkproces

  1. Een gebruiker uploadt een documentbestand naar een web-app. Het bestand bevat meerdere ingesloten documenten van verschillende typen, zoals PDF- of TIFF-bestanden (Tag Image File Format) met meerdere pagina's. Het documentbestand wordt opgeslagen in Azure Blob Storage (1a). Om pijplijnverwerking te starten, voegt de web-app een opdrachtbericht toe aan een Azure Service Bus-wachtrij (1b).

  2. Het opdrachtbericht activeert de indeling van durable functions. Het bericht bevat metagegevens die de blobopslaglocatie van het documentbestand identificeren dat moet worden verwerkt. Elk exemplaar van durable functions verwerkt slechts één documentbestand.

  3. Met de analyseactiviteitsfunctie wordt de Document-API voor Document intelligence analyseren aangeroepen, die de opslaglocatie van het documentbestand doorgeeft dat moet worden verwerkt. De analysefunctie leest en identificeert elk document in het documentbestand. Deze functie retourneert de naam, het type, de paginabereiken en de inhoud van elk ingesloten document naar de indeling.

  4. Met de activiteitsfunctie metagegevensarchief worden de documenttype-, locatie- en paginabereikgegevens voor elk document in een Azure Cosmos DB-archief opgeslagen.

  5. De het insluiten van activiteitsfunctie maakt gebruik van Semantische kernel om elk document te segmenteren en insluitingen voor elk segment te maken. Insluitingen en bijbehorende inhoud worden verzonden naar Azure AI Search en opgeslagen in een vectorindex. Er wordt ook een correlatie-id toegevoegd aan het zoekdocument, zodat de zoekresultaten kunnen worden vergeleken met de bijbehorende documentmetagegevens van Azure Cosmos DB.

  6. Semantische kernel haalt insluitingen op uit de AI Search Vector Store voor NLP.

  7. Gebruikers kunnen chatten met hun gegevens via NLP. Dit gesprek wordt mogelijk gemaakt door geaarde gegevens die zijn opgehaald uit het vectorarchief. Als u documentrecords wilt opzoeken die zich in Azure Cosmos DB bevinden, gebruiken gebruikers correlatie-id's die zijn opgenomen in de zoekresultatenset. De records bevatten koppelingen naar het oorspronkelijke documentbestand in Blob Storage.

Onderdelen

  • Durable Functions is een functie van Azure Functions die u kunt gebruiken om stateful functies te schrijven in een serverloze rekenomgeving. In deze architectuur activeert een bericht in een Service Bus-wachtrij een durable functions-exemplaar. Met dit exemplaar wordt vervolgens de pijplijn voor documentverwerking gestart en ingedeeld.

  • Azure Cosmos DB is een wereldwijd gedistribueerde database met meerdere modellen die u in uw oplossingen kunt gebruiken om de doorvoer en opslagcapaciteit in een willekeurig aantal geografische regio's te schalen. Uitgebreide SLA's (Service Level Agreements) garanderen doorvoer, latentie, beschikbaarheid en consistentie. Deze architectuur maakt gebruik van Azure Cosmos DB als het metagegevensarchief voor de documentclassificatiegegevens.

  • Azure Storage is een set zeer schaalbare en veilige cloudservices voor gegevens, apps en workloads. Het omvat Blob Storage, Azure Files, Azure Table Storage en Azure Queue Storage. Deze architectuur maakt gebruik van Blob Storage om de documentbestanden op te slaan die de gebruiker uploadt en die de durable functions-pijplijn verwerkt.

  • Service Bus is een volledig beheerde enterprise-berichtenbroker met berichtenwachtrijen en onderwerpen over publiceren/abonneren. Deze architectuur maakt gebruik van Service Bus om durable functions-exemplaren te activeren.

  • Azure-app Service biedt een framework voor het bouwen, implementeren en schalen van web-apps. De functie Web Apps van App Service is een http-hulpprogramma dat u kunt gebruiken om webtoepassingen, REST API's en mobiele back-ends te hosten. Gebruik Web Apps om te ontwikkelen in .NET, .NET Core, Java, Ruby, Node.js, PHP of Python. Toepassingen kunnen eenvoudig worden uitgevoerd en geschaald in Windows- en Linux-omgevingen. In deze architectuur communiceren gebruikers met het documentverwerkingssysteem via een door App Service gehoste web-app.

  • Document Intelligence is een service die u kunt gebruiken om inzichten te extraheren uit uw documenten, formulieren en afbeeldingen. Deze architectuur maakt gebruik van Document Intelligence om de documentbestanden te analyseren en de ingesloten documenten samen met inhouds- en metagegevensinformatie te extraheren.

  • AI Search biedt een uitgebreide zoekervaring voor privé-, diverse inhoud in web-, mobiele en bedrijfstoepassingen. Deze architectuur maakt gebruik van AI Search Vector Storage om insluitingen van de geëxtraheerde documentinhoud en metagegevensgegevens te indexeren, zodat gebruikers documenten kunnen zoeken en ophalen met BEHULP van NLP.

  • Semantic Kernel is een framework dat u kunt gebruiken om grote taalmodellen (LLM's) te integreren in uw toepassingen. Deze architectuur maakt gebruik van Semantische kernel om insluitingen te maken voor de documentinhoud en metagegevensgegevens, die zijn opgeslagen in AI Search.

  • Azure OpenAI Service biedt toegang tot de krachtige modellen van OpenAI. Deze architectuur maakt gebruik van Azure OpenAI om gebruikers een natuurlijke taalinterface te bieden voor interactie met het documentverwerkingssysteem.

Alternatieven

  • Om wereldwijde distributie mogelijk te maken, slaat deze oplossing metagegevens op in Azure Cosmos DB. Azure SQL Database is een andere optie voor permanente opslag voor documentmetagegevens en -informatie.

  • Als u durable functions-exemplaren wilt activeren, kunt u andere berichtenplatforms gebruiken, waaronder Azure Event Grid-.

  • Semantische kernel is een van de verschillende opties voor het maken van insluitingen. U kunt ook Azure Machine Learning- of Azure AI-services gebruiken om insluitingen te maken.

  • Als u een interface voor natuurlijke taal voor gebruikers wilt bieden, kunt u andere taalmodellen gebruiken in Azure AI Foundry. Het platform ondersteunt verschillende modellen van verschillende providers, waaronder Mistral, Meta, Cohere en Hugging Face.

Scenariodetails

In deze architectuur identificeren de pijplijnen de documenten in een documentbestand, classificeren ze op type en slaan ze op die moeten worden gebruikt in de volgende verwerking.

Veel bedrijven moeten documenten beheren en verwerken die ze bulksgewijs scannen en die verschillende documenttypen bevatten, zoals PDF-bestanden of TIFF-afbeeldingen met meerdere pagina's. Deze documenten kunnen afkomstig zijn van buiten de organisatie en het ontvangende bedrijf heeft geen controle over de indeling.

Vanwege deze beperkingen moeten organisaties hun eigen oplossingen voor documentparsering bouwen die aangepaste technologie en handmatige processen kunnen bevatten. Iemand kan bijvoorbeeld handmatig afzonderlijke documenttypen scheiden en classificatiekwalificaties toevoegen voor elk document.

Veel van deze aangepaste oplossingen zijn gebaseerd op het werkstroompatroon van de statusmachine. De oplossingen maken gebruik van databasesystemen om de werkstroomstatus te behouden en pollingservices te gebruiken die controleren op de statussen die ze moeten verwerken. Het onderhouden en verbeteren van deze oplossingen kan de complexiteit en inspanning verhogen.

Organisaties hebben betrouwbare, schaalbare en flexibele oplossingen nodig voor het verwerken en beheren van documentidentificatie en -classificatie voor de documenttypen van hun organisatie. Deze oplossing kan elke dag miljoenen documenten verwerken met volledige waarneembaarheid in het succes of falen van de verwerkingspijplijn.

NLP stelt gebruikers in staat om op gesprekswijze met het systeem te communiceren. Gebruikers kunnen vragen stellen over de documenten en antwoorden ontvangen op basis van de inhoud van de documenten.

Potentiële gebruikscases

U kunt deze oplossing gebruiken voor het volgende:

  • Rapporttitels. Veel overheidsinstanties en gemeenten beheren papieren records die geen digitaal formulier hebben. Een effectieve geautomatiseerde oplossing kan een bestand genereren dat alle documenten bevat die u nodig hebt om aan een documentaanvraag te voldoen.

  • Onderhoudsrecords beheren. Mogelijk moet u papieren records, zoals vliegtuigen, locomotief en onderhoudsrecords voor machines, scannen en verzenden naar externe organisaties.

  • Procesvergunningen. Steden en provincies die afdelingen toestaan, onderhouden papieren documenten die ze genereren voor het rapporteren van vergunningsinspecties. U kunt een foto maken van verschillende inspectiedocumenten en deze records automatisch identificeren, classificeren en doorzoeken.

  • Planogrammen analyseren. Detailhandels- en consumentengoederenbedrijven beheren voorraad en naleving via een planogramanalyse voor winkels. U kunt een foto maken van een winkelplank en labelinformatie extraheren uit verschillende producten om de productgegevens automatisch te identificeren, classificeren en kwantificeren.

Overwegingen

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die u kunt gebruiken om de kwaliteit van een workload te verbeteren. Zie 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.

Een betrouwbare workload heeft zowel tolerantie als beschikbaarheid. Flexibiliteit is het vermogen van het systeem om te herstellen van fouten en te blijven functioneren. Het doel van flexibiliteit is ervoor te zorgen dat de toepassing na een storing weer volledig functioneert. Beschikbaarheidsmetingen of uw gebruikers toegang hebben tot uw workload wanneer dat nodig is.

Overweeg een generatieve API-gateway te gebruiken voor meerdere Azure OpenAI-implementaties of -exemplaren om de betrouwbaarheid en beschikbaarheid van Azure OpenAI-eindpunten te garanderen. De back-end load balancer ondersteunt round robin, gewogen en taakverdeling op basis van prioriteit. Met deze functie beschikt u over flexibiliteit om een Load Distribution-strategie voor Azure OpenAI te definiëren die voldoet aan uw specifieke vereisten.

Zie SLA-informatie voor onlineservices voor meer informatie over betrouwbaarheid in oplossingsonderdelen.

Kostenoptimalisatie

Kostenoptimalisatie richt zich op manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie de controlelijst ontwerpbeoordeling voor Kostenoptimalisatie voor meer informatie.

De belangrijkste kosten voor deze architectuur zijn het gebruik van het Azure OpenAI-modeltoken, document intelligence-afbeeldingsverwerking en indexcapaciteitsvereisten in AI Search.

Kosten optimaliseren:

Prestatie-efficiëntie

Prestatie-efficiëntie verwijst naar de mogelijkheid van uw workload om efficiënt te voldoen aan de behoeften van de gebruiker. Zie de controlelijst ontwerpbeoordeling voor prestatie-efficiëntie voor meer informatie.

Met deze oplossing kunnen prestatieknelpunten worden weergegeven wanneer u grote hoeveelheden gegevens verwerkt. Om de juiste prestatie-efficiëntie voor uw oplossing te garanderen, moet u ervoor zorgen dat u inzicht krijgt in en plant voor schaalopties voor Azure Functions, automatische schaalaanpassing van AI-services en Azure Cosmos DB-partitionering.

Azure OpenAI PTU's bieden gegarandeerde prestaties en beschikbaarheid, samen met wereldwijde implementaties. Deze implementaties maken gebruik van de globale Azure-infrastructuur om klantverkeer dynamisch te routeren naar het datacenter met de beste beschikbaarheid voor de deductieaanvragen van de klant.

Medewerkers

Microsoft onderhoudt dit artikel. De volgende inzenders hebben dit artikel geschreven.

Hoofdauteur:

Andere inzenders:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen

Inleidende artikelen:

Productdocumentatie: