Communitygithub.com

Peytontalismanic424/paper-share-skills

MinerUを使用してPDF(特に学術論文)をクリーンなMarkdownに変換します。読み取り順序、LaTeX数式、表、図を保持し、GPU上で動作します。ユーザーがPDFをMarkdown/テキストに変換・抽出するよう依頼した場合に使用します。直接呼び出してください。ユーザーがスキル名を入力する必要はありません。

paper-share-skills とは?

このスキルは、最高品質のオープンソースエンジンであるMinerU(opendatalab/MinerU)を使用して、PDFを構造を保持したクリーンなMarkdownに変換します。特に学術論文に最適化されており、複数カラムレイアウト、LaTeX数式、表、図を正確に抽出します。変換はGPU(CUDA)上で実行されるパイプラインを通じて行われ、ヘッダー階層、インラインLaTeX数式($...$)、図、表(HTML形式)を保持したMarkdownを出力します。画像、Word、PowerPoint、Excelファイルも直接処理可能です。変換後、出力パスが表示され、ユーザーに報告できます。スキャンされたPDFが文字化けした場合は、--method ocrオプションで再実行できます。環境設定は事前に行われており、CUDAの利用可否はtorch.cuda.is_available()で確認できます。軽量な代替としてMarkItDownも利用可能ですが、学術論文の2カラムPDFや表ではMinerUの方が高品質です。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Peytontalismanic424/paper-share-skills/tree/HEAD/pdf-to-markdown

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

PDF → Markdown(MinerU)

MinerU(opendatalab/MinerU)を使用して、PDFを構造を保持したクリーンなMarkdownに変換します。学術論文向けの最高忠実度のオープンソースエンジンです。パイプラインはGPU(CUDA)上で実行されます。出力はヘッダー階層、インラインLaTeX数式($...$)、図、表(HTML形式)を保持します。

使用タイミング

  • ユーザーが「このPDFをMarkdown(またはテキスト)に変換/抽出して」と依頼した場合。
  • 最適な用途:学術論文 — 複数カラムレイアウト、LaTeX数式、表、参考文献。
  • 画像、.docx、.pptx、.xlsxも処理可能(ファイルを直接渡してください)。

実行方法

MinerUは専用の分離された環境に格納されており、バンドルされているconvert.pyラッパーを通じて駆動されます。このラッパーはMinerUのPython APIをインプロセスで呼び出します。

ここではmineru CLIは使用しないでください。バージョン3.4.0では、Windows上でローカルAPIサーバーが起動し、502 Bad Gatewayを返します。ラッパーはこれを回避します。

"$MINERU_PYTHON" \
  "<SKILLS_DIR>/pdf-to-markdown/convert.py" \
  "<input.pdf>" "<output_dir>" --lang en

  • 引数1 — 入力ファイル(pdf/image/docx/pptx/xlsx)。
  • 引数2 — 出力ディレクトリ。
  • --lang — OCR言語ヒント:en(英語)、ch(中国語/混合)(デフォルトはchで、英語も処理可能)。OCR(スキャン)ページにのみ影響します。
  • スクリプトは成功時にDONE -> <path to .md>を出力します。

出力レイアウト

<output_dir>/<name>/auto/<name>.md       # Markdownファイル
<output_dir>/<name>/auto/images/          # 抽出された図(Markdownから参照)
<output_dir>/<name>/auto/<name>_*.json    # レイアウト/コンテンツメタデータ(無視可能)

変換後

  1. 出力されたDONE -> ...mdパスを読み取り、ユーザーに報告します。
  2. オプションで短いプレビュー(タイトル+最初の見出し)を表示します。
  3. 抽出された画像が書き込まれた場所を通知します。
  4. 通常は品質は高く、見出しは#、インライン数式は$...$、表は<table>HTML(セル内にLaTeXを含む)として出力されます。スキャンPDFが文字化けした場合は、--method ocrを付けて再実行します。

事前確認/セットアップ(何か不足している場合のみ)

  • MinerUがインストールされたインタープリター(環境変数MINERU_PYTHON、デフォルトはpython)。
  • CUDAの確認:$MINERU_PYTHON -c "import torch; print(torch.cuda.is_available())" → True。
  • モデルは~/.cache/huggingface/hub/に事前ダウンロードされています(一度だけ)。

環境が不足している場合は、再作成します(必要に応じて最初にuvをインストール):

uv venv --python 3.12 "<your-env>"
uv pip install --python "<your-env>/Scripts/python.exe" torch torchvision --index-url https://download.pytorch.org/whl/cu124
uv pip install --python "<your-env>/Scripts/python.exe" -U "mineru[core]"
"<your-env>/Scripts/mineru-models-download.exe" -s huggingface -m pipeline

その後、MINERU_PYTHONを<your-env>/Scripts/python.exe(Windows)または<your-env>/bin/python(macOS/Linux)に設定します。macOS/Linuxでは、モデルダウンロードバイナリはmineru-models-download(.exeサフィックスなし)です。

トラブルシューティング

  • cuda.is_available()がFalse → cu124インデックスからtorchを再インストールします(セットアップ参照)。必要に応じてパイプラインはCPUでも動作しますが、低速です。
  • モデルダウンロードが失敗/遅い → -s modelscopeを付けてmineru-models-downloadを再実行します。
  • スキャンPDFが文字化け → convert.py呼び出しに--method ocrを追加します。
  • vlm-engine / hybrid-engineバックエンド → これらにはvLLM/SGLang(Linux)が必要です。Windowsでは502エラーになります。ラッパーが使用するデフォルトのpipelineバックエンドを使用してください。

軽量フォールバック(シンプル/Office文書)

レイアウトの忠実度が重要でない非論文ファイルの場合、MicrosoftのMarkItDownの方が高速でシンプルですが、学術的な2カラムPDFや表を壊す可能性があるため、論文にはMinerUを推奨します:

"$MINERU_PYTHON" -m pip install markitdown
"$MINERU_PYTHON" -m markitdown "<input>" > out.md

Individual skills in this repo

This repo contains 7 individual skills — each has its own dedicated page.

Peytontalismanic424/paper-share-skills

Validate and upload narrated paper videos to Bilibili with biliup. Handles required landscape-first/portrait-second submissions, series uploads, CST scheduling, diagnostics, dry-run validation, and durable upload receipts. Trigger on: "upload to bilibili", "bilibili upload", "发布到B站", "上传到B站".

Peytontalismanic424/paper-share-skills

Download the TeX source (e-print tar.gz) of an arXiv paper from an arXiv URL or bare ID, and unpack it into paper_src/. Use FIRST whenever a pipeline input is an arXiv link and the TeX source is preferred over the PDF (paper-to-beamer, paper-to-bilibili, paper-venue-discovery). Invoke with an arXiv URL (abs/pdf/e-print, arxiv.org or export.arxiv.org) or a bare ID like 2509.07996v4.

Peytontalismanic424/paper-share-skills

Convert Beamer PDF slides into a fail-closed narrated MP4 with page-aligned narration, TTS audio, cover, and upload metadata. Trigger on narrated slides, slide video, or paper video requests.

Peytontalismanic424/paper-share-skills

Automated pipeline: paper (PDF or TeX source) → SUSTech Beamer slides (11-section 论文分享 structure) → compiled PDF. When TeX source is available, skip MinerU and extract content directly from LaTeX. Use when the user asks to create Beamer slides from an academic paper, or says "论文分享", "paper to slides", "make beamer from paper". Invoke with an absolute or relative path to a PDF, .tar.gz TeX archive, .tex file, or an arXiv URL/ID (source TeX is downloaded first via skill://paper-download-arxiv-paper-source).

Peytontalismanic424/paper-share-skills

Orchestrate a paper PDF through MinerU, SUSTech Beamer slides, complete Chinese narration, landscape and portrait video, metadata gates, and Bilibili upload. Supports single-paper and batch slides, video, or bilibili phases. Trigger on full paper-to-Bilibili requests, PDF-to-video publication, and batch paper publishing.

Peytontalismanic424/paper-share-skills

Generate a deterministic 16:10 video-cover poster from a paper directory. Extracts paper metadata and figures and atomically produces poster.tex, poster.pdf, and poster.png. Use for paper-video covers, not conference posters.

Peytontalismanic424/paper-share-skills

Fix for undefined \setsource/\setdomains/\setpresenter/\setvenue commands when compiling SUSTech Beamer slides from the standard template. Copy the extended beamerthemesustech.sty from the sustech-slides-template repository.

関連スキル