Trinn-for-trinn veiledning for lokal distribusjon av olmOCR: Gjør PDF-behandling superenkelt!

Trinn-for-trinn veiledning for lokal distribusjon av olmOCR: Gjør PDF-behandling superenkelt!

Author

OLMOCR Team

1. mars 2025

Trinn-for-trinn veiledning for lokal distribusjon av olmOCR: Gjør PDF-behandling superenkelt!

olmOCR Logo

Hei alle dere som jobber med PDF-dokumenter! I dag vil jeg anbefale et fantastisk verktøy – olmOCR – som gjør det enkelt for språkmodeller å lese alle slags rare PDF-formater! Enten det er akademiske artikler eller komplekse tabeller, kan det håndtere alt. Det beste er at det støtter lokal distribusjon, noe som sikrer datasikkerheten! Nedenfor vil jeg veilede deg trinn for trinn gjennom installasjon og bruk 👇


🛠️ Forberedelser: Installere avhengigheter

Først må vi installere noen systemavhengigheter (Ubuntu som eksempel):

# Ett-klikks installasjon av alt
sudo apt-get update
sudo apt-get install poppler-utils ttf-mscorefonts-installer msttcorefonts fonts-crosextra-caladea fonts-crosextra-carlito gsfonts lcdf-typetools

💡 Tips: Hvis du støter på en fontlisensavtale under installasjonen, trykk TAB for å velge <Yes> og bekrefte!


🌱 Opprette et Python-miljø

Anbefaler å bruke conda for å administrere miljøet:

conda create -n olmocr python=3.11
conda activate olmocr

# Klone depotet og installer
git clone https://github.com/allenai/olmocr.git
cd olmocr
pip install -e .

⚡ Installere akselerasjonskomponenter

Vil du bruke GPU-akselerasjon? Disse to kommandolinjene er essensielle:

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/

🚀 Rask opplevelse: Konvertere PDF-er i praksis

Konvertere én fil

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

Batchbehandling

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

Konverteringsresultatene lagres i JSONL-filer under katalogen ./localworkspace/results. Bruk denne kommandoen for å vise dem:

cat localworkspace/results/output_*.jsonl

👀 Visuelt sammenligningsverktøy

Vil du visuelt sammenligne den originale PDF-en med konverteringsresultatet? Prøv dette:

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

Åpne HTML-filen i den genererte dolma_previews-katalogen, og du vil se et slikt sammenligningsgrensesnitt 👇

Eksempel på visuell sammenligning


🧰 Avanserte funksjoner

Behandling av millioner av PDF-er

For storskala PDF-behandling i bedrifter, kan du bruke en AWS-klynge:

# Initialiser den første noden
python -m olmocr.pipeline s3://my_bucket/workspace --pdfs s3://my_bucket/pdfs/*.pdf

# Andre noder blir med i klyngen
python -m olmocr.pipeline s3://my_bucket/workspace

Se alle parametere

python -m olmocr.pipeline --help

💻 For Docker-entusiaster

Den offisielle Dockerfile er tilgjengelig, noe som gjør det enklere å hente imaget direkte:

FROM allenai/olmocr-inference:latest
# Se prosjektdokumentasjonen for detaljert bruk
# Link:
https://github.com/allenai/olmocr/blob/main/scripts/beaker/Dockerfile-inference

❓ Vanlige spørsmål

  1. Hva gjør jeg hvis jeg får en GPU-feil?
    Bekreft grafikkortdriveren og CUDA-versjonen. Det anbefales å bruke nyere kort som RTX 4090/L40S/A100/H100.

  2. Støttes kinesiske PDF-er?
    For øyeblikket er det hovedsakelig optimalisert for engelske dokumenter, men du kan prøve andre språk ved å bruke parameteren --apply_filter.

  3. Ikke nok diskplass? Sørg for at du har minst 30 GB ledig plass. Det anbefales å bruke en SSD for behandling av store filer.


👏 Anerkjennelse

olmOCR er utviklet av Allen Institute for Artificial Intelligence (AI2) og er lisensiert under Apache 2.0. Spesiell takk til utviklingsteamets bidrag (fullstendig liste over bidragsytere).

Prøv det nå! Hvis du støter på problemer, er du velkommen til å delta i Discord-fellesskapet for å diskutere ~🎉