Guida passo passo per l'installazione locale di olmOCR: Semplifica l'elaborazione dei PDF!

OLMOCR Team
1 marzo 2025
Guida passo passo per l'installazione locale di olmOCR: Semplifica l'elaborazione dei PDF!
Attenzione a tutti coloro che gestiscono documenti PDF! Oggi vi consiglio un potente strumento: olmOCR, che consente ai modelli linguistici di leggere facilmente PDF con layout complessi! Che si tratti di documenti accademici o tabelle complesse, può gestire tutto. La cosa migliore è che supporta l'installazione locale, garantendo la sicurezza dei dati! Di seguito, vi guiderò passo dopo passo attraverso l'installazione e l'utilizzo 👇
🛠️ Preparazione: Installazione delle dipendenze
Per prima cosa, dobbiamo installare alcune dipendenze a livello di sistema (prendendo Ubuntu come esempio):
# Installazione one-click di tutto il necessario
sudo apt-get update
sudo apt-get install poppler-utils ttf-mscorefonts-installer msttcorefonts fonts-crosextra-caladea fonts-crosextra-carlito gsfonts lcdf-typetools
💡 Suggerimento: Durante l'installazione, quando si incontra l'accordo di licenza dei font, premere il tasto TAB
per selezionare <Yes>
e confermare!
🌱 Creazione dell'ambiente Python
Si consiglia di utilizzare conda per gestire l'ambiente:
conda create -n olmocr python=3.11
conda activate olmocr
# Clonazione del repository e installazione
git clone https://github.com/allenai/olmocr.git
cd olmocr
pip install -e .
⚡ Installazione dei componenti di accelerazione
Vuoi utilizzare l'accelerazione GPU? Questi due comandi sono essenziali:
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/
🚀 Esperienza rapida: Conversione di PDF in pratica
Conversione di un singolo file
python -m olmocr.pipeline ./localworkspace --pdfs tests/gnarly_pdfs/horribleocr.pdf
Elaborazione in batch
python -m olmocr.pipeline ./localworkspace --pdfs tests/gnarly_pdfs/*.pdf
I risultati della conversione verranno salvati in un file JSONL nella directory ./localworkspace/results
. Utilizzare questo comando per visualizzarli:
cat localworkspace/results/output_*.jsonl
👀 Strumento di confronto visivo
Vuoi confrontare visivamente il PDF originale e i risultati della conversione? Prova questo:
python -m olmocr.viewer.dolmaviewer localworkspace/results/output_*.jsonl
Apri il file HTML nella directory dolma_previews
generata e vedrai un'interfaccia di confronto come questa 👇
🧰 Funzionalità avanzate
Elaborazione di milioni di PDF
Per l'elaborazione di PDF su larga scala a livello aziendale, è possibile utilizzare un cluster AWS:
# Inizializzazione del primo nodo
python -m olmocr.pipeline s3://my_bucket/workspace --pdfs s3://my_bucket/pdfs/*.pdf
# Altri nodi si uniscono al cluster
python -m olmocr.pipeline s3://my_bucket/workspace
Visualizzazione dei parametri completi
python -m olmocr.pipeline --help
💻 Esclusivo per gli utenti Docker
Viene fornito un Dockerfile ufficiale, che rende più semplice l'utilizzo diretto dell'immagine:
FROM allenai/olmocr-inference:latest
# Per l'utilizzo specifico, consultare la documentazione del progetto
# Il link è il seguente:
https://github.com/allenai/olmocr/blob/main/scripts/beaker/Dockerfile-inference
❓ Domande frequenti
-
Cosa fare in caso di errore della GPU?
Verificare il driver della scheda grafica e la versione di CUDA. Si consiglia di utilizzare schede recenti come RTX 4090/L40S/A100/H100. -
I PDF in cinese sono supportati?
Attualmente, l'ottimizzazione principale è per i documenti in inglese, ma è possibile provare altre lingue tramite il parametro--apply_filter
. -
Spazio su disco insufficiente?
Riservare almeno 30 GB di spazio. Per l'elaborazione di file di grandi dimensioni, si consiglia di montare un SSD.
👏 Ringraziamenti
olmOCR è sviluppato dall'Allen Institute for AI (AI2) ed è rilasciato sotto la licenza Apache 2.0. Un ringraziamento speciale va al team di sviluppo per il loro contributo (elenco completo dei contributori).
Provatelo subito! In caso di problemi, siete invitati a comunicare nella community Discord ~🎉