Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel werden Azure-Lösungen zu Erstellung, Training, Bereitstellung und Verwendung benutzerdefinierter Dokumentverarbeitungsmodelle beschrieben. Diese Azure-Dienste bieten auch Funktionen der Benutzeroberfläche zum Bezeichnen oder Markieren von Text während der Verarbeitung.
Aufbau
Laden Sie eine Visio-Datei dieser Architektur herunter.
Datenfluss
Der folgende Datenfluss entspricht dem vorherigen Diagramm:
Orchestratoren wie Azure Logic Apps, Azure Data Factory oder Azure Functions nehmen Nachrichten und Anlagen von E-Mail-Servern und Dateien von Dateiübertragungsprotokollservern oder Webanwendungen ein.
Azure Functions und Azure Logic Apps ermöglichen serverlose Workloads. Der von Ihnen ausgewählte Dienst hängt von Ihrer Vorliebe für Dienstfunktionen wie Entwicklung, Connectors, Verwaltung und Betriebskontext ab. Weitere Informationen finden Sie unter Vergleichen von Azure-Funktionen und Azure-Logik-Apps.
Erwägen Sie die Verwendung von Azure Data Factory, um Daten in Massen zu verschieben.
Die Orchestratoren senden aufgenommene Daten an Azure Blob Storage oder Azure Data Lake Storage. Sie organisieren die Daten in diesen Stores basierend auf Merkmalen wie Dateierweiterungen oder Kundendetails.
Sie können die folgenden Azure-Dienste entweder unabhängig oder in Kombination für Schulungsdokumente und das Erstellen von benutzerdefinierten Modellen verwenden, um verschiedene Anwendungsfälle zu behandeln.
Document Intelligence Studio: Wenn Das Dokument erfordert, dass Sie Schlüsselwertpaare extrahieren oder eine benutzerdefinierte Tabelle aus einem Bild oder EINER PDF-Datei erstellen, verwenden Sie Document Intelligence Studio, um die Daten zu markieren und das benutzerdefinierte Modell zu trainieren. Wenn es eine Anforderung gibt, den Dokumenttyp zu identifizieren, der als Dokumentklassifizierung bezeichnet wird, bevor Sie das richtige Extraktionsmodell aufrufen, verwenden Sie Document Intelligent Studio, um die Dokumente zu bezeichnen und die Modelle zu erstellen.
Language Studio: Für die Dokumentklassifizierung basierend auf Inhalten oder für die domänenspezifische Entitätsextraktion können Sie eine benutzerdefinierte Textklassifizierung oder ein NER-Modell (Named Entity Recognition) in Language Studio trainieren.
Azure Machine Learning Studio: Verwenden Sie Machine Learning Studio, das Python SDK, Azure CLI oder die REST-API, um Daten für die Textklassifizierung oder Entitätsextraktion zu bezeichnen, die mit Open-Source-Frameworks wie PyTorch oder TensorFlow verwendet werden sollen. Machine Learning Studio bietet einen Modellkatalog von Foundation-Modellen. Diese Foundation-Modelle verfügen über Feinabstimmungsmöglichkeiten für verschiedene Aufgaben wie Textklassifizierung, Fragebeantwortung und Zusammenfassung. Verwenden Sie die Machine Learning Studio-Benutzeroberfläche oder den Code, um Foundation-Modelle zu optimieren.
Azure OpenAI in Foundry-Modellen: Verwenden Sie das Microsoft Foundry-Portal, das Python SDK oder die REST-API, um Azure OpenAI-Modelle in Ihren eigenen Daten oder Ihrer Domäne für verschiedene Aufgaben wie Textzusammenfassung und Fragebeantwortung zu optimieren.
So stellen Sie die benutzerdefinierten Modelle bereit und verwenden sie für die Ableitung:
Azure Document Intelligence in Foundry Tools verfügt über eine integrierte Modellbereitstellung. Die Ableitung mit den benutzerdefinierten Modellen erfolgt mithilfe von SDKs oder Dokumentmodellen DER REST-API. Die während der Modellerstellung angegebene Modell-ID oder der Modellname ist in der Anforderungs-URL für die Dokumentanalyse enthalten. Dokumentintelligenz erfordert keine weiteren Bereitstellungsschritte.
Language Studio bietet eine Option zum Bereitstellen von benutzerdefinierten Sprachmodellen. Rufen Sie die URL für die REST-Endpunktvorhersage ab, indem Sie das Modell für die Bereitstellung auswählen. Sie können Modelle mithilfe des REST-Endpunkts oder der Azure SDK-Clientbibliotheken ableiten.
Machine Learning stellt benutzerdefinierte Modelle online oder batchweise an verwaltete Machine Learning-Endpunkte bereit. Sie können auch das Machine Learning SDK verwenden, um azure Kubernetes Service (AKS) als Webdienst bereitzustellen. Fein abgestimmte Foundation-Modelle können aus dem Modellkatalog über verwaltetes Computing oder eine serverlose API bereitgestellt werden. Modelle, die über verwaltete Compute bereitgestellt werden, können mithilfe von verwalteten Endpunkten abgeleiten werden, die Onlineendpunkte für die Inferencierung in Echtzeit und Batchendpunkte für die Batch-Ableitung umfassen.
Foundry bietet mehrere Optionen zum Bereitstellen fein abgestimmter Azure OpenAI-Modelle. Sie können diese Modelle mithilfe des Python SDK oder der REST-API bereitstellen. Sie können auch fein abgestimmte Foundation-Modelle von Anbietern wie Meta oder Llama als serverlose APIs oder mithilfe der verwalteten Compute bereitstellen.
Komponenten
Azure Logic Apps ist Teil von Azure Integration Services. Logik-Apps erstellen automatisierte Workflows, die Apps, Daten, Dienste und Systeme integrieren. In dieser Architektur koordiniert Logic Apps die Aufnahme von Dokumenten und Daten aus verschiedenen Quellen und löst nachgelagerte Prozesse für die Dokumentverarbeitung aus. Sie können verwaltete Connectors für Dienste wie Azure Storage und Microsoft 365 verwenden, um Workflows auszulösen, wenn eine Datei im Speicherkonto eingeht oder eine E-Mail empfangen wird.
Azure Data Factory ist ein verwalteter Datenintegrationsdienst zum Orchestrieren und Automatisieren von Datenbewegungen und -transformationen. In dieser Architektur fügt Azure Data Factory Transformationsaktivitäten wie das Aufrufen eines REST-Endpunkts oder das Ausführen eines Notizbuchs für die aufgenommenen Daten der Pipeline hinzu.
Azure Functions ist ein serverloser Computedienst, der ereignisgesteuerte Workloads hosten kann, die über kurzlebige Prozesse verfügen. In dieser Architektur ermöglichen es die Funktionen Workloads, eingehende Dokumente zu verarbeiten und das Auslösen von Modellverarbeitung-Pipelines.
Blob Storage ist eine Objektspeicherlösung zum Speichern unstrukturierter Daten. Blob Storage unterstützt Bibliotheken für mehrere Sprachen, z. B. .NET, Node.jsund Python. Anwendungen können über HTTP oder HTTPS auf Dateien auf Blob Storage zugreifen. Blob Storage verfügt über heiße, kühle und Archivzugriffsstufen, zur Kostenoptimierung beim Speichern großer Datenmengen zu unterstützen. In dieser Architektur ist dieses Konto die Lösung für Rohdateien, die ein Hot-Tier verwenden.
Data Lake Storage ist ein skalierbares, cloudbasiertes Repository zum Speichern und Organisieren großer Mengen unstrukturierter Daten. In dieser Architektur organisiert und verwaltet Data Lake Storage große Mengen erfasster Daten, um Analyse-, Bezeichnungs- und Machine Learning-Workflows zu unterstützen.
Document Intelligence ist eine Komponente von Foundry Tools. In dieser Architektur bietet es integrierte Dokumentanalysefunktionen zum Extrahieren von gedruckten und handschriftlichen Text, Tabellen und Schlüsselwertpaaren. Document Intelligence verfügt über vorgefertigte Modelle zum Extrahieren von Daten aus Rechnungen, Dokumenten, Quittungen, ID-Karten und Visitenkarten. Document Intelligence verfügt auch über ein benutzerdefiniertes Vorlagenformularmodell und ein benutzerdefiniertes neurales Dokumentmodell, mit dem Sie benutzerdefinierte Modelle trainieren und bereitstellen können.
Document Intelligence Studio bietet eine Schnittstelle zum Erkunden von Dokumentintelligenzfeatures und -modellen. Sie können die Schnittstelle verwenden, um Daten zu beschriften und benutzerdefinierte Dokumentverarbeitungsmodelle zu erstellen.
Azure Language in Foundry Tools konsolidiert die Azure Natural Language Processing (NLP)-Dienste. Es bietet vorgefertigte und anpassbare Optionen und Sprachverständnisfunktionen. Verwenden Sie sie, um Dokumente zu klassifizieren, benannte Entitäten zu erkennen und andere NLP-Aufgaben auszuführen.
Language Studio ist eine webbasierte Benutzeroberfläche in Sprache, die Sie zum Erstellen, Trainieren, Verwalten und Bereitstellen von Sprachmodellen verwenden können. In dieser Architektur unterstützt sie Tagging, Schulung und Bereitstellung von benutzerdefinierten Sprachmodellen für Aufgaben wie Klassifizierung und Entitätsextraktion in der Dokumentverarbeitungspipeline. Die automatische Bezeichnung unterstützt die benutzerdefinierte Textklassifizierung und kann Dokumente automatisch in verschiedene Klassen oder Kategorien beschriften. Das Studio bietet außerdem Optionen zum Anzeigen der Modellleistung, einschließlich F1-Bewertung, Genauigkeit und Rückruf.
Azure Machine Learning ist eine verwaltete Machine Learning-Plattform für die Modellentwicklung und -bereitstellung im großen Maßstab. In dieser Architektur werden Daten beschriftet, benutzerdefinierte Modelle (einschließlich mit Open-Source-Frameworks) trainiert und die Modelle für Rückschlussaufgaben bereitgestellt.
Machine Learning Studio bietet Optionen für Datenbezeichnungen für Bilder und Text. Es unterstützt Modellschulungsworkflows in dieser Architektur.
Exportieren Sie bezeichnete Daten als COCO - oder Machine Learning-Datasets. Sie können diese Datasets verwenden, um Modelle in Machine Learning-Notizbüchern zu trainieren und bereitzustellen.
Azure OpenAI bietet leistungsstarke Sprachmodelle und multimodale Modelle als REST-APIs, mit denen Sie verschiedene Aufgaben ausführen können. In dieser Architektur behandeln Azure OpenAI-Modelle erweiterte Sprachaufgaben wie Feinabstimmungsmodelle , um die Leistung von Daten zu verbessern, die während der ursprünglichen Schulung des Basismodells fehlen oder unterrepräsentiert sind. Sie können auch Foundation-Modelle von mehreren Anbietern verwenden, um diese Aufgaben auszuführen.
Alternatives
Sie können diesem Szenario basierend auf bestimmten Anwendungsfällen weitere Workflows hinzufügen.
Wenn das Dokument ein Bild oder eine PDF-Datei ist, können Sie die Daten mithilfe der optischen Azure-Zeichenerkennung, der Dokumentintelligenz-Lese-API oder open-Source-Bibliotheken extrahieren.
Sie können das vorgefertigte Modell in der Sprachverarbeitung für Dokument- und Unterhaltungszusammenfassungen verwenden.
Verwenden Sie Vorverarbeitungscode, um Textverarbeitungsschritte auszuführen. Die Schritte umfassen Reinigung, Entfernung von Stoppwörtern, Lemmatisierung, Stemming und Textzusammenfassung der extrahierten Daten entsprechend den Anforderungen an die Dokumentenverarbeitung. Sie können den Code als REST-APIs für die Automatisierung verfügbar machen. Führen Sie diese Schritte manuell aus, oder automatisieren Sie diese Schritte, indem Sie den Aufnahmeprozess von Azure Logic Apps oder Azure Functions integrieren.
Sie können das Foundry-Portal verwenden, um Foundationmodelle zu optimieren und bereitzustellen und generative KI-Anwendungen zu erstellen.
Foundry bietet zwei Bereitstellungsoptionen für Modelle als Plattformhosting an, serverlose Bereitstellung und verwaltete Bereitstellung. Bestimmte Modelle und Regionen unterstützen die Bereitstellung über serverlose API, die Modelle als Dienst (MaaS) bereitstellt.
Machine Learning und Foundry haben gemeinsame Funktionen, daher bewerten Sie beide Plattformen und wählen Sie die beste für Ihr Szenario aus.
Sie können Azure Content Understanding in Foundry Tools verwenden, um eine benutzerdefinierte Analyse zu erstellen, indem Sie ein Feldschema zum Extrahieren strukturierter Daten aus dem Dokument definieren.
Szenariodetails
Die Dokumentverarbeitung deckt eine breite Palette von Aufgaben ab. Es kann schwierig sein, alle Anforderungen an die Dokumentverarbeitung zu erfüllen, indem sie die vordefinierten Modelle verwenden, die in Der Sprach- und Dokumentintelligenz verfügbar sind. Möglicherweise müssen Sie benutzerdefinierte Modelle erstellen, um die Dokumentverarbeitung für verschiedene Anwendungen und Domänen zu automatisieren.
Zu den großen Herausforderungen bei der Modellanpassung gehören:
Beschriften oder Kategorisieren von Textdaten mit relevanten Schlüssel-Wert-Paarentitäten zum Klassifizieren von Text für die Extraktion.
Verwalten der Schulungsinfrastruktur, z. B. Compute und Speicher, und deren Integrationen.
Bereitstellen von Modellen in großem Umfang für Anwendungen, die darauf zugreifen sollen.
Mögliche Anwendungsfälle
Die folgenden Anwendungsfälle können benutzerdefinierte Modelle für die Dokumentverarbeitung nutzen:
Erstellen Sie benutzerdefinierte NER- und Textklassifizierungsmodelle basierend auf Open-Source-Frameworks.
Extrahieren Sie benutzerdefinierte Schlüsselwerte aus Dokumenten für verschiedene Branchensparten wie Versicherung und Gesundheitsversorgung.
Markieren und extrahieren Sie bestimmte domänenabhängige Entitäten über die vordefinierten NER-Modelle für Domänen wie Sicherheit oder Finanzen hinaus.
Erstellen sie benutzerdefinierte Tabellen aus Dokumenten.
Extrahieren von Signaturen.
Kennzeichnen und Klassifizieren von E-Mails oder anderen Dokumenten basierend auf Inhalten.
Fassen Sie Dokumente zusammen, oder erstellen Sie benutzerdefinierte Frage- und Antwortmodelle basierend auf Ihren Daten.
Überlegungen
Diese Überlegungen bilden die Säulen des Azure Well-Architected Framework, einer Reihe von Leitprinzipien, die Sie zur Verbesserung der Qualität eines Workloads verwenden können. Weitere Informationen finden Sie unter Well-Architected Framework.
Für diesen Beispielworkload hängt die Implementierung der einzelnen Säulen davon ab, die einzelnen Komponenten mit Azure-Diensten optimal zu konfigurieren und zu verwenden.
Zuverlässigkeit
Zuverlässigkeit trägt dazu bei, dass Ihre Anwendung die Verpflichtungen erfüllen kann, die Sie für Ihre Kunden vornehmen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Zuverlässigkeit.
Verfügbarkeit
Weitere Informationen zu den Vereinbarungen auf Serviceebene für jede Architekturkomponente finden Sie unter Lizenzierungsdokumente.
Weitere Informationen zu Konfigurationsoptionen zum Entwerfen von Hochverfügbarkeitsanwendungen mit Speicherkonten finden Sie unter Verwenden von Georedundanz, um hoch verfügbare Anwendungen zu entwerfen.
Resiliency
Beheben Sie Fehlermodi einzelner Dienste wie Funktionen und Speicher, um die Resilienz der Computedienste und Datenspeicher in diesem Szenario sicherzustellen. Weitere Informationen finden Sie in den Zuverlässigkeitsleitfäden nach Dienst.
Sichern und wiederherstellen Sie Ihre Document Intelligence-Modelle.
Sichern und wiederherstellen Sie Ihre benutzerdefinierten Textklassifizierungsmodelle und NER-Modelle in Sprache.
Machine Learning hängt von Bestandteildiensten wie Blob Storage, Rechendiensten und AKS ab. Um Zuverlässigkeit für maschinelles Lernen bereitzustellen, konfigurieren Sie jeden dieser Dienste so, dass sie zuverlässig sind. Weitere Informationen zum Design für die Wiederherstellung finden Sie unter Failover für Geschäftskontinuität und Notfallwiederherstellung (BCDR).
Bei Azure OpenAI können Sie die kontinuierliche Verfügbarkeit sicherstellen, indem Sie zwei oder mehr Azure OpenAI-Ressourcen in verschiedenen Regionen bereitstellen. Dieser Ansatz ermöglicht ein Failover zu einer anderen Region, wenn ein Problem vorliegt. Weitere Informationen finden Sie unter BCDR mit Azure OpenAI.
Sicherheit
Sicherheit bietet Sicherheitsmaßnahmen gegen bewusste Angriffe und den Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Sicherheit.
Implementieren sie Datenschutz-, Identitäts- und Zugriffsverwaltung sowie Netzwerksicherheitsempfehlungen für Blob Storage, Foundry Tools für Document Intelligence und Language Studio, Machine Learning und Azure OpenAI.
Kostenoptimierung
Die Kostenoptimierung konzentriert sich auf Möglichkeiten, unnötige Ausgaben zu reduzieren und die betriebliche Effizienz zu verbessern. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Kostenoptimierung.
Die Gesamtkosten für die Implementierung dieser Lösung hängen von den Preisen der von Ihnen gewählten Dienste ab.
Die wichtigsten Kosten für diese Lösung sind:
Die Berechnungskosten zum Trainieren und Bereitstellen von Machine Learning-Modellen.
Um Kosten zu optimieren, wählen Sie den richtigen Knotentyp, die Clustergröße und die Anzahl der Knoten aus. Machine Learning bietet Optionen für Schulungen, z. B. das Festlegen der Mindestanzahl von Computeclusterknoten auf Null und das Definieren der Leerlaufzeit vor der Skalierung. Weitere Informationen finden Sie unter Verwalten und Optimieren von Machine Learning-Kosten.
Dauer und Aktivitäten der Daten-Orchestrierung. Bei Azure Data Factory basieren die Gebühren für Kopieraktivitäten auf der Azure-Integrationslaufzeit auf der Anzahl der verwendeten Datenintegrationseinheiten und der Zeit, die zum Abschließen der Aktivitäten gedauert hat. Hinzugefügte Orchestrierungsaktivitätsläufe werden basierend auf ihrer Anzahl ebenfalls berechnet.
Azure Logic Apps-Preispläne hängen von den Ressourcen ab, die Sie erstellen und verwenden. In den folgenden Artikeln können Sie den richtigen Plan für bestimmte Anwendungsfälle auswählen:
Weitere Informationen zum Preis für bestimmte Komponenten finden Sie in den folgenden Ressourcen:
- Preise für Dokumentintelligenz
- Preisgestaltung für Funktionen
- Preise für Azure Logic Apps
- Azure Data Factory-Preise
- Blob Storage-Preise
- Preise für Die Sprache in Foundry Tools
- Preise für maschinelles Lernen
- Azure OpenAI-Preise
Verwenden Sie den Azure-Preisrechner , um die von Ihnen ausgewählten Komponentenoptionen hinzuzufügen und die Gesamtkosten der Lösung zu schätzen.
Leistungseffizienz
Die Leistungseffizienz bezieht sich auf die Fähigkeit Ihrer Arbeitslast, die Anforderungen der Benutzer effizient zu erfüllen. Weitere Informationen finden Sie unter Erstellen einer Checkliste zur Überprüfung der Leistungseffizienz.
Skalierbarkeit
Um Funktionen automatisch oder manuell zu skalieren, wählen Sie den richtigen Hostingplan aus.
Standardmäßig unterstützt Document Intelligence 15 gleichzeitige Anforderungen pro Sekunde. Um dieses Kontingent zu erhöhen, erstellen Sie ein Azure-Supportticket.
Für benutzerdefinierte Machine Learning-Modelle, die als Webdienste auf AKS gehostet werden, wird die azureml-fe-Front-End-Komponente bei Bedarf automatisch skaliert. Diese Komponente leitet auch eingehende Ableitungsanforderungen an bereitgestellte Dienste weiter.
Unterstützen Sie die automatische Skalierung für Bereitstellungen als verwaltete Endpunkte, indem Sie die Azure Monitor-Funktion für automatische Skalierung integrieren. Weitere Informationen finden Sie unter Endpunkte für die Ableitung in der Produktion.
Die API-Dienstgrenzwerte für benutzerdefinierte NER und benutzerdefinierte Textklassifizierung für die Ableitung sind 20 GET- oder POST-Anforderungen pro Minute.
Beitragende
Microsoft verwaltet diesen Artikel. Die folgenden Mitwirkenden haben diesen Artikel geschrieben.
Hauptautoren:
- Dixit Arora | Leitender Ingenieur
- Jyotsna Ravi | Principal Engineer
Um nicht-öffentliche LinkedIn-Profile anzuzeigen, melden Sie sich bei LinkedIn an.
Nächste Schritte
- Erste Schritte mit benutzerdefinierten Projekten in Document Intelligence Studio
- Verwenden von Dokumentintelligenzmodellen
- Was ist Language?
- Was ist optische Zeichenerkennung?
- Konfigurieren von Funktionen mit einem virtuellen Netzwerk