Extrahieren Sie Text, um hochwertige PDF-Geschäftsdokumente in ein einfacheres Dateiformat umzuwandeln, das von KI-Modellen verwendet werden kann, oder um wichtige Informationen aus Dokumenten wie Verträgen zu finden und zu isolieren.
Entwicklungsmöglichkeiten
Copy link to section
Sie können Text aus Dokumenten extrahieren, indem Sie diese Programmiermethoden verwenden:
Die Vereinfachung Ihrer Geschäftsdokumente auf diese Weise ist besonders nützlich für abrufgestützte Generierungsaufgaben, bei denen Sie Informationen finden möchten, die für eine Benutzeranfrage relevant sind, und diese in die Eingabe für ein Basismodell einbeziehen möchten. Durch die Einbeziehung genauer Kontextinformationen in die Modelleingabe kann das Fundamentmodell sachliche und aktuelle Informationen in die Modellausgabe integrieren. Weitere Informationen finden Sie unter Retrieval-augmented generation (RAG).
Die Textextraktion ist auch für Anwendungsfälle nützlich, bei denen Sie bestimmte Entitäten oder Kategorien von Informationen aus einem Dokument basierend auf der Dokumentstruktur extrahieren möchten.
Python
Copy link to section
Sie können Text aus Dateien in IBM watsonx.ai programmgesteuert extrahieren, indem Sie die Python -Bibliothek verwenden.
Sie können Text aus Dateien in IBM watsonx.ai programmgesteuert extrahieren, indem Sie das Node.js SDK verwenden. Weitere Informationen können Sie über die folgenden Links aufrufen:
Sie können die Dokumenttextextraktionsmethode der watsonx.ai REST-API verwenden, um stark strukturierte PDF-Dateien mit Diagrammen, Bildern und Tabellen in ein Dateiformat zu konvertieren, das sich leichter programmatisch verarbeiten lässt, z. B. Markdown oder JSON.
Die Textextraktions-API wendet die von IBM entwickelte Technologie zum Verstehen natürlicher Sprache an, um Dokumentstrukturen zu erkennen.
Die Textextraktion ist ein asynchroner Prozess, bei dem eine Datei nach der anderen konvertiert wird. Sie können parallele Methodenanforderungen stellen, um Text aus einer Reihe von Dokumenten zu extrahieren.
Die Textextraktion ist nur bei kostenpflichtigen Tarifen verfügbar. Die Abrechnung erfolgt nach der Anzahl der bearbeiteten Seiten. Weitere Informationen finden Sie unter Abrechnungsdetails für generative KI-Assets.
Eine Aufgabenberechtigung ist ein API-Schlüssel, der zur Authentifizierung von lang laufenden Aufträgen verwendet wird, die durch Schritte gestartet werden, die Sie während des Textextraktionsverfahrens durchführen. Sie müssen die Berechtigung für die Aufgabe nicht in der API-Anfrage angeben. Ein von Ihnen erstellter Aufgaben-Berechtigungsnachweis muss im Berechtigungsnachweis-Dienst für Ihre user_id und account_id vorhanden sein. Siehe Erstellen von Berechtigungsnachweisen für Aufgaben.
Wenn Sie eine Textextraktionsanforderung übermitteln, schließen Sie eine Nutzlast ein, die Konfigurationsdetails für den Textextraktionsvorgang angibt. Entscheiden Sie sich für die folgenden Optionen, damit Sie im Anforderungskörper Parameter festlegen können, die Ihren Konfigurationswünschen entsprechen:
Die Textextraktionsmethode erfordert, dass die Datei, aus der Sie den Text extrahieren möchten, als Verbindungs-Asset in Ihrem Projekt gespeichert ist und dann über ihre Verbindungs-ID referenziert wird. Weitere Informationen finden Sie unter Verwaltung Ihrer Dokumente.
Unterstützte Dateitypen
Copy link to section
Sie können die API verwenden, um Text aus den folgenden Dateitypen zu extrahieren:
PDF-Datei
GIF
JPG
PNG
TIFF
Sie können den extrahierten Text in den folgenden Formaten speichern:
JSON
Markdown
Unterstützte Sprachen
Copy link to section
Die Fähigkeit, Text aus Bildern zu extrahieren, wird als optische Zeichenerkennung (OCR) bezeichnet. Diese Funktion ist nützlich, um Informationen zu erhalten, die in Bildern, Diagrammen oder in Text eingebettet sind, z. B. in gescannten PDF-Dateien.
Obwohl die optische Zeichenerkennung Text aus verrauschten Bildern extrahieren kann, muss die Qualität der Bilddateien die Mindestanforderung von 80 DPI (dots per inch) erfüllen.
Wenn das Dokument mit den Bildern, das Sie konvertieren möchten, in einer anderen Sprache als Englisch vorliegt, müssen Sie die Sprache durch ihren ISO 639-Sprachcode im Parameter language_list Ihrer Anfrage angeben.
"languages_list":["fr"]
Copy to clipboardIn die Zwischenablage kopiert
Wenn das Dokument mehrere Sprachen enthält, ist jede Sprache einzeln aufzuführen. Die optische Zeichenerkennung kann Bilder in einem gemischtsprachigen Dokument nur dann umwandeln, wenn die Sprachen eine gemeinsame Schrift haben. Sie können zum Beispiel Text aus Bildern in einem Dokument mit einer Mischung aus englischem und französischem Text extrahieren, da beide Sprachen auf Latein basieren. Sie können OCR jedoch nicht verwenden, um Text aus Bildern in einem Dokument zu extrahieren, das sowohl japanischen als auch englischen Text enthält.
Die optische Zeichenerkennung kann Text aus Bildern in Dokumenten extrahieren, die in den folgenden Sprachen verfasst sind:
Sprache
ISO 639-Sprachcode
Script
Chinesisch (vereinfacht)
zh-CN
Chinesisch
Chinesisch (traditionell)
zh-TW
Chinesisch
Dänisch
da
Lateinischer Zeichensatz
Niederländisch
nl
Lateinischer Zeichensatz
Englisch
en
Lateinischer Zeichensatz
Englische Handschrift
en_hw
Lateinischer Zeichensatz
Finnisch
fi
Lateinischer Zeichensatz
Französisch
fr
Lateinischer Zeichensatz
Deutsch
de
Lateinischer Zeichensatz
Griechisch
el
Griechisch
Hebräisch
he
Hebräisch
Italienisch
it
Lateinischer Zeichensatz
Japanisch
ja
Japanisch
Koreanisch
ko
Koreanisch
Norwegisch (Bokmål)
nb
Lateinischer Zeichensatz
Norwegisch (Nynorsk)
nn
Lateinischer Zeichensatz
Polnisch
pl
Lateinischer Zeichensatz
Portugiesisch
pt
Lateinischer Zeichensatz
Spanisch
es
Lateinischer Zeichensatz
Schwedisch
sv
Lateinischer Zeichensatz
Extrahieren von Text aus Tabellen
Copy link to section
Konvertieren Sie tabellarische Daten in einem Dokument in verbrauchbaren Text, der die Tabelleninformationen enthält. Viele große Sprachmodelle haben Schwierigkeiten, tabellarische Informationen korrekt zu interpretieren.
Um die Tabellenkonvertierung zu aktivieren, geben Sie den folgenden Parameter in Ihrer Anfrage an.
"steps":{"tables_processing":{"enabled":true}}
Copy to clipboardIn die Zwischenablage kopiert
Auswahl des Ausgabedateiformats
Copy link to section
Standardmäßig wird der extrahierte Text in JSON-Syntax geschrieben. Wenn Sie möchten, dass der extrahierte Text stattdessen in Markdown geschrieben wird, geben Sie den folgenden Parameter im API-Anforderungstext an:
"assembly_md":{}
Copy to clipboardIn die Zwischenablage kopiert
Verwaltung Ihrer Dokumente
Copy link to section
Sie fügen die Dokumente, die Sie verarbeiten möchten, in IBM Cloud Object Storage ein, damit Sie sie über die API referenzieren können.
Es werden nur Verbindungs-Assets unterstützt, die das Schlüsselpaar Access Key und Secret Key für Anmeldeinformationen verwenden. Weitere Informationen zum Einrichten der Verbindung finden Sie unter Referenzierung von Dateien über die API.
Sie referenzieren die Datei, die Sie zu IBM Cloud Object Storage hinzufügen, zum Beispiel wie folgt:
Das folgende Diagramm zeigt den Workflow, den Sie verwenden, um mit der Textextraktions-API strukturelle Informationen über ein Geschäftsdokument zu extrahieren.
Vorgehensweise
Copy link to section
Befolgen Sie diese allgemeinen Schritte, um mit der REST-API Text aus einem Geschäftsdokument zu extrahieren:
Fügen Sie die Datei, aus der Sie den Text extrahieren möchten, zu einem IBM Cloud Object Storage Bucket hinzu und definieren Sie dann eine Verbindung von Ihrem watsonx.ai Projekt zu der IBM Cloud Object Storage Service-Instanz.
Verwenden Sie die Methode Start a text extraction request, um den Textextraktionsprozess zu starten.
Beachten Sie die ID, die im Feld metadata.id zurückgegeben wird. Sie verwenden diese ID als Extraktions-ID, um den Status Ihres Antrags im nächsten Schritt zu überprüfen.
Verwenden Sie die Funktion Ergebnisse der Anfrage abrufen, um den Status Ihrer Anfrage zu überprüfen.
Die Überprüfung des Status ist die einzige Möglichkeit, um herauszufinden, ob der Prozess aus irgendeinem Grund fehlgeschlagen ist.
Wenn der Status Completed ist, ist die extrahierte Textdatei im angegebenen IBM Cloud Object Storage Bucket verfügbar.
Laden Sie die generierte Datei von Cloud Object Storage herunter.
Anforderungsbeispiel
Copy link to section
Mit dem folgenden Befehl wird zum Beispiel eine Anforderung zum Extrahieren von Text aus der Datei " retail_guidebook.pdf und zum Speichern im Markdown-Format übermittelt.
Copy to clipboardIn die Zwischenablage kopiertShow more
Kopieren Sie aus der Antwort das metadata.id, beispielsweise 64162e0a-b05d-4ba6-a688-422893f58663. Geben Sie diese ID in dem Endpunkt an, den Sie verwenden, um den Status des Extraktionsprozesses zu überprüfen.
Der extrahierte Text wird in eine Markdown-Datei mit dem Namen geschrieben, den Sie im Feld " results_reference.location.file_name angegeben haben.
Das Markdown erfasst Strukturen im Dokument, wie Abschnitte und Tabellen. Das folgende Bild zeigt zum Beispiel, wie eine Tabelle aus der ursprünglichen PDF-Datei nach der Extraktion des Textes in Markdown dargestellt wird. Eine Vorschau der Markdown-Tabelle ist enthalten, um zu zeigen, dass der Text der Originaltabelle in der PDF-Datei nach der Extraktion intakt bleibt.
Beispiel JSON-Ausgabe
Copy link to section
Wenn Text in eine JSON-Datei extrahiert wird, enthält die resultierende Datei Details über verschiedene Datenstrukturen im Dokument wie Abschnitte, Absätze, Tabellenstrukturen, Token und mehr.
Verwendung des Textes, den Sie aus der PDF-Datei extrahiert haben
Copy link to section
Sie können die generierte Markdown-Datei in eine Textdatei umwandeln, indem Sie die Dateierweiterung von " .md in " .txt ändern. Die resultierende Textdatei enthält die Markdown-Tags. Wenn Sie das Tagging entfernen wollen, können Sie eine Parser-Bibliothek verwenden, um die Tags zu finden und zu konvertieren.
Sie können eine JSON-Prozessorbibliothek verwenden, um Text aus der generierten JSON-Datei zu extrahieren und als reinen Text zu speichern. Der folgende Befehl extrahiert zum Beispiel den Text aus jedem Token für alle Strukturen im Dokument und speichert den Text in einer Datei mit dem Namen parsed_output_text.txt:
Hinweis: Dieser Befehl verwendet jq, einen JSON-Prozessor für die Befehlszeile, der separat installiert werden muss.
Nachdem Sie die generierte Datei in eine TXT-Datei konvertiert haben, können Sie den extrahierten Text auf folgende Weise als Kontextinformation für eine Eingabeaufforderung für ein Fundamentmodell verwenden:
Verweisen Sie auf den extrahierten Text aus einem Python.