Guia Prático: Implante o olmOCR Localmente e Simplifique o Processamento de PDF!

Guia Prático: Implante o olmOCR Localmente e Simplifique o Processamento de PDF!

Author

OLMOCR Team

1 de março de 2025

Guia Prático: Implante o olmOCR Localmente e Simplifique o Processamento de PDF!

olmOCR Logo

Atenção, pessoal que lida com documentos PDF! Hoje, apresento uma ferramenta poderosa: olmOCR. Ele permite que modelos de linguagem leiam facilmente PDFs com layouts complexos! Desde artigos acadêmicos até tabelas intrincadas, ele resolve tudo. E o melhor: suporta implantação local, garantindo a segurança dos seus dados! Abaixo, guio você passo a passo na instalação e uso 👇


🛠️ Preparação: Instalando as Dependências

Primeiro, precisamos instalar algumas dependências no nível do sistema (exemplo com Ubuntu):

# Instalação completa com um comando
sudo apt-get update
sudo apt-get install poppler-utils ttf-mscorefonts-installer msttcorefonts fonts-crosextra-caladea fonts-crosextra-carlito gsfonts lcdf-typetools

💡 Dica: Se encontrar um contrato de licença de fonte durante a instalação, pressione a tecla TAB para selecionar <Yes> e confirmar!


🌱 Criando um Ambiente Python

Recomendamos usar o conda para gerenciar o ambiente:

conda create -n olmocr python=3.11
conda activate olmocr

# Clone o repositório e instale
git clone https://github.com/allenai/olmocr.git
cd olmocr
pip install -e .

⚡ Instalando Componentes de Aceleração

Quer usar a aceleração da GPU? Estes dois comandos são essenciais:

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/

🚀 Experiência Rápida: Conversão de PDF na Prática

Conversão de um Único Arquivo

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

Processamento em Lote

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

Os resultados da conversão serão salvos em um arquivo JSONL no diretório ./localworkspace/results. Use este comando para visualizá-los:

cat localworkspace/results/output_*.jsonl

👀 Ferramenta de Comparação Visual

Quer comparar visualmente o PDF original com os resultados da conversão? Experimente isto:

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

Abra o arquivo HTML gerado no diretório dolma_previews e você verá uma interface de comparação como esta 👇

Exemplo de comparação visual


🧰 Recursos Avançados

Processamento de Milhões de PDFs

Para processamento de PDF em grande escala empresarial, você pode usar um cluster AWS:

# Inicialização do primeiro 
python -m olmocr.pipeline s3://my_bucket/workspace --pdfs s3://my_bucket/pdfs/*.pdf

# Outros nós se juntam ao cluster
python -m olmocr.pipeline s3://my_bucket/workspace

Ver Parâmetros Completos

python -m olmocr.pipeline --help

💻 Exclusivo para Usuários Docker

Um Dockerfile oficial pronto para uso é fornecido, tornando ainda mais fácil obter a imagem diretamente:

FROM allenai/olmocr-inference:latest
# Para uso detalhado, consulte a documentação do projeto
# Link abaixo:
https://github.com/allenai/olmocr/blob/main/scripts/beaker/Dockerfile-inference

❓ Perguntas Frequentes

  1. O que fazer se houver um erro de GPU?
    Verifique os drivers da placa gráfica e a versão do CUDA. Recomenda-se usar placas mais recentes, como RTX 4090/L40S/A100/H100.

  2. PDFs em português são suportados?
    Atualmente, a otimização é principalmente para documentos em inglês, mas você pode tentar outros idiomas usando o parâmetro --apply_filter.

  3. Espaço em disco insuficiente?
    Reserve pelo menos 30 GB de espaço. Para arquivos grandes, recomenda-se montar um SSD.


👏 Agradecimentos

O olmOCR é desenvolvido pelo Allen Institute for AI (AI2) e está sob a licença Apache 2.0. Agradecimentos especiais às contribuições da equipe de desenvolvimento (lista completa de contribuidores).

Experimente agora! Se tiver algum problema, junte-se à comunidade Discord para discutir ~ 🎉