Tento článek popisuje škálovatelné a zabezpečené řešení pro vytvoření kanálu automatizovaného zpracování dokumentů. Řešení používá aI Document Intelligence k strukturované extrakci dat. Modely zpracování přirozeného jazyka (NLP) a vlastní modely obohacují data.
Architektura
Stáhněte si soubor aplikace Visio s touto architekturou.
Tok dat
Následující části popisují různé fáze procesu extrakce dat.
Příjem a extrakce dat
Dokumenty se ingestují přes prohlížeč na front-endu webové aplikace. Dokumenty obsahují obrázky nebo jsou ve formátu PDF. služba Aplikace Azure hostuje back-endovou aplikaci. Řešení přesměruje dokumenty do této aplikace prostřednictvím Aplikace Azure lication Gateway. Tento nástroj pro vyrovnávání zatížení běží se službou Azure Web Application Firewall, která pomáhá chránit aplikaci před běžnými útoky a ohroženími zabezpečení.
Back-endová aplikace publikuje požadavek do koncového bodu rozhraní REST API služby Azure AI Document Intelligence, který používá jeden z těchto modelů:
- Rozložení
- Faktura
- Paragon
- Průkaz totožnosti
- Obecný dokument
- Modely daňových dokumentů USA
- Model hypotéky v USA
Odpověď z Azure AI Document Intelligence obsahuje nezpracovaná data o optickém rozpoznávání znaků (OCR) a strukturované extrakce.
Back-endová aplikace služby App Service používá hodnoty spolehlivosti ke kontrole kvality extrakce. Pokud je kvalita nižší než zadaná prahová hodnota, aplikace označí data k ručnímu ověření. Když kvalita extrakce splňuje požadavky, data zadávají službu Azure Cosmos DB pro příjem podřízených aplikací. Aplikace může také vrátit výsledky do front-endového prohlížeče.
Jiné zdroje poskytují obrázky, soubory PDF a další dokumenty. Mezi zdroje patří e-mailové přílohy a servery FTP (File Transfer Protocol). Nástroje, jako je Azure Data Factory a AzCopy , přenesou tyto soubory do služby Azure Blob Storage. Azure Logic Apps nabízí kanály pro automatické extrahování příloh z e-mailů.
Když dokument přejde do služby Blob Storage, aktivuje se funkce Azure. Funkce:
- Publikuje žádost do příslušného předdefinovaného koncového bodu Azure AI Document Intelligence.
- Přijme odpověď.
- Vyhodnotí kvalitu extrakce.
Extrahovaná data zadávají službu Azure Cosmos DB.
Rozšiřování dat
Kanál, který se používá pro rozšiřování dat, závisí na případu použití.
Rozšiřování dat může zahrnovat následující funkce NLP:
- Rozpoznávání pojmenovaných entit (NER)
- Extrakce osobních údajů, klíčových frází, informací o stavu a dalších entit závislých na doméně
Pokud chcete data rozšířit, webová aplikace:
Načte extrahovaná data ze služby Azure Cosmos DB.
Publikuje požadavky na tyto funkce rozhraní API pro jazyk AI:
- NER
- Osobní údaje
- Extrakce klíčových frází
- Analýza textu pro stav
- Vlastní NER, který je ve verzi Preview
- Analýza mínění
- Stanovisko dolování
Přijímá odpovědi z rozhraní API pro jazyk AI.
Vlastní modely provádějí detekci podvodů, analýzu rizik a další typy analýzy dat:
- Služby Azure Machine Learning trénuje a nasazuje vlastní modely.
- Extrahovaná data se načítají ze služby Azure Cosmos DB.
- Modely odvozují přehledy z dat.
Existují tyto možnosti odvozování:
- Procesy v reálném čase. Modely je možné nasadit do spravovaných online koncových bodů nebo online koncových bodů Kubernetes, kde spravovaný cluster Kubernetes může být kdekoli včetně služby Azure Kubernetes Service (AKS).
- Dávkové odvozování je možné provádět v dávkových koncových bodech nebo ve službě Azure Virtual Machines.
Rozšířená data zadávají službu Azure Cosmos DB.
Analýzy a vizualizace
Aplikace používají nezpracovaná OCR, strukturovaná data z koncových bodů Azure AI Document Intelligence a rozšířená data z NLP:
- Power BI zobrazí data a zobrazí sestavy.
- Data fungují jako zdroj pro Azure Cognitive Search.
- Ostatní aplikace data spotřebovávají.
Komponenty
App Service je nabídka paaS (platforma jako služba) v Azure. Službu App Service můžete použít k hostování webových aplikací, které můžete škálovat nebo škálovat ručně nebo automaticky. Služba podporuje různé jazyky a architektury, jako jsou ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP a Python.
Application Gateway je nástroj pro vyrovnávání zatížení vrstvy 7 (aplikační vrstva), který spravuje provoz do webových aplikací. Službu Application Gateway můžete spustit pomocí služby Azure Web Application Firewall , která pomáhá chránit webové aplikace před běžným zneužitím a ohrožením zabezpečení.
Azure Functions je bezserverová výpočetní platforma, kterou můžete použít k vytváření aplikací. Pomocí služby Functions můžete pomocí triggerů a vazeb reagovat na změny ve službách Azure, jako je Blob Storage a Azure Cosmos DB. Funkce můžou spouštět naplánované úlohy, zpracovávat data v reálném čase a zpracovávat fronty zasílání zpráv.
Azure AI Document Intelligence je součástí služeb Azure AI. Azure AI Document Intelligence nabízí kolekci předem připravených koncových bodů pro extrakci dat z faktur, dokumentů, účtenek, id karet a vizitek. Tato služba mapuje jednotlivé části extrahovaných dat na pole jako pár klíč-hodnota. Azure AI Document Intelligence také extrahuje obsah a strukturu tabulky. Výstupní formát je JSON.
Azure Storage je řešení cloudového úložiště, které zahrnuje objekt, objekt blob, soubor, disk, frontu a úložiště tabulek.
Blob Storage je služba, která je součástí Služby Azure Storage. Blob Storage nabízí optimalizované cloudové úložiště objektů pro velké objemy nestrukturovaných dat.
Azure Data Lake Storage je škálovatelná a zabezpečená data lake pro vysoce výkonné analytické úlohy. Data obvykle pocházejí z více heterogenních zdrojů a mohou být strukturovaná, částečně strukturovaná nebo nestrukturovaná. Azure Data Lake Storage Gen2 kombinuje funkce Azure Data Lake Storage Gen1 se službou Blob Storage. Jako řešení nové generace poskytuje Data Lake Storage Gen2 sémantiku systému souborů, zabezpečení na úrovni souborů a škálování. Nabízí ale také vrstvené úložiště, vysokou dostupnost a možnosti zotavení po havárii služby Blob Storage.
Azure Cosmos DB je plně spravovaná, vysoce responzivní a škálovatelná databáze NoSQL. Azure Cosmos DB nabízí zabezpečení na podnikové úrovni a podporuje rozhraní API pro mnoho databází, jazyků a platforem. Mezi příklady patří SQL, MongoDB, Gremlin, Table a Apache Cassandra. Bezserverové možnosti automatického škálování ve službě Azure Cosmos DB efektivně spravují požadavky na kapacitu aplikací.
Jazyk AI nabízí mnoho služeb NLP, které můžete použít k pochopení a analýze textu. Některé z těchto služeb jsou přizpůsobitelné, například vlastní NER, vlastní klasifikace textu, porozumění konverzačnímu jazyku a odpovídání na otázky.
Machine Learning je otevřená platforma pro správu vývoje a nasazení modelů strojového učení ve velkém měřítku. Machine Learning se stará o dovednosti různých uživatelů, jako jsou datoví vědci nebo obchodní analytici. Platforma podporuje běžně používané otevřené architektury a nabízí automatizovanou funkcionalizaci a výběr algoritmu. Modely můžete nasadit do různých cílů. Mezi příklady patří AKS, Azure Container Instances jako webová služba pro odvozování ve velkém měřítku a virtuální počítač Azure pro dávkové vyhodnocování. Spravované koncové body ve službě Machine Learning abstrahují požadovanou infrastrukturu pro odvozování modelů v reálném čase nebo dávkovém modelu.
AKS je plně spravovaná služba Kubernetes, která usnadňuje nasazování a správu kontejnerizovaných aplikací. AKS nabízí bezserverovou technologii Kubernetes, integrované prostředí kontinuální integrace a průběžného doručování (CI/CD) a zabezpečení a zásady správného řízení na podnikové úrovni.
Power BI je kolekce softwarových služeb a aplikací, které zobrazují analytické informace.
Azure Cognitive Search je cloudová vyhledávací služba, která poskytuje infrastrukturu, rozhraní API a nástroje pro vyhledávání. Azure Cognitive Search můžete použít k vytváření vyhledávacích prostředí nad soukromým, heterogenním obsahem ve webových, mobilních a podnikových aplikacích.
Alternativy
K hostování aplikace můžete použít Azure Virtual Machines místo služby App Service.
K trvalému ukládání extrahovaných dat můžete použít libovolnou relační databázi, včetně:
Podrobnosti scénáře
Automatizace zpracování dokumentů a extrakce dat je nedílnou úlohou v organizacích napříč všemi svislými odvětvími. AI je jedním z osvědčených řešení v tomto procesu, i když dosažení 100% přesnosti je vzdálená realita. Použití umělé inteligence pro digitalizaci místo čistě ručních procesů ale může snížit ruční úsilí až o 90 %.
Optické rozpoznávání znaků (OCR) může extrahovat obsah z obrázků a souborů PDF, které tvoří většinu dokumentů, které organizace používají. Tento proces používá klíčové hledání slov a porovnávání regulárních výrazů. Tyto mechanismy extrahují relevantní data z úplného textu a pak vytvoří strukturovaný výstup. Tento přístup má nevýhody. Revize procesu následné extrakce tak, aby splňovala měnící se formáty dokumentů, vyžaduje rozsáhlé úsilí o údržbu.
Potenciální případy použití
Toto řešení je ideální pro finanční odvětví. Může se také vztahovat na automobilový průmysl, cestování a pohostinství. Z tohoto řešení můžou těžit následující úlohy:
- Schvalování vyúčtování výdajů
- Zpracování faktur, účtenek a faktur za pojistné nároky a finanční audity
- Zpracování žádostí, které zahrnují faktury, souhrny udělení absolutoria a další dokumenty
- Automatizace schvalování pracovních výkazů (SoW)
- Automatizace extrakce ID pro účely ověřování, stejně jako u pasů nebo řidičských licencí
- Automatizace procesu zadávání dat vizitek do systémů pro správu návštěvníků
- Identifikace vzorů nákupů a duplicitních finančních dokumentů pro odhalování podvodů
Důležité informace
Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.
Spolehlivost
Spolehlivost zajišťuje, že vaše aplikace může splňovat závazky, které uděláte pro vaše zákazníky. Další informace najdete v kontrolním seznamu pro kontrolu návrhu pro spolehlivost.
Odolnost
Odolnost řešení závisí na režimech selhání jednotlivých služeb, jako je App Service, Functions, Azure Cosmos DB, Storage a Application Gateway. Další informace najdete v kontrolním seznamu odolnosti pro konkrétní služby Azure.
Díky funkci Document Intelligence v Azure AI můžete být odolní. Mezi možnosti patří návrh, který převezme služby při selhání do jiné oblasti, a rozdělení úlohy do dvou nebo více oblastí. Další informace najdete v tématu Zálohování a obnovení modelů Azure AI Document Intelligence.
Služby Machine Learning závisí na mnoha službách Azure. Pokud chcete zajistit odolnost, musíte nakonfigurovat každou službu tak, aby byla odolná. Další informace najdete v tématu Převzetí služeb při selhání pro provozní kontinuitu a zotavení po havárii.
Dostupnost
Dostupnost architektury závisí na službách Azure, které tvoří řešení:
Azure AI Document Intelligence je součástí služeb Azure AI. Záruku dostupnosti této služby najdete v tématu Smlouva o úrovni služeb (SLA) pro služby Azure AI.
Jazyk AI je součástí služeb Azure AI. Záruku dostupnosti pro tyto služby najdete ve sla pro služby Azure AI.
Azure Cosmos DB poskytuje vysokou dostupnost udržováním čtyř replik dat v jednotlivých oblastech a replikací dat napříč oblastmi. Přesná záruka dostupnosti závisí na tom, jestli replikujete v rámci jedné oblasti nebo napříč několika oblastmi. Další informace najdete v tématu Dosažení vysoké dostupnosti se službou Azure Cosmos DB.
Blob Storage nabízí možnosti redundance, které pomáhají zajistit vysokou dostupnost. K trojnásobné replikaci dat v primární oblasti můžete použít některý z těchto přístupů:
- V jednom fyzickém umístění pro místně redundantní úložiště (LRS).
- Ve třech zónách dostupnosti, které používají různé parametry dostupnosti. Další informace naleznete v tématu Stálost a parametry dostupnosti. Tato možnost je nejvhodnější pro aplikace, které vyžadují vysokou dostupnost.
Záruky dostupnosti jiných služeb Azure v řešení najdete v těchto prostředcích:
Zabezpečení
Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace najdete v kontrolním seznamu pro kontrolu návrhu zabezpečení.
Azure Web Application Firewall pomáhá chránit vaši aplikaci před běžnými ohroženími zabezpečení. Tato možnost služby Application Gateway používá pravidla OWASP (Open Worldwide Application Security Project) k prevenci útoků, jako jsou skriptování mezi weby, napadení relací a další zneužití.
Pokud chcete zlepšit zabezpečení služby App Service, zvažte tyto možnosti:
- Služba App Service má přístup k prostředkům ve službě Azure Virtual Network prostřednictvím integrace virtuální sítě.
- Službu App Service můžete použít ve službě App Service Environment, kterou nasadíte do vyhrazené virtuální sítě. Tento přístup pomáhá izolovat připojení mezi službou App Service a dalšími prostředky ve virtuální síti.
Další informace najdete v tématu Zabezpečení ve službě Aplikace Azure Service.
Blob Storage a Azure Cosmos DB šifrují neaktivní uložená data. Tyto služby můžete zabezpečit pomocí koncových bodů služby nebo privátních koncových bodů.
Azure Functions podporuje integraci virtuální sítě. Díky této funkci můžou aplikace funkcí přistupovat k prostředkům ve virtuální síti. Další informace najdete v tématu [Možnosti sítě Azure Functions][Možnosti sítě Azure Functions].
Azure AI Document Intelligence a jazyk AI můžete nakonfigurovat pro přístup z konkrétních virtuálních sítí nebo z privátních koncových bodů. Tyto služby šifrují neaktivní uložená data. K ověřování požadavků na tyto služby můžete použít klíče předplatného, tokeny nebo ID Microsoft Entra. Další informace najdete v tématu Ověřování požadavků na služby Azure AI.
Machine Learning nabízí mnoho úrovní zabezpečení:
- Ověřování pracovního prostoru poskytuje správu identit a přístupu.
- Autorizaci můžete použít ke správě přístupu k pracovnímu prostoru.
- Zabezpečením prostředků pracovního prostoru můžete zlepšit zabezpečení sítě.
- Protokol TLS (Transport Layer Security) můžete použít k zabezpečení webových služeb , které nasazujete prostřednictvím služby Machine Learning.
- Pokud chcete chránit data, můžete změnit přístupové klíče pro účty Azure Storage, které Machine Learning používá.
Optimalizace nákladů
Optimalizace nákladů se zabývá způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v kontrolním seznamu pro kontrolu návrhu pro optimalizaci nákladů.
Náklady na implementaci tohoto řešení závisí na tom, které komponenty používáte, a na tom, které možnosti pro každou komponentu zvolíte.
Cena každé komponenty může ovlivnit mnoho faktorů:
- Počet dokumentů, které zpracováváte
- Počet souběžných požadavků, které vaše aplikace obdrží
- Velikost uložených dat po zpracování
- Vaše oblast nasazení
Tyto prostředky poskytují informace o možnostech cen komponent:
- Ceny AI Document Intelligence
- Ceny App Service
- Ceny Azure Functions
- Ceny služby Application Gateway
- Ceny služby Azure Blob Storage
- Ceny Azure Cosmos DB
- Ceny jazykové služby
- Ceny služby Azure Machine Learning
Po rozhodnutí o cenové úrovni pro jednotlivé komponenty použijte cenovou kalkulačku Azure k odhadu nákladů na řešení.
Efektivita výkonu
Efektivita výkonu je schopnost vaší úlohy škálovat tak, aby splňovala požadavky, které na ni mají uživatelé efektivním způsobem. Další informace najdete v kontrolním seznamu pro kontrolu návrhu týkajícího se efektivity výkonu.
App Service se může automaticky škálovat na více instancí a s tím, jak se zatížení aplikace liší. Další informace najdete v tématu Vytvoření nastavení automatického škálování pro prostředky Azure na základě dat o výkonu nebo plánu.
Azure Functions se může škálovat automaticky nebo ručně. Plán hostování, který zvolíte, určuje chování škálování vašich aplikací funkcí. Další informace najdete v tématu Možnosti hostování služby Azure Functions.
Azure AI Document Intelligence ve výchozím nastavení podporuje 15 souběžných požadavků za sekundu. Tuto hodnotu můžete zvýšit vytvořením lístku podpory Azure s žádostí o navýšení kvóty.
U vlastních modelů, které hostujete jako webové služby v AKS, se azureml-fe automaticky škáluje podle potřeby. Tato front-endová komponenta směruje příchozí požadavky na odvození do nasazených služeb.
Pro dávkové odvozování vytvoří Machine Learning výpočetní cluster na vyžádání, který se automaticky škáluje. Další informace najdete v tématu Kurz: Vytvoření kanálu Služby Azure Machine Learning pro dávkové vyhodnocování. Machine Learning používá ParellelRunStep třídu ke spuštění úloh odvozování paralelně.
V případě jazyka AI platí omezení rychlosti a dat. Další informace najdete v těchto zdrojích:
Přispěvatelé
Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.
Hlavní autor:
- Jyotsna Ravi | Hlavní zákaznický inženýr
- Dixit Arora | Vedoucí zákaznický inženýr
Další kroky
- Co je AI Document Intelligence?
- Použití sad SDK Document Intelligence azure nebo rozhraní REST API
- Co je jazyk AI?
- Co je Azure Machine Learning?
- Seznámení s Azure Functions
- Konfigurace služby Azure Functions s virtuální sítí
- Co je Aplikace Azure lication Gateway?
- Co je Azure Web Application Firewall ve službě Aplikace Azure lication Gateway?
- Kurz: Přístup k místnímu SQL Serveru z virtuální sítě spravované službou Data Factory pomocí privátního koncového bodu
- Dokumentace ke službě Azure Storage