Schritt-für-Schritt-Anleitung zur lokalen Bereitstellung von olmOCR: Vereinfachen Sie die PDF-Verarbeitung!

Schritt-für-Schritt-Anleitung zur lokalen Bereitstellung von olmOCR: Vereinfachen Sie die PDF-Verarbeitung!

Author

OLMOCR Team

1. März 2025

Schritt-für-Schritt-Anleitung zur lokalen Bereitstellung von olmOCR: Vereinfachen Sie die PDF-Verarbeitung!

olmOCR Logo

An alle, die mit PDF-Dokumenten arbeiten: Achtung! Heute empfehle ich euch ein mächtiges Werkzeug – olmOCR! Es ermöglicht Sprachmodellen, PDFs mit den verrücktesten Layouts zu verstehen. Egal, ob es sich um wissenschaftliche Arbeiten oder komplexe Tabellen handelt, alles ist machbar. Das Beste daran ist, dass es die lokale Bereitstellung unterstützt, wodurch die Datensicherheit gewährleistet ist! Im Folgenden führe ich euch Schritt für Schritt durch die Installation und Verwendung 👇


🛠️ Vorbereitung: Installation der Abhängigkeiten

Zuerst müssen wir einige systemweite Abhängigkeiten installieren (am Beispiel von Ubuntu):

# Ein-Klick-Installation des Gesamtpakets
sudo apt-get update
sudo apt-get install poppler-utils ttf-mscorefonts-installer msttcorefonts fonts-crosextra-caladea fonts-crosextra-carlito gsfonts lcdf-typetools

💡 Kleiner Tipp: Wenn während der Installation Lizenzvereinbarungen für Schriftarten angezeigt werden, drücken Sie die TAB-Taste, um <Yes> auszuwählen und zu bestätigen!


🌱 Erstellen einer Python-Umgebung

Es wird empfohlen, die Umgebung mit conda zu verwalten:

conda create -n olmocr python=3.11
conda activate olmocr

# Repository klonen und installieren
git clone https://github.com/allenai/olmocr.git
cd olmocr
pip install -e .

⚡ Installation von Beschleunigungskomponenten

Möchten Sie die GPU-Beschleunigung nutzen? Diese beiden Befehlszeilen sind unerlässlich:

pip install sgl-kernel==0.0.3.post1 --force-reinstall --no-deps
pip install "sglang[all]==0.4.2" --find-links https://flashinfer.ai/whl/cu124/torch2.4/flashinfer/

🚀 Schnelle Erfahrung: PDF-Konvertierung in der Praxis

Konvertierung einer einzelnen Datei

python -m olmocr.pipeline ./localworkspace --pdfs tests/gnarly_pdfs/horribleocr.pdf

Stapelverarbeitung

python -m olmocr.pipeline ./localworkspace --pdfs tests/gnarly_pdfs/*.pdf

Die Konvertierungsergebnisse werden in JSONL-Dateien im Verzeichnis ./localworkspace/results gespeichert. Verwenden Sie diesen Befehl, um sie anzuzeigen:

cat localworkspace/results/output_*.jsonl

👀 Visualisierungs- und Vergleichstool

Möchten Sie das ursprüngliche PDF und die Konvertierungsergebnisse visuell vergleichen? Probieren Sie Folgendes aus:

python -m olmocr.viewer.dolmaviewer localworkspace/results/output_*.jsonl

Öffnen Sie die HTML-Dateien im generierten Verzeichnis dolma_previews. Sie sehen eine Vergleichsansicht wie diese 👇

Beispiel für einen visuellen Vergleich


🧰 Fortgeschrittene Methoden

Verarbeitung von Millionen von PDFs

Für die Verarbeitung großer Mengen von PDFs auf Unternehmensebene können Sie einen AWS-Cluster verwenden:

# Initialisierung des ersten Knotens
python -m olmocr.pipeline s3://my_bucket/workspace --pdfs s3://my_bucket/pdfs/*.pdf

# Andere Knoten treten dem Cluster bei
python -m olmocr.pipeline s3://my_bucket/workspace

Vollständige Parameter anzeigen

python -m olmocr.pipeline --help

💻 Exklusiv für Docker-Benutzer

Es gibt eine offizielle Dockerfile. Das direkte Abrufen des Images ist noch einfacher:

FROM allenai/olmocr-inference:latest
# Detaillierte Anweisungen finden Sie in der Projektdokumentation.
# Link wie folgt:
https://github.com/allenai/olmocr/blob/main/scripts/beaker/Dockerfile-inference

❓ Häufig gestellte Fragen

  1. Was tun bei GPU-Fehlern? Überprüfen Sie den Grafikkartentreiber und die CUDA-Version. Es wird empfohlen, neuere Karten wie RTX 4090/L40S/A100/H100 zu verwenden.

  2. Werden chinesische PDFs unterstützt? Derzeit ist die Optimierung hauptsächlich auf englische Dokumente ausgerichtet. Sie können jedoch mit dem Parameter --apply_filter andere Sprachen ausprobieren.

  3. Nicht genügend Speicherplatz? Reservieren Sie mindestens 30 GB Speicherplatz. Für die Verarbeitung großer Dateien wird die Verwendung einer SSD empfohlen.


👏 Danksagung

olmOCR wurde vom Allen Institute for AI (AI2) unter der Apache 2.0-Lizenz entwickelt. Besonderer Dank gilt dem Beitrag des Entwicklungsteams (Vollständige Liste der Mitwirkenden).

Probieren Sie es jetzt aus! Bei Fragen können Sie sich gerne in der Discord-Community austauschen. 🎉