pymupdf/pymupdf4llm

PyMuPDF4LLM

何を解決するか

PyMuPDF4LLM は複雑なドキュメント(PDF、EPUB など)を、Markdown、JSON、プレーンテキストなどのクリーンで構造化されたデータ形式に変換します。RAG パイプラインにおける「汚れたデータ」問題に特化しており、通常のテキスト抽出ツールが機能しない多カラムレイアウト、テーブル、スキャン済みページを処理します。GPU やクラウドベースの API を必要とせず、すべてをローカルで実行可能です。

動作方法

MuPDF C エンジンに基づいて構築されており、ドキュメントのレイアウトを分析してテキストの自然な読み順を再構成します。実際に読み取り不可能または画像ベースの領域にのみ光学文字認識(OCR)を適用するハイブリッド OCR 戦略を採用しており、全ドキュメント OCR と比較して処理時間を約 50% 節約できます。GitHub 互換の Markdown(GFM パイプテーブルを含む)、バウンディングボックスメタデータを含む構造化 JSON、またはベクトルストアへの直接インジェストに適したページ単位のチャンクとして出力可能です。

対象ユーザー

RAG(Retrieval-Augmented Generation)アプリケーションを開発する開発者、LLM 学習や埋め込み用データセットを準備するデータエンジニア、視覚ベースの LLM 抽出のコストを避けたいすべての人々。

特徴

  • マルチフォーマット出力: Markdown、JSON、プレーンテキストをサポート。
  • レイアウト対応抽出: 多カラムページを処理し、読み順を再構成。
  • ハイブリッド OCR: 画像で覆われた、または破損したテキスト領域にのみ OCR を適用。
  • RAG対応チャンキング: ベクトルストア用に完全なメタデータ付きのページ単位チャンクを提供。
  • フレームワーク統合: LlamaIndex および LangChain へのドロップインサポート。
  • 高効率性: 視覚ベース LLM アプローチと比較して 10~250 倍安価で、はるかに高速。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト