Dokumente - Amazon Bedrock

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Dokumente

Mit der Standardausgabe für Dokumente können Sie die Granularität der Antwort festlegen, an der Sie interessiert sind, sowie das Ausgabeformat und das Textformat für die Ausgabe festlegen. Im Folgenden finden Sie einige der Ausgaben, die Sie aktivieren können.

Anmerkung

BDA kann DOCX-Dateien verarbeiten. Um DOCX-Dateien zu verarbeiten, werden sie konvertiert in PDFs. Das bedeutet, dass die Zuordnung von Seitenzahlen für DOCX-Dateien nicht funktioniert. Bilder der konvertierten Datei PDFs werden in Ihren Ausgabe-Bucket hochgeladen, wenn die Option JSON+ und die Seitengranularität ausgewählt sind.

Antwortgranularität

Die Granularität der Antwort bestimmt, welche Art von Antwort Sie bei der Textextraktion eines Dokuments erhalten möchten. Mit jeder Granularitätsebene erhalten Sie mehr separate Antworten, wobei mit „Seite“ der gesamte extrahierte Text zusammen bereitgestellt wird und mit „Wort“ jedes Wort als separate Antwort angezeigt wird. Dies sind die verfügbaren Granularitätsstufen:

  • Granularität auf Seitenebene – Dies ist standardmäßig aktiviert. Durch die Granularität auf Seitenebene wird jede Seite des Dokuments im von Ihnen ausgewählten Textausgabeformat bereitgestellt. Wenn Sie eine PDF-Datei verarbeiten und diese Granularitätsebene aktiviert ist, werden eingebettete Hyperlinks erkannt und zurückgegeben.

  • Granularität auf Elementebene (Layout) – Diese Option ist standardmäßig aktiviert. Stellt den Text des Dokuments im von Ihnen ausgewählten Ausgabeformat bereit, aufgeteilt in verschiedene Elemente. Diese Elemente, z. B. Abbildungen, Tabellen oder Absätze, werden in logischer Lesereihenfolge zurückgegeben, die auf der Struktur des Dokuments basiert. Wenn Sie eine PDF-Datei verarbeiten und diese Granularitätsebene aktiviert ist, werden eingebettete Hyperlinks erkannt und zurückgegeben.

  • Granularität auf Wortebene – Stellt Informationen zu einzelnen Wörtern bereit, ohne dass eine umfassendere Kontextanalyse verwendet wird. Es werden jedes Wort und seine Position auf der Seite bereitgestellt.

Ausgabeeinstellungen

Die Ausgabeeinstellungen bestimmen, wie die heruntergeladenen Ergebnisse strukturiert werden. Diese Einstellung gilt ausschließlich für die Konsole. Dies sind die Optionen für die Ausgabeeinstellungen:

  • JSON – Die Standardausgabestruktur für die Dokumentenanalyse. Stellt eine JSON-Ausgabedatei mit den Informationen aus Ihren Konfigurationseinstellungen bereit.

    • Asynchrone InvokeDataAutomationAsyncAPI: Die JSON-Ausgabe für die Async-API erfolgt nur in S3.

    • InvokeDataAutomationSync-API: Die JSON-Ausgabe kann durch Leveraging auf S3 oder Inline gesetzt werden. outputconfiguration Wenn S3 ausgewählt ist, geht die JSON-Ausgabe nur an S3 (nicht Inline). Wenn S3 nicht bereitgestellt wird, unterstützt die Sync-API-Ausgabe nur JSON inline.

  • JSON+-Dateien — Nur für Async-API verfügbar. InvokeDataAutomationAsync Mit dieser Einstellung werden sowohl eine JSON-Ausgabe als auch Dateien generiert, die unterschiedlichen Ausgaben entsprechen. Mit dieser Einstellung erhalten Sie beispielsweise eine Textdatei für die gesamte Textextraktion, eine Markdown-Datei für den Text mit strukturellem Markdown und CSV-Dateien für jede Tabelle, die im Text gefunden wird. Abbildungen in einem Dokument werden ebenso gespeichert wie zugeschnittene Abbildungen und korrigierte Bilder. Wenn Sie eine DOCX-Datei verarbeiten und diese Option ausgewählt haben, wird außerdem die konvertierte PDF-Datei Ihrer DOCX-Datei im Ausgabeordner gespeichert. Diese Ausgaben befinden sich in standard_output/logical_doc_id/assets/ in Ihrem Ausgabeordner.

Anmerkung
  • Die Sync-API gibt außer der JSON-Datei keine weiteren Dateien aus. Das Ausgabe-JSON enthält nur das Textformat, das als Teil des Standardausgabetextformats ausgewählt wurde. Die Sync-API gibt keine Bildausschnitte oder korrigierte Bilder aus.

  • DocX wird von der Sync-API nicht unterstützt.

Textformat

Das Textformat bestimmt die verschiedenen Arten von Text, die über verschiedene Extraktionsvorgänge bereitgestellt werden. Sie können eine beliebige Anzahl der folgenden Optionen für Ihr Textformat auswählen.

  • Klartext – Diese Einstellung ermöglicht eine reine Textausgabe ohne Angabe von Formatierungs- oder anderen Markdown-Elementen.

  • Text mit Markdown – Die Standardausgabeeinstellung für die Standardausgabe. Stellt Text mit integrierten Markdown-Elementen bereit.

  • Text mit HTML – Stellt Text mit HTML-Elementen bereit, die in die Antwort integriert sind.

  • CSV – Stellt eine strukturierte CSV-Ausgabe für Tabellen innerhalb des Dokuments bereit. Dies gibt nur eine Antwort für Tabellen und nicht für andere Elemente des Dokuments zurück.

Begrenzungsrahmen und generative Felder

Für Dokumente gibt es zwei Antwortoptionen, deren Ausgabe auf der Grundlage der ausgewählten Granularität geändert wird. Dies sind Begrenzungsrahmen und generative Felder. Wenn Sie „Begrenzungsrahmen“ auswählen, erhalten Sie eine visuelle Markierung des Elements oder Worts, auf das Sie in der Dropdown-Liste der Konsolenantwort klicken. Auf diese Weise können Sie bestimmte Elemente Ihrer Antwort leichter finden. Begrenzungsrahmen werden in Ihrem JSON-Code als Koordinaten der vier Ecken des Felds zurückgegeben.

Wenn Sie „Generative Felder“ auswählen, wird eine Zusammenfassung des Dokuments generiert, sowohl in einer Version mit 10 Wörtern als auch in einer Version mit 250 Wörtern. Wenn Sie dann Elemente als Antwortgranularität auswählen, generieren Sie für jede im Dokument gefundene Abbildung eine beschreibende Überschrift. Zu Abbildungen gehören z. B. Diagramme, Grafiken und Bilder.

Async

Dieser Abschnitt konzentriert sich auf die verschiedenen Antwortobjekte, die Sie erhalten, wenn Sie den API-Vorgang InvokeDataAutomationAsync für eine Dokumentdatei ausführen. Im Folgenden werden die einzelnen Abschnitte des Antwortobjekts aufgeschlüsselt und dann eine vollständige, ausgefüllte Antwort für ein Beispieldokument angezeigt. Der erste Abschnitt, den wir erhalten, ist metadata.

"metadata":{ "logical_subdocument_id":"XXXX-XXXX-XXXX-XXXX", "semantic_modality":"DOCUMENT", "s3_bucket":"bucket", "s3_prefix":"prefix" },

Der erste Abschnitt oben bietet einen Überblick über die mit dem Dokument verknüpften Metadaten. Neben den S3-Informationen erhalten Sie in diesem Abschnitt auch Informationen darüber, welche Modalität für Ihre Antwort ausgewählt wurde.

"document":{ "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "description":"document text", "summary":"summary text", "statistics":{ "element_count":5, "table_count":1, "figure_count":1, "word_count":1000, "line_count":32 } },

Der obige Abschnitt enthält Informationen zur Granularität auf Dokumentebene. Die Abschnitte für Beschreibung und Zusammenfassung sind die generierten Felder, die auf dem Dokument basieren. Der Abschnitt „representation“ enthält den tatsächlichen Inhalt des Dokuments mit verschiedenen Formatierungsstilen. Schließlich enthält die Statistik Informationen zum tatsächlichen Inhalt des Dokuments, z. B. wie viele semantische Elemente es gibt, wie viele Abbildungen, Wörter, Zeilen usw.

Dies sind die Informationen für eine Tabellenentität. Bei InvokeDataAutomationAsync (asynchronen) Anfragen geben sie zusätzlich zu den Standortinformationen, den verschiedenen Textformaten, Tabellen und der Lesereihenfolge speziell CSV-Informationen und zugeschnittene Bilder der Tabelle in S3-Buckets zurück. Die CSV-Informationen zeigen die verschiedenen Kopf- und Fußzeilen sowie Titel. Die Bilder werden an den S3-Bucket mit dem in der Anfrage festgelegten Präfix weitergeleitet. InvokeDataAutomationAsync Bei InvokeDataAutomation (Sync-) Anfragen werden CSV und das zugeschnittene Bild der Tabelle in S3-Buckets nicht unterstützt.

Wenn Sie eine PDF-Datei verarbeiten, enthält der Statistikbereich der Antwort auch hyperlinks_count. Dies gibt an, wie viele Hyperlinks in Ihrem Dokument vorhanden sind.

{ "id":"entity_id", "type":"TEXT", "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "reading_order":2, "page_indices":[ 0 ], "locations":[ { "page_index":0, "bounding_box":{ "left":0.0, "top":0.0, "width":0.05, "height":0.5 } } ], "sub_type":"TITLE/SECTION_TITLE/HEADER/FOOTER/PARAGRAPH/LIST/PAGE_NUMBER" },

Dies ist die Entität, die für Text innerhalb eines Dokuments verwendet wird, und wird durch die Zeile TYPE in der Antwort gekennzeichnet. Auch hier zeigt die Darstellung den Text in verschiedenen Formaten. reading_order zeigt, wann ein Leser den Text logischerweise sehen würde. Dies ist eine semantische Reihenfolge, die auf zugehörigen Schlüsseln und Werten basiert. Beispielsweise werden die Absatzüberschriften dem jeweiligen Absatz in Lesereihenfolge zugeordnet. page_indices gibt an, auf welchen Seiten sich der Text befindet. Als Nächstes werden die Positionsinformationen angezeigt, ggf. mit einem Begrenzungsrahmen, falls dies für die Antwort aktiviert wurde. Schließlich gibt es den Entitätsuntertyp. Dieser Untertyp liefert detailliertere Informationen dazu, welche Art von Text erkannt wurde. Eine vollständige Liste von Untertypen finden Sie in der API-Referenz.

{ "id":"entity_id", "type":"TABLE", "representation":{ "html":"table.../table", "markdown":"| header | ...", "text":"header \t header", "csv":"header, header, header\n..." }, "csv_s3_uri":"s3://", "headers":[ "date", "amount", "description", "total" ], "reading_order":3, "title":"Title of the table", "footers":[ "the footers of the table" ], "crop_images":[ "s3://bucket/prefix.png", "s3://bucket/prefix.png" ], "page_indices":[ 0, 1 ], "locations":[ { "page_index":0, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } }, { "page_index":1, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } } ], "sub_type":"TITLE/SECTION_TITLE/HEADER/FOOTER/PARAGRAPH/LIST/PAGE_NUMBER" },

Dies sind die Informationen für eine Tabellenentität. Zusätzlich zu den Positionsinformationen, den verschiedenen Textformaten, Tabellen und der Lesereihenfolge geben sie insbesondere CSV-Informationen und zugeschnittene Bilder der Tabelle in S3-Buckets zurück. Die CSV-Informationen zeigen die verschiedenen Kopf- und Fußzeilen sowie Titel. Die Bilder werden an den S3-Bucket mit dem in der Anfrage festgelegten Präfix weitergeleitet. InvokeDataAutomation

{ "id":"entity_id", "type":"FIGURE", "summary":"", "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "crop_images":[ "s3://bucket/prefix.png", "s3://bucket/prefix.png" ], "locations":[ { "page_index":0, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } } ], "sub_type":"CHART", "title":"figure title", "rai_flag":"APPROVED/REDACTED/REJECTED", "reading_order":1, "page_indices":[ 0 ] } ,

Dies ist die Entität, die für Abbildungen verwendet wird, z B. Grafiken und Diagramme im Dokument. Ähnlich wie bei Tabellen werden diese Abbildungen zugeschnitten und die Bilder an den im Präfix festgelegten S3-Bucket gesendet. Zusätzlich erhalten Sie einen sub_type-Wert und eine Antwort mit dem Titel der Abbildung für den Titeltext sowie einen Hinweis darauf, um welche Art von Abbildung es sich handelt.

"pages":[ { "id":"page_id", "page_index":0, "detected_page_number":1, "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "statistics":{ "element_count":5, "table_count":1, "figure_count":1, "word_count":1000, "line_count":32 }, "asset_metadata":{ "rectified_image":"s3://bucket/prefix.png", "rectified_image_width_pixels":1700, "rectified_image_height_pixels":2200 } } ],

Die letzte Entität, die über die Standardausgabe extrahiert wird, ist „pages“. Dies ist mit Text-Entitäten identisch, enthält aber zusätzlich Seitenzahlen für die auf der Seite erkannte Seitenzahl.

"text_lines":[ { "id":"line_id", "text":"line text", "reading_order":1, "page_index":0, "locations":{ "page_index":0, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } } } ],
"text_words":[ { "id":"word_id", "text":"word text", "line_id":"line_id", "reading_order":1, "page_index":0, "locations":{ "page_index":0, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } } } ]

Diese letzten beiden Elemente beziehen sich auf einzelne Textbereiche. Die Granularität auf Wortebene gibt für jedes Wort eine Antwort zurück, während bei der Standardausgabe nur Textzeilen angezeigt werden.

Sync

Dieser Abschnitt konzentriert sich auf die verschiedenen Antwortobjekte, die Sie erhalten, wenn Sie den API-Vorgang InvokeDataAutomation für eine Dokumentdatei ausführen. Im Folgenden werden die einzelnen Abschnitte des Antwortobjekts aufgeschlüsselt und dann eine vollständige, ausgefüllte Antwort für ein Beispieldokument angezeigt. Der erste Abschnitt, den wir erhalten, ist metadata.

"metadata": { "logical_subdocument_id": "1", "semantic_modality": "DOCUMENT", "number_of_pages": X, "start_page_index": "1", "end_page_index": X, "file_type": "PDF" },

Der erste Abschnitt oben bietet einen Überblick über die mit dem Dokument verknüpften Metadaten. Da die synchrone InvokeDataAutomation API derzeit das Aufteilen von Dokumenten nicht unterstützt, ist logical_subdocument_id immer gleich 1.

"document":{ "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "description":"document text", "summary":"summary text", "statistics":{ "element_count":5, "table_count":1, "figure_count":1, "word_count":1000, "line_count":32 } },

Der obige Abschnitt enthält Informationen zur Granularität auf Dokumentebene. Die Abschnitte für Beschreibung und Zusammenfassung sind die generierten Felder, die auf dem Dokument basieren. Der Abschnitt „representation“ enthält den tatsächlichen Inhalt des Dokuments mit verschiedenen Formatierungsstilen. Schließlich enthält die Statistik Informationen zum tatsächlichen Inhalt des Dokuments, z. B. wie viele semantische Elemente es gibt, wie viele Abbildungen, Wörter, Zeilen usw.

Hinweis: Im Gegensatz zur asynchronen Anfrage unterstützt die synchrone InvokeDataAutomationAsync InvokeDataAutomation Anfrage nicht die Rückgabe von CSV-Informationen und einem zugeschnittenen Bild der Tabelle in S3-Buckets.

{ "id":"entity_id", "type":"TEXT", "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "reading_order":2, "page_indices":[ 0 ], "locations":[ { "page_index":0, "bounding_box":{ "left":0.0, "top":0.0, "width":0.05, "height":0.5 } } ], "sub_type":"TITLE/SECTION_TITLE/HEADER/FOOTER/PARAGRAPH/LIST/PAGE_NUMBER" },

Dies ist die Entität, die für Text innerhalb eines Dokuments verwendet wird und in der Antwort durch die TYPE-Zeile gekennzeichnet ist. Auch hier zeigt die Darstellung den Text in verschiedenen Formaten. reading_order gibt an, wann ein Leser den Text logischerweise sehen würde. Dies ist eine semantische Reihenfolge, die auf zugehörigen Schlüsseln und Werten basiert. Beispielsweise werden die Titel von Absätzen dem jeweiligen Absatz in Lesereihenfolge zugeordnet. page_indices gibt an, auf welchen Seiten sich der Text befindet. Als Nächstes werden die Positionsinformationen angezeigt, ggf. mit einem Begrenzungsrahmen, falls dies für die Antwort aktiviert wurde. Schließlich gibt es den Entitätsuntertyp. Dieser Untertyp liefert detailliertere Informationen dazu, welche Art von Text erkannt wurde. Eine vollständige Liste von Untertypen finden Sie in der API-Referenz.

{ "id": "entity_id", "type": "TABLE", "representation": { "html": "table.../table", "markdown": "| header | ...", "text": "header \t header", "csv": "header, header, header\n..." }, "headers": ["date", "amount", "description", "total"], "reading_order": 3, "title": "Title of the table", "footers": ["the footers of the table"], "page_indices": [0, 1], "locations": [{ "page_index": 0, "bounding_box": { "left": 0, "top": 0, "width": 1, "height": 1 } }, { "page_index": 1, "bounding_box": { "left": 0, "top": 0, "width": 1, "height": 1 } }] },

Dies sind die Informationen für eine Tabellenentität. Die CSV-Informationen zeigen die verschiedenen Kopf- und Fußzeilen sowie Titel.

{ "id": "entity_id", "type": "FIGURE", "summary": "", "representation": { "text": "document text", "html": "document title document content", "markdown": "# text" }, "locations": [ { "page_index": 0, "bounding_box": { "left": 0, "top": 0, "width": 1, "height": 1 } } ], "sub_type": "CHART", "title": "figure title", "reading_order": 1, "page_indices": [ 0 ] }, ​

Dies ist die Entität, die für Abbildungen verwendet wird, z B. Grafiken und Diagramme im Dokument. Sie erhalten eine Antwort mit dem Titel sub_type und einer Abbildung zum Titeltext sowie eine Angabe, um welche Art von Abbildung es sich handelt.

"pages":[ "pages":[ { "id":"page_id", "page_index":0, "detected_page_number":1, "representation":{ "text":"document text", "html":"document title document content", "markdown":"# text" }, "statistics":{ "element_count":5, "table_count":1, "figure_count":1, "word_count":1000, "line_count":32 }, "asset_metadata":{ "rectified_image":"s3://bucket/prefix.png", "rectified_image_width_pixels":1700, "rectified_image_height_pixels":2200 } } ],

Die letzte Entität, die über die Standardausgabe extrahiert wird, ist „pages“. Dies ist mit Text-Entitäten identisch, enthält aber zusätzlich Seitenzahlen für die auf der Seite erkannte Seitenzahl.

"text_lines":[ { "id":"line_id", "text":"line text", "reading_order":1, "page_index":0, "locations":{ "page_index":0, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } } } ],
"text_words":[ { "id":"word_id", "text":"word text", "line_id":"line_id", "reading_order":1, "page_index":0, "locations":{ "page_index":0, "bounding_box":{ "left":0, "top":0, "width":1, "height":1 } } } ]

Diese letzten beiden Elemente beziehen sich auf einzelne Textbereiche. Die Granularität auf Wortebene gibt für jedes Wort eine Antwort zurück, während bei der Standardausgabe nur Textzeilen angezeigt werden.

JSON für zusätzliche Dateiformat-Metadaten

Wenn Sie Ihre zusätzlichen Dateien über das Flag „Zusätzliche Dateiformate“ erhalten, erhalten Sie eine JSON-Datei für alle entschlüsselten Bilder, die extrahiert wurden. BDA korrigiert gedrehte Bilder, indem es eine Homographie verwendet, um das Bild in einem 90-Grad-Winkel zu drehen. Ein JSON-Beispiel finden Sie unten:

"asset_metadata": { "rectified_image": "s3://bucket/prefix.png", "rectified_image_width_pixels": 1700, "rectified_image_height_pixels": 2200, "corners": [ [ 0.006980135689736235, -0.061692718505859376 ], [ 1.10847711439684, 0.00673927116394043 ], [ 0.994479346419327, 1.050548828125 ], [ -0.11249661383904497, 0.9942819010416667 ] ] }

Ecken stehen für die erkannten Ecken eines Bilds, anhand derer eine Homographie des Dokuments erstellt wird. Diese Homographie wird verwendet, um das Bild zu drehen und gleichzeitig seine anderen Eigenschaften beizubehalten.