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.
Dieser Inhalt gilt für:
Version 4.0 (GA) | Vorherige Versionen:
Version 3.1 (GA)
Version 3.0 (GA)
Version 2.1 (GA)
Das Layoutmodell für Azure Document Intelligence in Foundry Tools ist eine erweiterte Dokumentanalyse-API basierend auf maschinellem Lernen. Das Modell ist in der Dokument Intelligenz-Cloud verfügbar. Sie können damit Dokumente in verschiedenen Formaten erfassen und strukturierte Datendarstellungen der Dokumente zurückgeben. Das Modell kombiniert eine erweiterte Version der leistungsstarken Funktionen für die optische Zeichenerkennung (Optical Character Recognition, OCR) mit Deep Learning-Modellen, um Text, Tabellen, Auswahlmarkierungen und Dokumentstrukturen zu extrahieren.
Analyse des Dokumentstrukturlayouts
Bei der Analyse des Dokumentstrukturlayouts wird ein Dokument analysiert, um relevante Bereiche und die Beziehungen zwischen diesen Bereichen zu extrahieren. Ziel ist es, Text- und Strukturelemente aus der Seite zu extrahieren, um Modelle mit besserem Semantikverständnis zu erstellen. Es gibt zwei Arten von Rollen in einem Dokumentlayout:
- Geometrische Rollen: Text, Tabellen, Abbildungen und Auswahlmarkierungen sind Beispiele für geometrische Rollen.
- Logische Rollen: Titel, Kopfzeilen und Fußzeilen sind Beispiele für logische Rollen von Texten.
Die folgende Abbildung zeigt die typischen Komponenten eines Bildes auf einer Beispielseite.
Entwicklungsoptionen
Dokument Intelligenz Version 4.0: 2024-11-30 (GA) unterstützt die folgenden Tools, Anwendungen und Bibliotheken.
| Funktion | Ressourcen | Modell-ID |
|---|---|---|
| Layoutmodell | • Dokument Intelligenz Studio • REST-API • C# SDK • Python SDK • Java SDK • JavaScript SDK |
prebuilt-layout |
Unterstützte Sprachen
Eine vollständige Liste der unterstützten Sprachen finden Sie unter Sprachunterstützung: Dokumentanalysemodelle.
Unterstützte Dateitypen
Dokument Intelligenz Version 4.0: Das Layoutmodell von 2024-11-30 (GA) unterstützt die folgenden Dateiformate:
| Modell | Bild: JPEG/JPG, PNG, BMP, TIFF, HEIF |
Office: Word (DOCX), Excel (XLS), PowerPoint (PPTX), HTML |
|
|---|---|---|---|
| Gestaltung | ✔ | ✔ | ✔ |
Eingabeanforderungen
- Fotos und Scans: Die besten Ergebnisse erzielen Sie, wenn Sie pro Dokument ein deutliches Foto oder einen hochwertigen Scan bereitstellen.
- PDFs und TIFFs: Für PDFs und TIFFs können bis zu 2.000 Seiten verarbeitet werden. (Bei Abonnements im Free-Tarif werden nur die ersten beiden Seiten verarbeitet.)
- Kennwortsperren: Wenn Ihre PDFs kennwortgeschützt sind, müssen Sie die Sperre vor dem Senden entfernen.
- Dateigröße: Die Dateigröße für die Analyse von Dokumenten beträgt 500 MB für den kostenpflichtigen (S0) und 4 MB für den kostenlosen (F0) Tarif.
- Bildgröße: Die Bildgröße muss 50 × 50 Pixel bis 10.000 × 10.000 Pixel betragen.
- Texthöhe: Die Mindesthöhe des zu extrahierenden Texts beträgt 12 Pixel bei einem Bild mit 1024 x 768 Pixeln. Diese Abmessung entspricht etwa 8-Punkt-Text bei 150 Punkten pro Zoll.
- Benutzerdefiniertes Modelltraining: Für das Training des benutzerdefinierten Modells beträgt die maximale Anzahl von Seiten für Trainingsdaten 500 für das benutzerdefinierte Vorlagenmodell und 50.000 für das benutzerdefinierte neuronale Modell.
- Training des benutzerdefinierten Extraktionsmodells: Die Gesamtgröße der Trainingsdaten beträgt 50 MB für das Vorlagenmodell und 1 GB für das neuronale Modell.
- Benutzerdefiniertes Klassifizierungsmodeltraining: Für das Training des benutzerdefinierten Klassifizierungsmodells beträgt die Gesamtgröße der Trainingsdaten 1 GB mit einem Maximum von 10.000 Seiten. Für 2024-11-30 (GA) beträgt die Gesamtgröße der Trainingsdaten 2 GB bei maximal 10.000 Seiten.
- Office-Dateitypen (DOCX, XLSX, PPTX): Eine Zeichenfolge kann maximal 8 Millionen Zeichen haben.
Weitere Informationen zur Modellnutzung, zu Kontingenten und Dienstgrenzwerten finden Sie unter Dienstkontingente und Limits.
Erste Schritte mit dem Layoutmodell
Erfahren Sie, wie Daten (einschließlich Text, Tabellen, Tabellenkopfzeilen, Auswahlmarkierungen und Strukturinformationen) mithilfe von Dokument Intelligenz aus Dokumenten extrahiert werden. Sie benötigen die folgenden Ressourcen:
Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
Eine Dokument Intelligenz-Instanz im Azure-Portal. Zum Testen des Diensts können Sie den kostenlosen Tarif (F0) verwenden. Wählen Sie nach der Bereitstellung Ihrer Ressource Zu Ressource wechseln aus, um Ihren Schlüssel und Endpunkt abzurufen.
Nachdem Sie Ihren Schlüssel und Endpunkt abgerufen haben, verwenden Sie die folgenden Entwicklungsoptionen, um eigene Dokument Intelligenz-Anwendungen zu erstellen und bereitzustellen.
Extrahieren von Daten
Das Layoutmodell extrahiert Strukturelemente aus Ihren Dokumenten. Die folgenden Strukturelemente werden im restlichen Teil dieses Artikels beschrieben, und Sie erfahren, wie Sie diese aus Ihrer Dokumenteingabe extrahieren:
- Seiten
- Absätze
- Text, Zeilen und Wörter
- Auswahlmarkierungen
- Tabellen
- Ausgabeantwort im Markdownformat
- Abbildungen
- Abschnitte
Führen Sie die Beispiel-Layoutdokumentanalyse in Dokument Intelligenz Studio aus. Wechseln Sie dann zur Registerkarte „Ergebnisse“, und greifen Sie auf die vollständige JSON-Ausgabe zu.
Seiten
Die pages-Sammlung ist eine Liste von Seiten innerhalb des Dokuments. Jede Seite wird innerhalb des Dokuments sequenziell dargestellt und enthält den Ausrichtungswinkel, der angibt, ob die Seite gedreht wurde, sowie die Breite und Höhe (Abmessungen in Pixel). Die Seiteneinheiten in der Modellausgabe werden wie in der folgenden Tabelle gezeigt berechnet.
| Dateiformat | Berechnete Seiteneinheit | Seiten gesamt |
|---|---|---|
| Bilder (JPEG/JPG, PNG, BMP, HEIF) | Jedes Bild = 1 Seiteneinheit. | Gesamtzahl der Bilder |
| Jede Seite in der PDF-Datei = 1 Seiteneinheit. | Gesamtseitenzahl in der PDF | |
| TIFF | Jedes Bild in der TIFF-Datei = 1 Seiteneinheit. | Gesamtanzahl der Bilder im TIFF-Dokument |
| Word-Dokument (DOCX) | Bis zu 3.000 Zeichen = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Gesamtzahl der Seiten von bis zu 3.000 Zeichen jeweils |
| Excel (XLSX) | Jedes Arbeitsblatt = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Arbeitsblätter insgesamt |
| PowerPoint (PPTX) | Jede Folie = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Folien insgesamt |
| HTML | Bis zu 3.000 Zeichen = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Gesamtzahl der Seiten von bis zu 3.000 Zeichen jeweils |
# Analyze pages.
for page in result.pages:
print(f"----Analyzing layout from page #{page.page_number}----")
print(f"Page has width: {page.width} and height: {page.height}, measured with unit: {page.unit}")
Extrahieren ausgewählter Seiten
Verwenden Sie für große mehrseitige Dokumente den Abfrageparameter pages, um bestimmte Seitenzahlen oder Seitenbereiche für die Textextraktion anzugeben.
Absätze
Das Layoutmodell extrahiert alle identifizierten Textblöcke in der paragraphs-Sammlung als Objekt der obersten Ebene unter analyzeResults. Jeder Eintrag in dieser Sammlung stellt einen Textblock dar und enthält den extrahierten Text als content sowie die Koordinaten des Begrenzungspolygons (polygon). Die spans-Informationen zeigen auf das Textfragment innerhalb der content-Eigenschaft der obersten Ebene, die den vollständigen Text aus dem Dokument enthält.
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"content": "While healthcare is still in the early stages of its Al journey, we are seeing pharmaceutical and other life sciences organizations making major investments in Al and related technologies.\" TOM LAWRY | National Director for Al, Health and Life Sciences | Microsoft"
}
]
Absatzrollen
Die neue auf maschinellem Lernen basierende Seitenobjekterkennung extrahiert logische Rollen wie Titel, Abschnittsüberschriften, Kopfzeilen, Fußzeilen und vieles mehr. Das Layoutmodell von Dokument Intelligenz weist bestimmten Textblöcken in der paragraphs-Sammlung ihre spezielle, vom Modell vorhergesagte Rolle oder ihren speziellen Typ zu.
Absatzrollen werden am besten mit unstrukturierten Dokumenten verwendet, um das Layout des extrahierten Inhalts zu verstehen und so eine umfassendere semantische Analyse zu ermöglichen. Die folgenden Absatzrollen werden unterstützt.
| Vorhergesagte Rolle | Description | Unterstützte Dateitypen |
|---|---|---|
title |
Die Hauptüberschriften auf der Seite | PDF, IMAGE, DOCX, PPTX, XLSX, HTML |
sectionHeading |
Eine oder mehrere Unterüberschriften auf der Seite | PDF, IMAGE, DOCX, XLSX, HTML |
footnote |
Text im unteren Bereich der Seite | PDF, IMAGE |
pageHeader |
Text am oberen Rand der Seite | PDF, IMAGE, DOCX |
pageFooter |
Text am unteren Rand der Seite | PDF, IMAGE, DOCX, PPTX, HTML |
pageNumber |
Seitenzahl | PDF, IMAGE |
{
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"role": "title",
"content": "NEWS TODAY"
},
{
"spans": [],
"boundingRegions": [],
"role": "sectionHeading",
"content": "Mirjam Nilsson"
}
]
}
Text, Zeilen und Wörter
Das Dokumentlayoutmodell in Dokument Intelligenz extrahiert gedruckten und handschriftlichen Text als lines und words. Die styles-Sammlung enthält alle handschriftlichen Formatvorlagen für Zeilen (sofern erkannt) sowie die Spannen, die auf den zugeordneten Text verweisen. Dieses Feature gilt für unterstützte handschriftliche Sprachen.
Für Microsoft Word, Excel, PowerPoint und HTML extrahiert das Layoutmodell in Dokument Intelligenz Version 4.0 2024-11-30 (GA) den gesamten eingebetteten Text unverändert. Texte werden als Wörter und Absätze extrahiert. Eingebettete Bilder werden nicht unterstützt.
# Analyze lines.
if page.lines:
for line_idx, line in enumerate(page.lines):
words = get_words(page, line)
print(
f"...Line # {line_idx} has word count {len(words)} and text '{line.content}' "
f"within bounding polygon '{line.polygon}'"
)
# Analyze words.
for word in words:
print(f"......Word '{word.content}' has a confidence of {word.confidence}")
Handschriftlicher Text für Textzeilen
Die Antwort enthält Angaben dazu, ob die einzelnen Textzeilen handschriftlich sind oder nicht, sowie eine Konfidenzbewertung. Weitere Informationen finden Sie unter Unterstützung für handschriftlichen Text. Das folgende Beispiel zeigt einen beispielhaften JSON-Ausschnitt.
"styles": [
{
"confidence": 0.95,
"spans": [
{
"offset": 509,
"length": 24
}
"isHandwritten": true
]
}
Wenn Sie die Add-On-Funktion für Schriftart/Schriftschnitt aktivieren, erhalten Sie als Teil des styles-Objekts auch das Ergebnis für die Schriftart und den Schriftschnitt.
Auswahlmarkierungen
Das Layoutmodell extrahiert darüber hinaus Auswahlmarkierungen aus Dokumenten. Extrahierte Auswahlmarken werden in der pages-Auflistung für jede Seite angezeigt. Sie enthalten das Begrenzungs-polygon, confidence und den Auswahl-state (selected/unselected). Die Textdarstellung (d. h. :selected: und :unselected) wird auch als Startindex (offset) und length hinzugefügt, die auf die content-Eigenschaft der obersten Ebene mit dem vollständigen Text des Dokuments verweist.
# Analyze selection marks.
if page.selection_marks:
for selection_mark in page.selection_marks:
print(
f"Selection mark is '{selection_mark.state}' within bounding polygon "
f"'{selection_mark.polygon}' and has a confidence of {selection_mark.confidence}"
)
Tabellen
Das Extrahieren von Tabellen ist eine wichtige Voraussetzung für die Verarbeitung von Dokumenten, die große Datenmengen enthalten, die in der Regel als Tabellen formatiert sind. Das Layoutmodell extrahiert Tabellen im pageResults-Abschnitt der JSON-Ausgabe. Die extrahierten Tabelleninformationen umfassen die Anzahl von Spalten und Zeilen sowie den Zeilen- und Spaltenabstand.
Jede Zelle mit ihrem Begrenzungspolygon wird zusammen mit der Information ausgegeben, ob der Bereich als columnHeader erkannt wurde oder nicht. Das Modell unterstützt das Extrahieren von Tabellen, die gedreht wurden. Jede Tabellenzelle enthält den Zeilen- und Spaltenindex sowie die Koordinaten des Begrenzungspolygons. Für den Zellentext gibt das Modell die span-Informationen aus, die den Startindex (offset) enthalten. Das Modell gibt auch die length innerhalb des Inhalts der obersten Ebene aus, der den vollständigen Text aus dem Dokument enthält.
Folgende Faktoren sollten Sie bei der Verwendung der Extraktionsfunktion von Dokument Intelligenz berücksichtigen:
- Werden die Daten, die Sie extrahieren möchten, als Tabelle dargestellt, und ist die Tabellenstruktur aussagekräftig?
- Können die Daten in ein zweidimensionales Raster eingepasst werden, wenn sie nicht in einem Tabellenformat vorliegen?
- Erstrecken sich Ihre Tabellen über mehrere Seiten? Falls ja, teilen Sie die PDF-Datei in einzelne Seiten auf, bevor Sie sie an Dokument Intelligenz senden, damit nicht alle Seiten beschriftet werden müssen. Verarbeiten Sie die Seiten nach der Analyse in einer einzelnen Tabelle.
- Wenn Sie benutzerdefinierte Modelle erstellen, finden Sie unter Tabellarische Felder weitere Informationen. Dynamische Tabellen weisen eine variable Anzahl von Zeilen für jede Spalte auf. Fixierte Tabellen weisen eine konstante Anzahl von Zeilen für jede Spalte auf.
Hinweis
Die Tabellenanalyse wird nicht unterstützt, wenn die Eingabedatei XLSX ist. Bei 2024-11-30 (GA) umfassen die Begrenzungsbereiche für Abbildungen und Tabellen nur den Kerninhalt. Die zugehörigen Beschriftungen und Fußnoten werden ausgeschlossen.
if result.tables:
for table_idx, table in enumerate(result.tables):
print(f"Table # {table_idx} has {table.row_count} rows and " f"{table.column_count} columns")
if table.bounding_regions:
for region in table.bounding_regions:
print(f"Table # {table_idx} location on page: {region.page_number} is {region.polygon}")
# Analyze cells.
for cell in table.cells:
print(f"...Cell[{cell.row_index}][{cell.column_index}] has text '{cell.content}'")
if cell.bounding_regions:
for region in cell.bounding_regions:
print(f"...content on page {region.page_number} is within bounding polygon '{region.polygon}'")
Ausgabe der Antwort im Markdownformat
Die Layout-API kann den extrahierten Text im Markdownformat ausgeben. Verwenden Sie outputContentFormat=markdown, um das Ausgabeformat in Markdown anzugeben. Der Markdowninhalt wird als Teil des content-Abschnitts ausgegeben.
Hinweis
Bei Version 4.0 2024-11-30 (GA) wird die Darstellung von Tabellen in HTML-Tabellen geändert, um das Rendern von Elementen wie zusammengeführten Zellen und mehrzeiligen Überschriften zu ermöglichen. Eine weitere damit zusammenhängende Änderung besteht darin, dass anstelle von :selected: und :unselected: die Unicode-Zeichen für Kontrollkästchen ☒ und ☐ für Auswahlmarkierungen verwendet werden. Dieses Update bedeutet, dass der Inhalt von Auswahlmarkierungsfeldern :selected: enthält, obwohl sich ihre Spannen auf Unicode-Zeichen in der Spanne der obersten Ebene beziehen. Eine vollständige Definition von Markdownelementen finden Sie unter Markdown-Ausgabeformat.
document_intelligence_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
poller = document_intelligence_client.begin_analyze_document(
"prebuilt-layout",
AnalyzeDocumentRequest(url_source=url),
output_content_format=ContentFormat.MARKDOWN,
)
Zahlen
Abbildungen (Diagramme und Bilder) in Dokumenten spielen eine entscheidende Rolle bei der Ergänzung und Verbesserung des Textinhalts. Sie bieten visuelle Darstellungen, die das Verständnis komplexer Informationen erleichtern. Das vom Layoutmodell erkannte figures-Objekt weist z. B. folgende wichtige Eigenschaften auf:
-
boundingRegions: Die räumlichen Positionen der Abbildung auf den Dokumentseiten, einschließlich der Seitenzahl und der Polygonkoordinaten, die die Begrenzung der Abbildung darstellen. -
spans: Die Textspannen, die sich auf die Abbildung beziehen und deren Offsets und Längen im Text des Dokuments angeben. Diese Verbindung hilft dabei, die Abbildung mit dem relevanten Textkontext in Zusammenhang zu bringen. -
elements: Die Bezeichner für Textelemente oder Absätze im Dokument, die mit der Abbildung zusammenhängen oder diese beschreiben. -
caption: Die Beschreibung, sofern vorhanden.
Wenn während des ersten Analysevorgangs output=figures angegeben wird, generiert der Dienst zugeschnittene Bilder für alle erkannten Abbildungen, auf die über /analyeResults/{resultId}/figures/{figureId} zugegriffen werden kann. Der Wert FigureId ist die in jedem Abbildungsobjekt enthaltene ID nach der nicht dokumentierten Konvention {pageNumber}.{figureIndex}, wobei figureIndex auf eins pro Seite zurückgesetzt wird.
Bei Version 4.0 2024-11-30 (GA) umfassen die Begrenzungsbereiche für Abbildungen und Tabellen nur den Kerninhalt. Die zugehörigen Beschriftungen und Fußnoten werden ausgeschlossen.
# Analyze figures.
if result.figures:
for figures_idx,figures in enumerate(result.figures):
print(f"Figure # {figures_idx} has the following spans:{figures.spans}")
for region in figures.bounding_regions:
print(f"Figure # {figures_idx} location on page:{region.page_number} is within bounding polygon '{region.polygon}'")
Abschnitte
Die hierarchische Dokumentstrukturanalyse ist entscheidend bei der Organisation, Verständnis und Verarbeitung umfangreicher Dokumente. Dieser Ansatz ist entscheidend für die semantische Segmentierung langer Dokumente, um das Verständnis zu steigern, die Navigation zu erleichtern und den Abruf von Informationen zu verbessern. Die Einführung von Retrieval Augmented Generation (RAG) in generativer KI für Dokumente unterstreicht die Bedeutung der Analyse der hierarchischen Dokumentstruktur.
Das Layoutmodell unterstützt Abschnitte und Unterabschnitte in der Ausgabe, wodurch die Beziehung zwischen Abschnitten und Objekten innerhalb jedes Abschnitts identifiziert wird. Die hierarchische Struktur wird in elements für jeden Abschnitt beibehalten. Unter Ausgabe der Antwort im Markdownformat wird beschrieben, wie Sie die Abschnitte und Unterabschnitte ganz einfach im Markdownformat abrufen können.
document_intelligence_client = DocumentIntelligenceClient(endpoint=endpoint, credential=AzureKeyCredential(key))
poller = document_intelligence_client.begin_analyze_document(
"prebuilt-layout",
AnalyzeDocumentRequest(url_source=url),
output_content_format=ContentFormat.MARKDOWN,
)
Dieser Inhalt gilt für:
Version 3.1 (GA) | Aktuelle Version:
Version 4.0 (GA) | Vorherige Versionen:
Version 3.0
Version 2.1
Dieser Inhalt gilt für:
Version 3.0 (GA) | Neueste Versionen:
Version 4.0 (GA)
v3.1 | Vorherige Version:
Version 2.1
Dieser Inhalt gilt für:
v2.1 | Letzte Version:
v4.0 (GA)
Das Dokument Intelligenz-Layoutmodell ist eine erweiterte Dokumentanalyse-API. Das Modell basiert auf maschinellem Lernen (ML) und ist in der Dokument Intelligenz-Cloud verfügbar. Sie können damit Dokumente in verschiedenen Formaten erfassen und strukturierte Datendarstellungen der Dokumente zurückgeben. Es kombiniert eine erweiterte Version der leistungsstarken Funktionen für die optische Zeichenerkennung (Optical Character Recognition, OCR) mit Deep Learning-Modellen. Sie können es verwenden, um Text, Tabellen, Auswahlmarkierungen und Dokumentstrukturen zu extrahieren.
Dokumentlayoutanalyse
Bei der Analyse des Dokumentstrukturlayouts wird ein Dokument analysiert, um relevante Bereiche und die Beziehungen zwischen diesen Bereichen zu extrahieren. Ziel ist es, Text- und Strukturelemente aus der Seite zu extrahieren, um Modelle mit besserem Semantikverständnis zu erstellen. Es gibt zwei Arten von Rollen in einem Dokumentlayout:
- Geometrische Rollen: Text, Tabellen, Abbildungen und Auswahlmarkierungen sind Beispiele für geometrische Rollen.
- Logische Rollen: Titel, Kopfzeilen und Fußzeilen sind Beispiele für logische Rollen von Texten.
Die folgende Abbildung zeigt die typischen Komponenten eines Bildes auf einer Beispielseite.
Unterstützte Sprachen und Gebietsschemas
Eine vollständige Liste der unterstützten Sprachen finden Sie unter Sprachunterstützung: Dokumentanalysemodelle.
Dokument Intelligenz Version 2.1 unterstützt die folgenden Tools, Anwendungen und Bibliotheken.
| Funktion | Ressourcen |
|---|---|
| Layoutmodell | • Beschriftungstool von Dokument Intelligenz • REST-API • Clientbibliotheks-SDK • Docker-Container für Dokument Intelligenz |
Eingabeleitfaden
Unterstützte Dateiformate:
| Modell | Bild: JPEG/JPG, PNG, BMP, TIFF, HEIF |
Office: Word (DOCX), Excel (XLSX), PowerPoint (PPTX), HTML |
|
|---|---|---|---|
| Lesen | ✔ | ✔ | ✔ |
| Gestaltung | ✔ | ✔ | |
| Allgemeines Dokument | ✔ | ✔ | |
| Vordefiniert | ✔ | ✔ | |
| Benutzerdefinierte Extraktion | ✔ | ✔ | |
| Benutzerdefinierte Klassifizierung | ✔ | ✔ | ✔ |
- Fotos und Scans: Die besten Ergebnisse erzielen Sie, wenn Sie pro Dokument ein deutliches Foto oder einen hochwertigen Scan bereitstellen.
- PDFs und TIFFs: Für PDF- und TIFF-Dateien können bis zu 2.000 Seiten mit einem kostenlosen Abonnement verarbeitet werden. Nur die ersten beiden Seiten werden verarbeitet.
- Dateigröße: Die Dateigröße für die Analyse von Dokumenten beträgt 500 MB für den kostenpflichtigen (S0) und 4 MB für den kostenlosen (F0) Tarif.
- Bildgröße: Die Bildgröße muss 50 × 50 Pixel bis 10.000 × 10.000 Pixel betragen.
- Kennwortsperren: Wenn Ihre PDFs kennwortgeschützt sind, müssen Sie die Sperre vor dem Senden entfernen.
- Texthöhe: Die Mindesthöhe des zu extrahierenden Texts beträgt 12 Pixel bei einem Bild mit 1024 x 768 Pixeln. Diese Abmessung entspricht etwa 8-Punkt-Text bei 150 Punkten pro Zoll.
- Benutzerdefiniertes Modelltraining: Für das Training des benutzerdefinierten Modells beträgt die maximale Anzahl von Seiten für Trainingsdaten 500 für das benutzerdefinierte Vorlagenmodell und 50.000 für das benutzerdefinierte neuronale Modell.
- Training des benutzerdefinierten Extraktionsmodells: Die Gesamtgröße der Trainingsdaten beträgt 50 MB für das Vorlagenmodell und 1 GB für das neuronale Modell.
- Benutzerdefiniertes Klassifizierungsmodeltraining: Für das Training des benutzerdefinierten Klassifizierungsmodells beträgt die Gesamtgröße der Trainingsdaten 1 GB mit einem Maximum von 10.000 Seiten. Für 2024-11-30 (GA) beträgt die Gesamtgröße der Trainingsdaten 2 GB bei maximal 10.000 Seiten.
- Office-Dateitypen (DOCX, XLSX, PPTX): Eine Zeichenfolge kann maximal 8 Millionen Zeichen haben.
Eingabeleitfaden
- Unterstützte Dateiformate: JPEG, PNG, PDF und TIFF.
- Unterstützte Seitenanzahl: Für PDF- und TIFF-Dateien werden bis zu 2.000 Seiten verarbeitet. Bei Abonnements im Free-Tarif werden nur die ersten beiden Seiten verarbeitet.
- Unterstützte Dateigröße: Die Datei muss kleiner als 50 MB sein, und eine Größe von mindestens 50 x 50 Pixel und höchstens 10.000 x 10.000 Pixel aufweisen.
Erste Schritte
Mit Dokument Intelligenz können Sie Daten wie Text, Tabellen, Tabellenüberschriften, Auswahlmarkierungen und Strukturinformationen aus Dokumenten extrahieren. Sie benötigen die folgenden Ressourcen:
- Ein Azure-Abonnement. Sie können ein kostenloses Konto erstellen.
- Eine Dokument Intelligenz-Instanz im Azure-Portal. Zum Testen des Diensts können Sie den kostenlosen Tarif (F0) verwenden. Wählen Sie nach der Bereitstellung Ihrer Ressource Zu Ressource wechseln aus, um Ihren Schlüssel und Endpunkt abzurufen.
Nachdem Sie Ihren Schlüssel und Endpunkt abgerufen haben, können Sie die folgenden Entwicklungsoptionen verwenden, um eigene Dokument Intelligenz-Anwendungen zu erstellen und bereitzustellen.
Hinweis
Dokument Intelligenz Studio ist mit den APIs der Version 3.0 und höheren Versionen verfügbar.
REST-API
Dokument Intelligenz-Tool für die Beschriftung von Beispielen
Wechseln Sie zum Stichprobenbeschriftungstool von Dokument Intelligenz.
Wählen Sie auf der Startseite des Beispieltools die Option Use Layout to get text, tables and selection marks (Layout zum Abrufen von Text, Tabellen und Auswahlmarkierungen verwenden) aus.
Fügen Sie im Feld Dokument Intelligenz-Dienstendpunkt den Endpunkt ein, den Sie mit Ihrem Dokument Intelligenz-Abonnement erhalten haben.
Fügen Sie im Feld Schlüssel den Schlüssel ein, den Sie aus Ihrer Dokument Intelligenz-Ressource abgerufen haben.
Wählen Sie im Feld Quelle im Dropdownmenü die URL aus. Sie können das Beispieldokument verwenden:
Wählen Sie Abrufen aus.
Wählen Sie Run Layout (Layout ausführen) aus. Das Stichprobenbeschriftungstool von Dokument Intelligenz ruft die Analyselayout-API auf, um das Dokument zu analysieren.
Zeigen Sie die Ergebnisse an. Sehen Sie sich den hervorgehobenen extrahierten Text, die erkannten Auswahlmarkierungen und die erkannten Tabellen an.
Dokument Intelligenz Version 2.1 unterstützt die folgenden Tools, Anwendungen und Bibliotheken.
| Funktion | Ressourcen |
|---|---|
| Layout-API | • Beschriftungstool von Dokument Intelligenz • REST-API • Clientbibliotheks-SDK • Docker-Container für Dokument Intelligenz |
Extrahieren von Daten
Das Layoutmodell extrahiert Strukturelemente aus Ihren Dokumenten. Die Strukturelemente werden hier beschrieben, und der folgende Leitfaden erläutert, wie Sie sie aus der Dokumenteingabe extrahieren.
Extrahieren von Daten
Das Layoutmodell extrahiert Strukturelemente aus Ihren Dokumenten. Die Strukturelemente werden hier beschrieben, und der folgende Leitfaden erläutert, wie Sie sie aus der Dokumenteingabe extrahieren.
Seite
Die pages-Sammlung ist eine Liste von Seiten innerhalb des Dokuments. Jede Seite wird sequenziell innerhalb des Dokuments dargestellt und enthält den Ausrichtungswinkel, der angibt, ob die Seite gedreht wurde, sowie die Breite und Höhe (Abmessungen in Pixeln). Die Seiteneinheiten in der Modellausgabe werden wie in der folgenden Tabelle gezeigt berechnet.
| Dateiformat | Berechnete Seiteneinheit | Seiten gesamt |
|---|---|---|
| Bilder (JPEG/JPG, PNG, BMP, HEIF) | Jedes Bild = 1 Seiteneinheit. | Gesamtzahl der Bilder |
| Jede Seite in der PDF-Datei = 1 Seiteneinheit. | Gesamtseitenzahl in der PDF | |
| TIFF | Jedes Bild in der TIFF-Datei = 1 Seiteneinheit. | Gesamtanzahl der Bilder im TIFF-Dokument |
| Word-Dokument (DOCX) | Bis zu 3.000 Zeichen = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Gesamtzahl der Seiten von bis zu 3.000 Zeichen jeweils |
| Excel (XLSX) | Jedes Arbeitsblatt = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Arbeitsblätter insgesamt |
| PowerPoint (PPTX) | Jede Folie = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Folien insgesamt |
| HTML | Bis zu 3.000 Zeichen = 1 Seiteneinheit. Eingebettete oder verknüpfte Bilder werden nicht unterstützt. | Gesamtzahl der Seiten von bis zu 3.000 Zeichen jeweils |
"pages": [
{
"pageNumber": 1,
"angle": 0,
"width": 915,
"height": 1190,
"unit": "pixel",
"words": [],
"lines": [],
"spans": []
}
]
# Analyze pages.
for page in result.pages:
print(f"----Analyzing layout from page #{page.page_number}----")
print(
f"Page has width: {page.width} and height: {page.height}, measured with unit: {page.unit}"
)
Extrahiert ausgewählte Seiten aus Dokumenten
Verwenden Sie für große mehrseitige Dokumente den Abfrageparameter pages, um bestimmte Seitenzahlen oder Seitenbereiche für die Textextraktion anzugeben.
Paragraph
Das Layoutmodell extrahiert alle identifizierten Textblöcke in der paragraphs-Sammlung als Objekt der obersten Ebene unter analyzeResults. Jeder Eintrag in dieser Sammlung stellt einen Textblock dar und enthält den extrahierten Text als content sowie die Koordinaten des Begrenzungspolygons (polygon). Die span-Informationen zeigen auf das Textfragment innerhalb der content-Eigenschaft der obersten Ebene, die den vollständigen Text aus dem Dokument enthält.
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"content": "While healthcare is still in the early stages of its Al journey, we are seeing pharmaceutical and other life sciences organizations making major investments in Al and related technologies.\" TOM LAWRY | National Director for Al, Health and Life Sciences | Microsoft"
}
]
Absatzrolle
Die neue auf maschinellem Lernen basierende Seitenobjekterkennung extrahiert logische Rollen wie Titel, Abschnittsüberschriften, Kopfzeilen, Fußzeilen und vieles mehr. Das Layoutmodell von Dokument Intelligenz weist bestimmten Textblöcken in der paragraphs-Sammlung ihre spezielle, vom Modell vorhergesagte Rolle oder ihren speziellen Typ zu. Absatzrollen werden am besten mit unstrukturierten Dokumenten verwendet, um das Layout des extrahierten Inhalts zu verstehen und so eine umfassendere semantische Analyse zu ermöglichen. Die folgenden Absatzrollen werden unterstützt.
| Vorhergesagte Rolle | Description | Unterstützte Dateitypen |
|---|---|---|
title |
Hauptüberschriften auf der Seite | PDF, IMAGE, DOCX, PPTX, XLSX, HTML |
sectionHeading |
Eine oder mehrere Unterüberschriften auf der Seite | PDF, IMAGE, DOCX, XLSX, HTML |
footnote |
Text im unteren Bereich der Seite | PDF, IMAGE |
pageHeader |
Text am oberen Rand der Seite | PDF, IMAGE, DOCX |
pageFooter |
Text am unteren Rand der Seite | PDF, IMAGE, DOCX, PPTX, HTML |
pageNumber |
Seitenzahl | PDF, IMAGE |
{
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"role": "title",
"content": "NEWS TODAY"
},
{
"spans": [],
"boundingRegions": [],
"role": "sectionHeading",
"content": "Mirjam Nilsson"
}
]
}
Text, Zeile und Wort
Das Dokumentlayoutmodell in Document Intelligence extrahiert Druck- und handschriftlichen Text als Zeilen und Wörter. Die styles-Sammlung enthält alle handschriftlichen Formatvorlagen für Zeilen (sofern erkannt) sowie die Spannen, die auf den zugeordneten Text verweisen. Dieses Feature gilt für unterstützte handschriftliche Sprachen.
Für Microsoft Word, Excel, PowerPoint und HTML extrahiert das Layoutmodell in Dokument Intelligenz Version 4.0 2024-11-30 (GA) den gesamten eingebetteten Text unverändert. Texte werden als Wörter und Absätze extrahiert. Eingebettete Bilder werden nicht unterstützt.
"words": [
{
"content": "While",
"polygon": [],
"confidence": 0.997,
"span": {}
},
],
"lines": [
{
"content": "While healthcare is still in the early stages of its Al journey, we",
"polygon": [],
"spans": [],
}
]
# Analyze lines.
for line_idx, line in enumerate(page.lines):
words = line.get_words()
print(
f"...Line # {line_idx} has word count {len(words)} and text '{line.content}' "
f"within bounding polygon '{format_polygon(line.polygon)}'"
)
# Analyze words.
for word in words:
print(
f"......Word '{word.content}' has a confidence of {word.confidence}"
)
Handschriftlicher Stil
Die Antwort umfasst die Klassifizierung, ob es sich bei den einzelnen Textzeilen um einen handschriftlichen Stil handelt, sowie eine Konfidenzbewertung. Weitere Informationen finden Sie unter Unterstützung für handschriftlichen Text. Das folgende Beispiel zeigt einen beispielhaften JSON-Ausschnitt.
"styles": [
{
"confidence": 0.95,
"spans": [
{
"offset": 509,
"length": 24
}
"isHandwritten": true
]
}
Wenn Sie die Add-On-Funktion für Schriftart/Schriftschnitt aktivieren, erhalten Sie als Teil des styles-Objekts auch das Ergebnis für die Schriftart und den Schriftschnitt.
Auswahlmarkierung
Das Layoutmodell extrahiert darüber hinaus Auswahlmarkierungen aus Dokumenten. Extrahierte Auswahlmarken werden in der pages-Auflistung für jede Seite angezeigt. Sie enthalten das Begrenzungs-polygon, confidence und den Auswahl-state (selected/unselected). Die Textdarstellung (d. h. :selected: und :unselected) wird auch als Startindex (offset) und length hinzugefügt, die auf die content-Eigenschaft der obersten Ebene mit dem vollständigen Text des Dokuments verweist.
{
"selectionMarks": [
{
"state": "unselected",
"polygon": [],
"confidence": 0.995,
"span": {
"offset": 1421,
"length": 12
}
}
]
}
# Analyze selection marks.
for selection_mark in page.selection_marks:
print(
f"Selection mark is '{selection_mark.state}' within bounding polygon "
f"'{format_polygon(selection_mark.polygon)}' and has a confidence of {selection_mark.confidence}"
)
Tabelle
Das Extrahieren von Tabellen ist eine wichtige Voraussetzung für die Verarbeitung von Dokumenten, die große Datenmengen enthalten, die in der Regel als Tabellen formatiert sind. Das Layoutmodell extrahiert Tabellen im pageResults-Abschnitt der JSON-Ausgabe. Die extrahierten Tabelleninformationen umfassen die Anzahl von Spalten und Zeilen sowie den Zeilen- und Spaltenabstand. Jede Zelle mit ihrem Begrenzungspolygon wird zusammen mit der Information ausgegeben, ob der Bereich als columnHeader erkannt wurde oder nicht.
Das Modell unterstützt das Extrahieren von Tabellen, die gedreht wurden. Jede Tabellenzelle enthält den Zeilen- und Spaltenindex sowie die Koordinaten des Begrenzungspolygons. Für den Zellentext gibt das Modell die span-Informationen aus, die den Startindex (offset) enthalten. Das Modell gibt auch die length innerhalb des Inhalts der obersten Ebene aus, der den vollständigen Text aus dem Dokument enthält.
Folgende Faktoren sollten Sie bei der Verwendung der Extraktionsfunktion von Dokument Intelligenz berücksichtigen:
- Werden die Daten, die Sie extrahieren möchten, als Tabelle dargestellt, und ist die Tabellenstruktur aussagekräftig?
- Können die Daten in ein zweidimensionales Raster eingepasst werden, wenn sie nicht in einem Tabellenformat vorliegen?
- Erstrecken sich Ihre Tabellen über mehrere Seiten? Falls ja, teilen Sie die PDF-Datei in einzelne Seiten auf, bevor Sie sie an Dokument Intelligenz senden, damit nicht alle Seiten beschriftet werden müssen. Verarbeiten Sie die Seiten nach der Analyse in einer einzelnen Tabelle.
- Wenn Sie benutzerdefinierte Modelle erstellen, finden Sie unter Tabellarische Felder weitere Informationen. Dynamische Tabellen weisen eine variable Anzahl von Zeilen für jede Spalte auf. Fixierte Tabellen weisen eine konstante Anzahl von Zeilen für jede Spalte auf.
Hinweis
Die Tabellenanalyse wird nicht unterstützt, wenn die Eingabedatei XLSX ist. Dokument Intelligenz Version 4.0 2024-11-30 (GA) unterstützt Begrenzungsbereiche für Abbildungen und Tabellen, die nur den Kerninhalt umfassen und die zugeordneten Beschriftungen und Fußnoten ausschließen.
{
"tables": [
{
"rowCount": 9,
"columnCount": 4,
"cells": [
{
"kind": "columnHeader",
"rowIndex": 0,
"columnIndex": 0,
"columnSpan": 4,
"content": "(In millions, except earnings per share)",
"boundingRegions": [],
"spans": []
},
]
}
]
}
# Analyze tables.
for table_idx, table in enumerate(result.tables):
print(
f"Table # {table_idx} has {table.row_count} rows and "
f"{table.column_count} columns"
)
for region in table.bounding_regions:
print(
f"Table # {table_idx} location on page: {region.page_number} is {format_polygon(region.polygon)}"
)
for cell in table.cells:
print(
f"...Cell[{cell.row_index}][{cell.column_index}] has text '{cell.content}'"
)
for region in cell.bounding_regions:
print(
f"...content on page {region.page_number} is within bounding polygon '{format_polygon(region.polygon)}'"
)
Anmerkungen
Das Layoutmodell extrahiert Anmerkungen in Dokumenten, z. B. Häkchen und Kreuze. Die Antwort enthält die Art der Anmerkung, zusammen mit einer Konfidenzbewertung und einem Begrenzungspolygon.
{
"pages": [
{
"annotations": [
{
"kind": "cross",
"polygon": [...],
"confidence": 1
}
]
}
]
}
Ausgabe der natürlichen Leserichtung (nur lateinische Sprachen)
Mit dem Abfrageparameter readingOrder können Sie die Leserichtung angeben, in der die Textzeilen ausgegeben werden. Verwenden Sie wie im folgenden Beispiel gezeigt natural für eine benutzerfreundlichere Ausgabe der Lesereihenfolge. Dieses Feature wird nur für lateinische Sprachen unterstützt.
Auswählen von Seitenzahlen oder -bereichen für die Textextraktion
Verwenden Sie für große mehrseitige Dokumente den Abfrageparameter pages, um bestimmte Seitenzahlen oder Seitenbereiche für die Textextraktion anzugeben. Das folgende Beispiel zeigt ein Dokument mit zehn Seiten, bei dem für beide Fälle Text extrahiert wurde – für alle Seiten (1 – 10) und für ausgewählte Seiten (3 – 6).
Der Vorgang „Abrufen des Ergebnisses der Layoutanalyse“
Im zweiten Schritt wird der Vorgang Abrufen des Ergebnisses der Layoutanalyse aufgerufen. Bei diesem Vorgang wird die Ergebnis-ID, die vom Vorgang Analyze Layout erstellt wurde, als Eingabe verwendet. Er gibt eine JSON-Antwort zurück, die ein Status-Feld mit den folgenden möglichen Werten enthält.
| Feld | type | Mögliche Werte |
|---|---|---|
| status | Zeichenfolge |
notStarted: Der Analysevorgang wird nicht gestartet.running: Der Analysevorgang ist in Bearbeitung.failed: Der Analysevorgang ist fehlgeschlagen.succeeded: Der Analysevorgang war erfolgreich. |
Rufen Sie diesen Vorgang solange auf, bis der Wert succeeded zurückgegeben wird. Verwenden Sie ein Intervall von drei bis fünf Sekunden, um zu verhindern, dass die Rate der Anforderungen pro Sekunde (Requests Per Second, RPS) überschritten wird.
Wenn das Feld Status den Wert succeeded aufweist, enthält die JSON-Antwort das extrahierte Layout, den extrahierten Text, die extrahierten Tabellen und die Auswahlmarkierungen. Die extrahierten Daten enthalten die extrahierten Textzeilen und Wörter, Begrenzungsrahmen, die handschriftliche Anzeige von Textdarstellung, Tabellen und Auswahlmarkierungen mit der Angabe „ausgewählt“ oder „nicht ausgewählt“.
Handschriftliche Klassifizierung für Textzeilen (nur Lateinisch)
Die Antwort umfasst die Klassifizierung, ob die einzelnen Textzeilen handschriftlich sind oder nicht, sowie eine Konfidenzbewertung. Dieses Feature wird nur für lateinische Sprachen unterstützt. Das folgende Beispiel zeigt die handschriftliche Klassifizierung für den Text im Bild.
JSON-Beispielausgabe
Die Antwort auf den Vorgang Get Analyze Layout Result ist eine strukturierte Darstellung des Dokuments mit allen extrahierten Informationen.
Sehen Sie sich eine Beispieldokumentdatei und die zugehörige strukturierte Beispiellayoutausgabe an.
Die JSON-Ausgabe besteht aus zwei Teilen:
- Der Knoten
readResultsenthält den gesamten erkannten Text und alle erkannten Auswahlmarkierungen. Die Hierarchie der Textpräsentation ist eine Seite, dann eine Zeile und dann einzelne Wörter. - Der Knoten
pageResultsenthält die Tabellen und Zellen, die mit ihren Begrenzungsrahmen, Konfidenz und einem Verweis auf die Zeilen und Wörter im FeldreadResultsextrahiert wurden.
Beispielausgabe
Text
Die Layout-API extrahiert Text aus Dokumenten und Bildern mit unterschiedlichen Textwinkeln und -farben. Sie unterstützt Fotos von Dokumenten, Faxe, gedruckten und handschriftlichen Text (nur Englisch) und gemischte Modi. Text wird mit Informationen zu Zeilen, Wörtern, Begrenzungsrahmen, Konfidenzbewertungen und Stil (handschriftlich oder anderer) extrahiert. Alle Textinformationen sind im Abschnitt readResults der JSON-Ausgabe enthalten.
Tabellen mit Kopfzeilen
Die Layout-API extrahiert Tabellen im pageResults-Abschnitt der JSON-Ausgabe. Sie können Dokumente scannen, fotografieren oder digitalisieren. Tabellen können komplexe Tabellen mit zusammengeführten Zellen oder Spalten (mit oder ohne Rahmen) und mit ungeraden Winkeln sein.
Die extrahierten Tabelleninformationen umfassen die Anzahl von Spalten und Zeilen sowie den Zeilen- und Spaltenabstand. Jede Zelle mit ihrem Begrenzungsrahmen wird zusammen mit Informationen ausgegeben, unabhängig davon, ob der Bereich als Teil einer Kopfzeile erkannt werden oder nicht. Die vom Modell vorhergesagten Kopfzellen können mehrere Zeilen umfassen und müssen nicht zwingend die ersten Zeilen in einer Tabelle sein. Dies funktioniert auch bei gedrehten Tabellen. Jede Tabellenzelle enthält auch den vollständigen Text mit Verweisen auf die einzelnen Wörter im readResults-Abschnitt.
Auswahlmarkierungen (Dokumente)
Die Layout-API extrahiert auch Auswahlmarkierungen aus Dokumenten. Extrahierte Auswahlmarkierungen enthalten den Begrenzungsrahmen, die Konfidenz (Zuverlässigkeit) und den Status („ausgewählt“ oder „nicht ausgewählt“). Informationen zur Auswahlmarkierung werden im Abschnitt readResults der JSON-Ausgabe extrahiert.
Migrationsleitfaden
- Folgen Sie den Schritten in der Migrationsanleitung für Dokument Intelligenz 3.1, um zu erfahren, wie Sie Version 3.1 in Ihren Anwendungen und Workflows verwenden können.
Verwandte Inhalte
- Erfahren Sie, wie Sie mit Dokument Intelligenz StudioIhre eigenen Formulare und Dokumente verarbeiten.
- Führen Sie den Schnellstart für Dokument Intelligenz durch, und erstellen Sie eine Dokumentverarbeitungs-App in der Anwendungsentwicklungssprache Ihrer Wahl.
- Erfahren Sie, wie Sie mit dem Stichprobenbeschriftungstool von Dokument IntelligenzIhre eigenen Formulare und Dokumente verarbeiten.
- Führen Sie den Schnellstart für Dokument Intelligenz durch, und erstellen Sie eine Dokumentverarbeitungs-App in der Anwendungsentwicklungssprache Ihrer Wahl.