olmOCRをローカルにデプロイしてPDF処理を簡単に!ステップバイステップガイド

OLMOCR Team
2025年3月1日
olmOCRをローカルにデプロイしてPDF処理を簡単に!ステップバイステップガイド
PDFドキュメントを扱う皆さん、注目です!今回は、言語モデルがあらゆる複雑なレイアウトのPDFを読み解くことを可能にする強力なツール、olmOCRをご紹介します。学術論文から複雑な表まで、あらゆるものを処理できます。さらに、ローカルデプロイに対応しているため、データのセキュリティも万全です!それでは、インストールと使用方法をステップバイステップで見ていきましょう👇
🛠️ 準備:依存パッケージのインストール
まず、システムレベルの依存関係をいくつかインストールします(Ubuntuの場合):
# 必要なパッケージを一括インストール
sudo apt-get update
sudo apt-get install poppler-utils ttf-mscorefonts-installer msttcorefonts fonts-crosextra-caladea fonts-crosextra-carlito gsfonts lcdf-typetools
💡 ヒント:インストール中にフォントのライセンス許諾が表示された場合は、TAB
キーで<Yes>
を選択して承認してください。
🌱 Python環境の作成
condaで環境を管理することをおすすめします:
conda create -n olmocr python=3.11
conda activate olmocr
# リポジトリをクローンしてインストール
git clone https://github.com/allenai/olmocr.git
cd olmocr
pip install -e .
⚡ 高速化コンポーネントのインストール
GPUアクセラレーションを使用したい場合は、次の2つのコマンドを実行してください:
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/
🚀 クイックスタート:PDF変換の実践
単一ファイルの変換
python -m olmocr.pipeline ./localworkspace --pdfs tests/gnarly_pdfs/horribleocr.pdf
バッチ処理
python -m olmocr.pipeline ./localworkspace --pdfs tests/gnarly_pdfs/*.pdf
変換結果は./localworkspace/results
ディレクトリ内のJSONLファイルに保存されます。次のコマンドで確認できます:
cat localworkspace/results/output_*.jsonl
👀 比較ビューア
元のPDFと変換結果を視覚的に比較したい場合は、次のコマンドを実行してください:
python -m olmocr.viewer.dolmaviewer localworkspace/results/output_*.jsonl
生成されたdolma_previews
ディレクトリ内のHTMLファイルを開くと、次のような比較画面が表示されます👇
🧰 高度な使い方
大規模PDF処理
企業レベルでの大量のPDF処理には、AWSクラスターを利用できます:
# 最初のノードで初期化
python -m olmocr.pipeline s3://my_bucket/workspace --pdfs s3://my_bucket/pdfs/*.pdf
# 他のノードをクラスターに参加させる
python -m olmocr.pipeline s3://my_bucket/workspace
全パラメーターの確認
python -m olmocr.pipeline --help
💻 Dockerユーザー向け
公式にDockerfileが提供されているため、イメージを直接利用することで手間を省けます:
FROM allenai/olmocr-inference:latest
# 詳細はプロジェクトドキュメントを参照してください
# リンクはこちら:
https://github.com/allenai/olmocr/blob/main/scripts/beaker/Dockerfile-inference
❓ よくある質問
-
GPUエラーが発生した場合の対処法は?
グラフィックボードのドライバーとCUDAのバージョンを確認してください。RTX 4090/L40S/A100/H100などの新しいカードの使用をおすすめします。 -
日本語のPDFはサポートされていますか?
現時点では主に英語のドキュメントに最適化されていますが、--apply_filter
パラメーターを使用することで他の言語も試すことができます。 -
ディスク容量が足りない場合は?
最低でも30GBの空き容量を確保してください。大きなファイルを処理する場合はSSDの使用をおすすめします。
👏 謝辞
olmOCRはアレン人工知能研究所(AI2)によって開発され、Apache 2.0ライセンスの下で公開されています。開発チームの貢献に感謝します(貢献者一覧)。
ぜひ試してみてください!質問がある場合は、Discordコミュニティで気軽に交流しましょう~🎉