Lokální nasazení olmOCR: Zjednodušte si zpracování PDF!

Lokální nasazení olmOCR: Zjednodušte si zpracování PDF!

Author

OLMOCR Team

1. března 2025

Lokální nasazení olmOCR: Zjednodušte si zpracování PDF!

olmOCR Logo

Všichni, kdo pracujete s PDF dokumenty, zbystřete! Dnes vám představím úžasný nástroj – olmOCR, který umožňuje jazykovým modelům snadno číst PDF soubory s jakýmkoliv rozložením. Ať už se jedná o akademické práce nebo složité tabulky, olmOCR si s nimi poradí. A co je nejlepší? Podporuje lokální nasazení, takže vaše data jsou v bezpečí! Níže vás provedu krok za krokem instalací a použitím 👇


🛠️ Příprava: Instalace závislostí

Nejprve musíme nainstalovat několik systémových závislostí (příklad pro Ubuntu):

# Instalace všech potřebných balíčků
sudo apt-get update
sudo apt-get install poppler-utils ttf-mscorefonts-installer msttcorefonts fonts-crosextra-caladea fonts-crosextra-carlito gsfonts lcdf-typetools

💡 Tip: Pokud se během instalace zobrazí licenční smlouva pro fonty, stiskněte klávesu TAB a vyberte <Yes> pro potvrzení!


🌱 Vytvoření Python prostředí

Doporučuji použít conda pro správu prostředí:

conda create -n olmocr python=3.11
conda activate olmocr

# Klonování repozitáře a instalace
git clone https://github.com/allenai/olmocr.git
cd olmocr
pip install -e .

⚡ Instalace komponent pro akceleraci

Chcete využít GPU akceleraci? Tyto dva příkazy jsou nezbytné:

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/

🚀 Rychlý start: Konverze PDF v praxi

Konverze jednoho souboru

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

Hromadné zpracování

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

Výsledky konverze se uloží do souborů JSONL v adresáři ./localworkspace/results. Pro zobrazení použijte tento příkaz:

cat localworkspace/results/output_*.jsonl

👀 Nástroj pro vizuální porovnání

Chcete vizuálně porovnat původní PDF a výsledek konverze? Vyzkoušejte toto:

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

Otevřete soubor HTML v adresáři dolma_previews, který se vygeneruje. Uvidíte porovnání, jako je toto 👇

Příklad vizuálního porovnání


🧰 Pokročilé možnosti

Zpracování milionů PDF

Pro zpracování velkého množství PDF souborů v podnikovém prostředí můžete použít cluster AWS:

# Inicializace na prvním uzlu
python -m olmocr.pipeline s3://my_bucket/workspace --pdfs s3://my_bucket/pdfs/*.pdf

# Připojení dalších uzlů ke clusteru
python -m olmocr.pipeline s3://my_bucket/workspace

Zobrazení všech parametrů

python -m olmocr.pipeline --help

💻 Pro uživatele Dockeru

Oficiální Dockerfile je k dispozici, takže si můžete jednoduše stáhnout image:

FROM allenai/olmocr-inference:latest
# Podrobnosti o použití naleznete v dokumentaci projektu.
# Odkaz:
https://github.com/allenai/olmocr/blob/main/scripts/beaker/Dockerfile-inference

❓ Často kladené otázky

  1. Co dělat, když se zobrazí chyba GPU?
    Zkontrolujte ovladače grafické karty a verzi CUDA. Doporučujeme používat novější karty, jako jsou RTX 4090/L40S/A100/H100.

  2. Je podporováno zpracování PDF v češtině?
    V současné době je optimalizováno pro anglické dokumenty, ale můžete vyzkoušet jiné jazyky pomocí parametru --apply_filter.

  3. Nedostatek místa na disku?
    Ujistěte se, že máte alespoň 30 GB volného místa. Pro zpracování velkých souborů doporučujeme použít SSD.


👏 Poděkování

olmOCR byl vyvinut Allenovým institutem pro umělou inteligenci (AI2) a je licencován pod Apache 2.0. Zvláštní poděkování patří vývojovému týmu (úplný seznam přispěvatelů).

Vyzkoušejte to hned teď! Pokud narazíte na nějaké problémy, neváhejte se zeptat v komunitě Discord 🎉