Skip to content

Latest commit

 

History

History
327 lines (217 loc) · 12.2 KB

README_ja-JP.md

File metadata and controls

327 lines (217 loc) · 12.2 KB

Warning

このドキュメントはすでに古くなっています。最新版のドキュメントを参照してください:ENGLISH

MinerU

紹介

MinerUは、ワンストップのオープンソースで高品質なデータ抽出ツールであり、以下の主要な機能を含みます:

  • Magic-PDF PDFドキュメント抽出
  • Magic-Doc ウェブページと電子書籍の抽出

Magic-PDF

紹介

Magic-PDFは、PDFドキュメントをMarkdown形式に変換するためのツールであり、ローカルに保存されたファイルやS3プロトコルをサポートするオブジェクトストレージ上のファイルを処理することができます。

主な機能は以下の通りです:

  • 複数のフロントエンドモデル入力をサポート
  • ヘッダー、フッター、脚注、ページ番号の削除
  • 人間が読みやすいレイアウトフォーマット
  • 見出し、段落、リストなど、元のドキュメントの構造とフォーマットを保持
  • 画像や表を抽出してmarkdown内に表示
  • 数式をLaTeX形式に変換
  • 文字化けしたPDFの自動検出と変換
  • CPUおよびGPU環境に対応
  • Windows、Linux、macOSプラットフォームに対応
pdf_zh_cn.mp4

プロジェクト全景

プロジェクト全景

フローチャート

フローチャート

依存リポジトリ

入門ガイド

要件

  • Python >= 3.9

依存関係の競合を避けるために、仮想環境の使用をお勧めします。venvとcondaの両方が適しています。 例:

conda create -n MinerU python=3.10
conda activate MinerU

インストールと設定

1. Magic-PDFのインストール

1.依存パッケージのインストール

フル機能パッケージはdetectron2に依存しており、コンパイルインストールが必要です。
自分でコンパイルする必要がある場合は、facebookresearch/detectron2#5114 を参照してください。
または、私たちの事前コンパイルされたwhlパッケージを直接使用できます(Python 3.10に限定):

pip install detectron2 --extra-index-url https://wheels.myhloli.com

2.pipを使用してフル機能パッケージをインストールします

注意:pipでインストールされたパッケージはCPUのみをサポートし、クイックテストに最適です。

CUDA/MPSによる加速については、CUDAまたはMPSによる加速を参照してください。

pip install -U magic-pdf[full]

❗️❗️❗️ 私たちは0.6.2 ベータ版を事前にリリースし、私たちのログに記載されている多くの問題に対処しました。しかし、このビルドはまだ完全なQAテストを経ておらず、最終的なリリース品質を表していません。問題に遭遇した場合は、問題を通じて速やかに報告するか、0.6.1バージョンに戻ることをお願いします。

pip install -U magic-pdf[full]

2. モデルの重みファイルのダウンロード

詳細については、how_to_download_modelsを参照してください。

モデルの重みをダウンロードした後、'models'ディレクトリを大きなディスクスペースのあるディレクトリに移動します。できればSSDに移動してください。

3. 設定ファイルのコピーと設定

リポジトリのルートディレクトリにmagic-pdf.template.jsonファイルがあります。

cp magic-pdf.template.json ~/magic-pdf.json

magic-pdf.jsonで、"models-dir"をモデルの重みファイルがあるディレクトリに設定します。

{
  "models-dir": "/tmp/models"
}

4. CUDAまたはMPSによる加速

利用可能なNvidia GPUを持っている場合や、Apple Siliconを搭載したMacを使用している場合は、それぞれCUDAまたはMPSによる加速を利用できます。

CUDA

CUDAバージョンに応じたPyTorchバージョンをインストールする必要があります。
この例では、CUDA 11.8バージョンをインストールします。詳細はhttps://pytorch.org/get-started/locally/ を参照してください。

pip install --force-reinstall torch==2.3.1 torchvision==0.18.1 --index-url https://download.pytorch.org/whl/cu118

また、設定ファイルmagic-pdf.jsonの"device-mode"の値を変更する必要があります。

{
  "device-mode":"cuda"
}
MPS

Mシリーズチップデバイスを搭載したmacOSユーザーは、推論加速のためにMPSを使用できます。
設定ファイルmagic-pdf.jsonの"device-mode"の値を変更する必要があります。

{
  "device-mode":"mps"
}

使用方法

1. コマンドラインでの使用

シンプル
magic-pdf pdf-command --pdf "pdf_path" --inside_model true

プログラムが終了した後、"/tmp/magic-pdf"ディレクトリに生成されたmarkdownファイルが見つかります。
markdownディレクトリには対応するxxx_model.jsonファイルがあります。
ポストプロセッシングパイプラインの二次開発を行う場合は、次のコマンドを使用できます:

magic-pdf pdf-command --pdf "pdf_path" --model "model_json_path"

この方法では、モデルデータを再実行する必要がなくなり、デバッグが便利になります。

詳細
magic-pdf --help

2. APIを使用した利用

ローカル
image_writer = DiskReaderWriter(local_image_dir)
image_dir = str(os.path.basename(local_image_dir))
jso_useful_key = {"_pdf_type": "", "model_list": []}
pipe = UNIPipe(pdf_bytes, jso_useful_key, image_writer)
pipe.pipe_classify()
pipe.pipe_parse()
md_content = pipe.pipe_mk_markdown(image_dir, drop_mode="none")
オブジェクトストレージ
s3pdf_cli = S3ReaderWriter(pdf_ak, pdf_sk, pdf_endpoint)
image_dir = "s3://img_bucket/"
s3image_cli = S3ReaderWriter(img_ak, img_sk, img_endpoint, parent_path=image_dir)
pdf_bytes = s3pdf_cli.read(s3_pdf_path, mode=s3pdf_cli.MODE_BIN)
jso_useful_key = {"_pdf_type": "", "model_list": []}
pipe = UNIPipe(pdf_bytes, jso_useful_key, s3image_cli)
pipe.pipe_classify()
pipe.pipe_parse()
md_content = pipe.pipe_mk_markdown(image_dir, drop_mode="none")

デモはdemo.pyを参照してください

Magic-Doc

紹介

Magic-Docは、ウェブページや多形式の電子書籍をmarkdown形式に変換するためのツールです。

主な機能は以下の通りです:

  • ウェブページ抽出

    • テキスト、画像、表、数式情報のクロスモーダルな正確な解析。
  • 電子書籍ドキュメント抽出

    • epub、mobiなどのさまざまなドキュメント形式をサポートし、テキストと画像に完全対応。
  • 言語タイプの識別

    • 176の言語を正確に認識。
extract1.mp4
extract2.mp4
extract3.mp4

プロジェクトリポジトリ

  • Magic-Doc 優れたウェブページと電子書籍の抽出ツール

貢献者の皆様に感謝

ライセンス情報

LICENSE.md

このプロジェクトは現在、PyMuPDFを利用して高度な機能を提供していますが、AGPLライセンスに準拠しているため、特定の使用ケースに制限を課す可能性があります。今後のバージョンでは、より寛容なライセンスのPDF処理ライブラリへの移行を検討し、ユーザーフレンドリーさと柔軟性を向上させる予定です。

謝辞

引用

@misc{wang2024mineruopensourcesolutionprecise,
      title={MinerU: An Open-Source Solution for Precise Document Content Extraction}, 
      author={Bin Wang and Chao Xu and Xiaomeng Zhao and Linke Ouyang and Fan Wu and Zhiyuan Zhao and Rui Xu and Kaiwen Liu and Yuan Qu and Fukai Shang and Bo Zhang and Liqun Wei and Zhihao Sui and Wei Li and Botian Shi and Yu Qiao and Dahua Lin and Conghui He},
      year={2024},
      eprint={2409.18839},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2409.18839}, 
}

@article{he2024opendatalab,
  title={Opendatalab: Empowering general artificial intelligence with open datasets},
  author={He, Conghui and Li, Wei and Jin, Zhenjiang and Xu, Chao and Wang, Bin and Lin, Dahua},
  journal={arXiv preprint arXiv:2407.13773},
  year={2024}
}

スター履歴

Star History Chart

リンク