Niestandardowe modele przetwarzania dokumentów na platformie Azure

Analiza dokumentów sztucznej inteligencji platformy Azure
Azure AI services
Azure Logic Apps
Azure Machine Learning Studio
Azure Storage

W tym artykule opisano rozwiązania platformy Azure do tworzenia, trenowania, wdrażania i używania niestandardowych modeli przetwarzania dokumentów. Te usługi platformy Azure oferują również funkcje interfejsu użytkownika służące do etykietowania lub tagowania na potrzeby przetwarzania tekstu.

Architektura

Diagram architektury przedstawiający kilka alternatyw dla niestandardowego procesu kompilowania i wdrażania modelu przetwarzania dokumentów.

Pobierz plik programu Visio z tą architekturą.

Przepływ danych

  1. Orkiestratory, takie jak Azure Logic Apps, Azure Data Factory lub Azure Functions, pozyskuje wiadomości i załączniki z serwerów poczty e-mail oraz pliki z serwerów FTP lub aplikacji internetowych.

    • Usługi Azure Functions i Logic Apps umożliwiają bezserwerowe obciążenia. Wybrana usługa zależy od preferencji dotyczących możliwości usług, takich jak programowanie, łączniki, zarządzanie i kontekst wykonywania. Aby uzyskać więcej informacji, zobacz Porównanie usług Azure Functions i Azure Logic Apps.

    • Rozważ użycie usługi Azure Data Factory do zbiorczego przenoszenia danych.

  2. Orkiestratorzy wysyłają pozyskane dane do usługi Azure Blob Storage lub Data Lake Storage, organizując dane w magazynach danych na podstawie cech, takich jak rozszerzenia plików lub klienci.

  3. Document Intelligence Studio, Language Studio lub Azure Machine Learning Studio etykieta i tagowanie danych tekstowych oraz tworzenie modeli niestandardowych. Te trzy usługi można użyć niezależnie lub w różnych kombinacjach, aby rozwiązać różne przypadki użycia.

    • Jeśli dokument wymaga wyodrębnienia par klucz-wartość lub utworzenia niestandardowej tabeli z formatu obrazu lub pliku PDF, użyj narzędzia Document Intelligence Studio, aby oznaczyć dane i wytrenować model niestandardowy. Podobnie, jeśli istnieje wymóg identyfikacji typu dokumentu przed wywołaniem odpowiedniego modelu wyodrębniania, użyj narzędzia Document Intelligent Studio, aby oznaczyć dokumenty etykietą.

    • W przypadku klasyfikacji dokumentów na podstawie zawartości lub wyodrębniania jednostek specyficznych dla domeny można wytrenować niestandardowy model klasyfikacji tekstu lub rozpoznawania jednostek nazwanych (NER) w programie Language Studio.

    • Usługa Machine Learning Studio ma funkcje etykietowania danych na potrzeby klasyfikacji tekstu lub wyodrębniania jednostek, których można używać z platformami typu open source, takimi jak PyTorch lub TensorFlow. Usługa Azure Machine Learning Studio udostępnia katalog modeli podstawowych. Te modele podstawowe mają możliwości dostrajania dla różnych zadań, takich jak klasyfikacja tekstu, odpowiadanie na pytania i podsumowywanie. Aby dostosować modele podstawowe, użyj interfejsu użytkownika lub kodu usługi Machine Learning Studio.

  4. Aby wdrożyć modele niestandardowe i użyć ich do wnioskowania:

Składniki

  • Usługa Logic Apps jest częścią usług Azure Integration Services. Usługa Logic Apps tworzy zautomatyzowane przepływy pracy, które integrują aplikacje, dane, usługi i systemy. Za pomocą łączników zarządzanych dla usług, takich jak Azure Storage i Microsoft 365, można wyzwalać przepływy pracy po odebraniu pliku na koncie magazynu lub wiadomości e-mail.

  • Data Factory to zarządzana usługa wyodrębniania, przekształcania, ładowania (ETL) do integracji i przekształcania danych. Usługa Data Factory może dodawać działania przekształcania do potoku, który obejmuje wywoływanie punktu końcowego REST lub uruchamianie notesu na pozyskanych danych.

  • Azure Functions to bezserwerowa usługa obliczeniowa, która może hostować obciążenia sterowane zdarzeniami z krótkotrwałymi procesami.

  • Usługa Blob Storage to rozwiązanie magazynu obiektów dla nieprzetworzonych plików w tym scenariuszu. Usługa Blob Storage obsługuje biblioteki dla wielu języków, takich jak .NET, Node.js i Python. Aplikacje mogą uzyskiwać dostęp do plików w usłudze Blob Storage za pośrednictwem protokołu HTTP/HTTPS. Usługa Blob Storage ma warstwy dostępu Gorąca, Chłodna i Archiwum, aby obsługiwać optymalizację kosztów przechowywania dużych ilości danych.

  • Usługa Data Lake Storage to zestaw funkcji opartych na usłudze Azure Blob Storage na potrzeby analizy danych big data. Usługa Data Lake Storage zachowuje opłacalność usługi Blob Storage i udostępnia funkcje, takie jak zabezpieczenia na poziomie plików i semantyka systemu plików z hierarchiczną przestrzenią nazw.

  • Analiza dokumentów jest częścią usług Azure AI. Funkcja analizy dokumentów ma wbudowane funkcje analizy dokumentów, których można użyć do wyodrębniania par tekstu drukowanego i odręcznego, tabel i par klucz-wartość. Analiza dokumentów zawiera wstępnie utworzone modele wyodrębniania danych z faktur, dokumentów, paragonów, kart identyfikacyjnych i wizytówek. Analiza dokumentów ma również niestandardowy model formularza szablonu i niestandardowy model dokumentów neuronowych , którego można użyć do trenowania i wdrażania modeli niestandardowych.

  • Narzędzie Document Intelligence Studio udostępnia interfejs użytkownika, za pomocą którego można eksplorować funkcje i modele analizy dokumentów oraz tworzyć, oznaczać, trenować i wdrażać modele niestandardowe.

  • Język sztucznej inteligencji platformy Azure konsoliduje usługi przetwarzania języka naturalnego platformy Azure. Pakiet oferuje wstępnie utworzone i dostosowywalne opcje. Aby uzyskać więcej informacji, zobacz funkcje dostępne w języku sztucznej inteligencji platformy Azure.

    Program Language Studio udostępnia interfejs użytkownika do eksplorowania i analizowania funkcji języka sztucznej inteligencji platformy Azure. Program Language Studio udostępnia również opcje tworzenia, tagowania, trenowania i wdrażania modeli niestandardowych.

  • Usługa Azure Machine Learning to otwarta platforma do zarządzania opracowywaniem i wdrażaniem modeli uczenia maszynowego na dużą skalę.

    • Usługa Azure Machine Learning Studio udostępnia opcje etykietowania danych dla obrazów i tekstu.
    • Eksportuj dane oznaczone etykietą COCO lub Zestawy danych usługi Azure Machine Learning. Zestawy danych można używać do trenowania i wdrażania modeli w notesach usługi Azure Machine Learning.
    • Wdrażanie modeli w usłudze AKS jako usługi internetowej na potrzeby wnioskowania w czasie rzeczywistym na dużą skalę lub jako zarządzanych punktów końcowych na potrzeby wnioskowania w czasie rzeczywistym i wsadowego.

Alternatywy

Do tego scenariusza można dodać więcej przepływów pracy na podstawie określonych przypadków użycia.

  • Jeśli dokument jest w formacie obrazu lub PDF, możesz wyodrębnić dane przy użyciu przetwarzania obrazów platformy Azure, interfejsu API odczytu analizy dokumentów lub bibliotek typu open source.

  • Podsumowanie dokumentów i konwersacji można wykonać przy użyciu wstępnie utworzonego modelu w języku AI platformy Azure.

  • Użyj wstępnego przetwarzania kodu, aby wykonać kroki przetwarzania tekstu. Te kroki obejmują czyszczenie, usuwanie wyrazów zatrzymania, lemmatyzacja, stemming i podsumowanie tekstu na wyodrębnionych danych zgodnie z wymaganiami dotyczącymi przetwarzania dokumentów. Kod można uwidocznić jako interfejsy API REST na potrzeby automatyzacji. Wykonaj te kroki ręcznie lub zautomatyzuj je, integrując je z procesem pozyskiwania usługi Logic Apps lub Azure Functions .

  • Za pomocą programu Azure AI Studio można dostroić i wdrożyć modele podstawowe.

Szczegóły scenariusza

Przetwarzanie dokumentów jest szerokim obszarem. Spełnienie wszystkich wymagań dotyczących przetwarzania dokumentów przy użyciu wstępnie utworzonych modeli dostępnych w usłudze Document Intelligence i Azure AI Language może być trudne. Może być konieczne utworzenie modeli niestandardowych w celu zautomatyzowania przetwarzania dokumentów dla różnych aplikacji i domen.

Główne wyzwania związane z dostosowywaniem modelu obejmują:

  • Etykietowanie lub oznaczanie danych tekstowych odpowiednimi jednostkami par klucz-wartość w celu sklasyfikowania tekstu na potrzeby wyodrębniania.
  • Bezpieczne wdrażanie modeli na dużą skalę w celu łatwej integracji z korzystaniem z aplikacji.

Potencjalne przypadki użycia

Następujące przypadki użycia mogą korzystać z modeli niestandardowych do przetwarzania dokumentów:

  • Tworzenie niestandardowych modeli klasyfikacji NER i tekstu na podstawie struktur typu open source.
  • Wyodrębnij niestandardowe wartości kluczy z dokumentów dla różnych branż, takich jak ubezpieczenie i opieka zdrowotna.
  • Oznaczanie i wyodrębnianie określonych jednostek zależnych od domeny poza wstępnie utworzonymi modelami NER dla domen, takich jak zabezpieczenia lub finanse.
  • Tworzenie tabel niestandardowych na podstawie dokumentów.
  • Wyodrębnianie podpisów.
  • Etykieta i klasyfikowanie wiadomości e-mail lub innych dokumentów na podstawie zawartości.

Kwestie wymagające rozważenia

Te zagadnienia implementują filary struktury Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.

W tym przykładowym obciążeniu wdrożenie każdego filaru zależy od optymalnego konfigurowania i używania poszczególnych składników usługi platformy Azure.

Niezawodność

Niezawodność zapewnia, że aplikacja może spełnić zobowiązania podjęte przez klientów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca niezawodności.

Dostępność

  • Zobacz umowy dotyczące poziomu usług (SLA) dla każdego składnika architektury w umowach sla (Service Level Agreement) dla usług online.

  • Aby uzyskać opcje konfiguracji do projektowania aplikacji o wysokiej dostępności przy użyciu kont usługi Azure Storage, zobacz Projektowanie aplikacji o wysokiej dostępności przy użyciu nadmiarowości geograficznej.

Odporność

Zabezpieczenia

Zabezpieczenia zapewniają ochronę przed celowymi atakami i nadużyciami cennych danych i systemów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca zabezpieczeń.

Optymalizacja kosztów

Optymalizacja kosztów dotyczy sposobów zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca optymalizacji kosztów.

Całkowity koszt implementacji tego rozwiązania zależy od cen wybranej usługi.

Główne koszty tego rozwiązania to:

Aby uzyskać więcej informacji na temat cen określonych składników, zobacz następujące zasoby:

Skorzystaj z kalkulatora cen platformy Azure, aby dodać wybrane opcje składnika i oszacować całkowity koszt rozwiązania.

Efektywność wydajności

Wydajność to możliwość skalowania obciążenia w celu spełnienia wymagań, które są na nim nakładane przez użytkowników w wydajny sposób. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu pod kątem wydajności.

Skalowalność

  • Aby automatycznie lub ręcznie skalować usługę Azure Functions, wybierz odpowiedni plan hostingu.

  • Analiza dokumentów domyślnie obsługuje 15 równoczesnych żądań na sekundę. Aby zażądać zwiększonego limitu przydziału, utwórz bilet pomoc techniczna platformy Azure.

  • W przypadku modeli niestandardowych usługi Azure Machine Learning hostowanych jako usługi internetowe w usłudze AKS azureml-fe fronton automatycznie skaluje się zgodnie z potrzebami. Ten składnik kieruje również przychodzące żądania wnioskowania do wdrożonych usług.

  • W przypadku wdrożeń jako zarządzanych punktów końcowych obsługa skalowania automatycznego przez integrację z funkcją automatycznego skalowania usługi Azure Monitor.

  • Limity usługi interfejsu API dla niestandardowej klasyfikacji NER i niestandardowej klasyfikacji tekstu na potrzeby wnioskowania to 20 żądań GET lub POST na minutę.

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następującego współautora.

Główny autor:

Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.

Następne kroki