Freigeben über


Was ist das Dokument Intelligenz-Layoutmodell?

Dieser Inhalt gilt für:HäkchenVersion 4.0 (GA) | Vorherige Versionen:Blaues HäkchenVersion 3.1 (GA)Blaues HäkchenVersion 3.0 (GA)Blaues HäkchenVersion 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.

Abbildung: Beispiel für ein Dokumentlayout

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 PDF 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.

    Screenshot, der die Schlüssel und den Endpunktspeicherort im Azure-Portal zeigt.

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:

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.

Screenshot: Ergebnisse auf der Registerkarte „JSON-Ausgabe“ in Dokument Intelligenz Studio

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
PDF 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:HäkchenVersion 3.1 (GA) | Aktuelle Version:Lila HäkchenVersion 4.0 (GA) | Vorherige Versionen:Blaues HäkchenVersion 3.0Blaues HäkchenVersion 2.1

Dieser Inhalt gilt für:HäkchenVersion 3.0 (GA) | Neueste Versionen:Lila HäkchenVersion 4.0 (GA)Lila Häkchenv3.1 | Vorherige Version:Blaues HäkchenVersion 2.1

Dieser Inhalt gilt für:Häkchenv2.1 | Letzte Version:Blaues Häkchenv4.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.

Abbildung: Beispiel für ein Dokumentlayout

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 PDF 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.

Screenshot, der die Schlüssel und den Endpunktspeicherort im Azure-Portal zeigt.

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

  1. Wechseln Sie zum Stichprobenbeschriftungstool von Dokument Intelligenz.

  2. 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.

    Screenshot: Verbindungseinstellungen für den Layoutprozess in Dokument Intelligenz

  3. Fügen Sie im Feld Dokument Intelligenz-Dienstendpunkt den Endpunkt ein, den Sie mit Ihrem Dokument Intelligenz-Abonnement erhalten haben.

  4. Fügen Sie im Feld Schlüssel den Schlüssel ein, den Sie aus Ihrer Dokument Intelligenz-Ressource abgerufen haben.

  5. Wählen Sie im Feld Quelle im Dropdownmenü die URL aus. Sie können das Beispieldokument verwenden:

  6. Wählen Sie Run Layout (Layout ausführen) aus. Das Stichprobenbeschriftungstool von Dokument Intelligenz ruft die Analyselayout-API auf, um das Dokument zu analysieren.

    Screenshot: Dropdownbereich „Layout“

  7. Zeigen Sie die Ergebnisse an. Sehen Sie sich den hervorgehobenen extrahierten Text, die erkannten Auswahlmarkierungen und die erkannten Tabellen an.

    Screenshot: Verbindungseinstellungen für das Stichprobenbeschriftungstool von Dokument Intelligenz

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
PDF 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.

Screenshot: Verarbeitung der Lesereihenfolge des Layoutmodells

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).

Screenshot: Ausgabe des Layoutmodells für ausgewählte Seiten

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.

Screenshot: Handschriftklassifizierungsprozess des Layoutmodells

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 readResults enthä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 pageResults enthält die Tabellen und Zellen, die mit ihren Begrenzungsrahmen, Konfidenz und einem Verweis auf die Zeilen und Wörter im Feld readResults extrahiert 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.

Abbildung: Beispiel für Tabellen

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