


Extrahieren von Daten aus schwierigen PDFs mit Google Gemini in Python-Sprache
In diesem Leitfaden zeige ich Ihnen, wie Sie mithilfe von Vision-Language-Modellen (VLMs) wie Gemini Flash oder GPT-4o strukturierte Daten aus PDFs extrahieren.
Gemini, Googles neueste Serie von Vision-Language-Modellen, hat Spitzenleistungen beim Text- und Bildverständnis gezeigt. Diese verbesserte multimodale Fähigkeit und das lange Kontextfenster machen es besonders nützlich für die Verarbeitung visuell komplexer PDF-Daten, mit denen herkömmliche Extraktionsmodelle Schwierigkeiten haben, wie z. B. Abbildungen, Diagramme, Tabellen und Diagramme.
Auf diese Weise können Sie ganz einfach Ihr eigenes Datenextraktionstool für die visuelle Datei- und Webextraktion erstellen. So geht's:
Das lange Kontextfenster und die multimodale Fähigkeit von Gemini machen es besonders nützlich für die Verarbeitung visuell komplexer PDF-Daten, bei denen herkömmliche Extraktionsmodelle Schwierigkeiten haben.
Einrichten Ihrer Umgebung
Bevor wir uns mit der Extraktion befassen, richten wir unsere Entwicklungsumgebung ein. In dieser Anleitung wird davon ausgegangen, dass Sie Python auf Ihrem System installiert haben. Wenn nicht, laden Sie es von https://www.python.org/downloads/
herunter und installieren Sie es⚠️ Beachten Sie, dass Sie, wenn Sie Python nicht verwenden möchten, die Cloud-Plattform unter thepi.pe verwenden können, um Ihre Dateien hochzuladen und Ihr Ergebnis als CSV herunterzuladen, ohne Code schreiben zu müssen.
Installieren Sie die erforderlichen Bibliotheken
Öffnen Sie Ihr Terminal oder Ihre Eingabeaufforderung und führen Sie die folgenden Befehle aus:
pip install git+https://github.com/emcf/thepipe pip install pandas
Für Python-Neulinge: pip ist das Paketinstallationsprogramm für Python, und diese Befehle laden die erforderlichen Bibliotheken herunter und installieren sie.
Richten Sie Ihren API-Schlüssel ein
Um die Pipe nutzen zu können, benötigen Sie einen API-Schlüssel.
Haftungsausschluss: Während thepi.pe ein kostenloses Open-Source-Tool ist, kostet die API etwa 0,00002 US-Dollar pro Token. Wenn Sie solche Kosten vermeiden möchten, schauen Sie sich die Anleitung zur lokalen Einrichtung auf GitHub an. Beachten Sie, dass Sie weiterhin den LLM-Anbieter Ihrer Wahl bezahlen müssen.
So erhalten und richten Sie es ein:
- Besuchen Sie https://thepi.pe/platform/
- Erstellen Sie ein Konto oder melden Sie sich an
- Suchen Sie Ihren API-Schlüssel auf der Einstellungsseite
Jetzt müssen Sie dies als Umgebungsvariable festlegen. Der Vorgang variiert je nach Betriebssystem:
- Kopieren Sie den API-Schlüssel aus dem Einstellungsmenü auf der pi.pe-Plattform
Für Windows:
- Suchen Sie im Startmenü nach „Umgebungsvariablen“
- Klicken Sie auf „Systemumgebungsvariablen bearbeiten“
- Klicken Sie auf die Schaltfläche „Umgebungsvariablen“
- Klicken Sie unter „Benutzervariablen“ auf „Neu“
- Legen Sie den Variablennamen als THEPIPE_API_KEY und den Wert als Ihren API-Schlüssel fest
- Klicken Sie zum Speichern auf „OK“
Für macOS und Linux:
Öffnen Sie Ihr Terminal und fügen Sie diese Zeile zu Ihrer Shell-Konfigurationsdatei hinzu (z. B. ~/.bashrc oder ~/.zshrc):
export THEPIPE_API_KEY=your_api_key_here
Dann laden Sie Ihre Konfiguration neu:
source ~/.bashrc # or ~/.zshrc
Definieren Ihres Extraktionsschemas
Der Schlüssel zu einer erfolgreichen Extraktion liegt in der Definition eines klaren Schemas für die Daten, die Sie extrahieren möchten. Nehmen wir an, wir extrahieren Daten aus einem Stücklistendokument:
Ein Beispiel einer Seite aus dem Stücklistendokument. Die Daten auf jeder Seite sind unabhängig von den anderen Seiten, daher führen wir unsere Extraktion „pro Seite“ durch. Pro Seite müssen mehrere Daten extrahiert werden, daher setzen wir mehrere Extraktionen auf „True“
Wenn wir uns die Spaltennamen ansehen, möchten wir vielleicht ein Schema wie dieses extrahieren:
schema = { "item": "string", "unit": "string", "quantity": "int", }
Sie können das Schema auf der pi.pe-Plattform nach Ihren Wünschen ändern. Wenn Sie auf „Schema anzeigen“ klicken, erhalten Sie ein Schema, das Sie zur Verwendung mit der Python-API kopieren und einfügen können
Extrahieren von Daten aus PDFs
Nun verwenden wir extract_from_file, um Daten aus einer PDF-Datei abzurufen:
from thepipe.extract import extract_from_file results = extract_from_file( file_path = "bill_of_quantity.pdf", schema = schema, ai_model = "google/gemini-flash-1.5b", chunking_method = "chunk_by_page" )
Hier haben wir chunking_method="chunk_by_page", weil wir jede Seite einzeln an das KI-Modell senden möchten (das PDF ist zu groß, um alle auf einmal einzuspeisen). Wir setzen auch multiple_extractions=True, da die PDF-Seiten jeweils mehrere Datenzeilen enthalten. So sieht eine Seite aus dem PDF aus:
Die Ergebnisse der Extraktion für die Stücklisten-PDF, wie auf der thepi.pe-Plattform angezeigt
Processing the Results
The extraction results are returned as a list of dictionaries. We can process these results to create a pandas DataFrame:
import pandas as pd df = pd.DataFrame(results) # Display the first few rows of the DataFrame print(df.head())
This creates a DataFrame with all the extracted information, including textual content and descriptions of visual elements like figures and tables.
Exporting to Different Formats
Now that we have our data in a DataFrame, we can easily export it to various formats. Here are some options:
Exporting to Excel
df.to_excel("extracted_research_data.xlsx", index=False, sheet_name="Research Data")
This creates an Excel file named "extracted_research_data.xlsx" with a sheet named "Research Data". The index=False parameter prevents the DataFrame index from being included as a separate column.
Exporting to CSV
If you prefer a simpler format, you can export to CSV:
df.to_csv("extracted_research_data.csv", index=False)
This creates a CSV file that can be opened in Excel or any text editor.
Ending Notes
The key to successful extraction lies in defining a clear schema and utilizing the AI model's multimodal capabilities. As you become more comfortable with these techniques, you can explore more advanced features like custom chunking methods, custom extraction prompts, and integrating the extraction process into larger data pipelines.
Das obige ist der detaillierte Inhalt vonExtrahieren von Daten aus schwierigen PDFs mit Google Gemini in Python-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











Python ist leichter zu lernen und zu verwenden, während C leistungsfähiger, aber komplexer ist. 1. Python -Syntax ist prägnant und für Anfänger geeignet. Durch die dynamische Tippen und die automatische Speicherverwaltung können Sie die Verwendung einfach zu verwenden, kann jedoch zur Laufzeitfehler führen. 2.C bietet Steuerung und erweiterte Funktionen auf niedrigem Niveau, geeignet für Hochleistungsanwendungen, hat jedoch einen hohen Lernschwellenwert und erfordert manuellem Speicher und Typensicherheitsmanagement.

Ist es genug, um Python für zwei Stunden am Tag zu lernen? Es hängt von Ihren Zielen und Lernmethoden ab. 1) Entwickeln Sie einen klaren Lernplan, 2) Wählen Sie geeignete Lernressourcen und -methoden aus, 3) praktizieren und prüfen und konsolidieren Sie praktische Praxis und Überprüfung und konsolidieren Sie und Sie können die Grundkenntnisse und die erweiterten Funktionen von Python während dieser Zeit nach und nach beherrschen.

Python ist in der Entwicklungseffizienz besser als C, aber C ist in der Ausführungsleistung höher. 1. Pythons prägnante Syntax und reiche Bibliotheken verbessern die Entwicklungseffizienz. 2. Die Kompilierungsmerkmale von Compilation und die Hardwarekontrolle verbessern die Ausführungsleistung. Bei einer Auswahl müssen Sie die Entwicklungsgeschwindigkeit und die Ausführungseffizienz basierend auf den Projektanforderungen abwägen.

Python und C haben jeweils ihre eigenen Vorteile, und die Wahl sollte auf Projektanforderungen beruhen. 1) Python ist aufgrund seiner prägnanten Syntax und der dynamischen Typisierung für die schnelle Entwicklung und Datenverarbeitung geeignet. 2) C ist aufgrund seiner statischen Tipp- und manuellen Speicherverwaltung für hohe Leistung und Systemprogrammierung geeignet.

PythonlistsarePartThestandardlibrary, whilearraysarenot.listarebuilt-in, vielseitig und UNDUSEDFORSPORINGECollections, während dieArrayRay-thearrayModulei und loses und loses und losesaluseduetolimitedFunctionality.

Python zeichnet sich in Automatisierung, Skript und Aufgabenverwaltung aus. 1) Automatisierung: Die Sicherungssicherung wird durch Standardbibliotheken wie OS und Shutil realisiert. 2) Skriptschreiben: Verwenden Sie die PSUTIL -Bibliothek, um die Systemressourcen zu überwachen. 3) Aufgabenverwaltung: Verwenden Sie die Zeitplanbibliothek, um Aufgaben zu planen. Die Benutzerfreundlichkeit von Python und die Unterstützung der reichhaltigen Bibliothek machen es zum bevorzugten Werkzeug in diesen Bereichen.

Zu den Anwendungen von Python im wissenschaftlichen Computer gehören Datenanalyse, maschinelles Lernen, numerische Simulation und Visualisierung. 1.Numpy bietet effiziente mehrdimensionale Arrays und mathematische Funktionen. 2. Scipy erweitert die Numpy -Funktionalität und bietet Optimierungs- und lineare Algebra -Tools. 3.. Pandas wird zur Datenverarbeitung und -analyse verwendet. 4.Matplotlib wird verwendet, um verschiedene Grafiken und visuelle Ergebnisse zu erzeugen.

Zu den wichtigsten Anwendungen von Python in der Webentwicklung gehören die Verwendung von Django- und Flask -Frameworks, API -Entwicklung, Datenanalyse und Visualisierung, maschinelles Lernen und KI sowie Leistungsoptimierung. 1. Django und Flask Framework: Django eignet sich für die schnelle Entwicklung komplexer Anwendungen, und Flask eignet sich für kleine oder hochmobile Projekte. 2. API -Entwicklung: Verwenden Sie Flask oder Djangorestframework, um RESTFUFFUPI zu erstellen. 3. Datenanalyse und Visualisierung: Verwenden Sie Python, um Daten zu verarbeiten und über die Webschnittstelle anzuzeigen. 4. Maschinelles Lernen und KI: Python wird verwendet, um intelligente Webanwendungen zu erstellen. 5. Leistungsoptimierung: optimiert durch asynchrones Programmieren, Caching und Code
