markitdown
ファイルやOfficeドキュメントをクリーンなMarkdown形式に変換できます。LLMに適した、トークン効率の良いテキストが必要な場合に活用できます。要約、検索、RAG取り込み、データセット準備などに対応しています。
description の原文を見る
Convert files and Office documents into clean Markdown when you need LLM-friendly, token-efficient text (e.g., for summarization, search, RAG ingestion, or dataset preparation).
SKILL.md 本文
使用場面
- 研究論文やレポート(PDF/DOCX/EPUB/HTML)をMarkdownに変換し、LLMの要約、Q&A、またはRAGインデックス作成に利用する
- スプレッドシート(XLSX/CSV)からテーブルと構造化コンテンツをMarkdownに抽出し、分析またはドキュメント作成に使用する
- スライドデッキ(PPTX)をMarkdownノートに変換する(スピーカーノートと、オプションでAI生成の画像説明を含む)
- OCRを使用して画像またはスキャン文書を処理し、検索可能で編集可能なMarkdownテキストを取得する
- オーディオ(WAV/MP3)またはYouTubeトランスクリプトをMarkdownに変換し、会議メモ、コンテンツ分析、またはナレッジベースに使用する
主な機能
- 多数のフォーマットを構造化されたMarkdownに変換(PDF、DOCX、PPTX、XLSX、画像、オーディオ、HTML、CSV、JSON、XML、ZIP、EPUB、YouTube URLなど)
- LLMパイプライン(要約、チャンキング、エンベディング)に適したトークン効率的な出力を生成
- OCRサポート(OCR依存関係がインストールされている場合)
- オーディオトランスクリプション機能(トランスクリプション依存関係がインストールされている場合)
- OpenAI互換クライアント(例:OpenRouter)による、オプショナルなAI強化画像/スライド説明機能
- フォーマットサポートとカスタム動作を拡張するためのプラグインシステム
- 大規模ファイル向けのストリームベースの変換API
依存関係
- Python:
>=3.9(推奨) - パッケージ:
markitdown[all](すべてのオプションフォーマットハンドラーをインストール)
オプショナルなシステム依存関係(機能に応じて):
- Tesseract OCR:
tesseract-ocr(画像/スキャンテキストのOCR用)
オプショナルな外部サービス(機能に応じて):
- Azure Document Intelligenceエンドポイント(PDF抽出の向上用)
- OpenAI互換LLMエンドポイント(例:OpenRouter)(AI画像説明用)
使用例
インストール
pip install 'markitdown[all]'
CLI: PDFをMarkdownに変換
markitdown document.pdf -o output.md
Python: 複数フォーマット(PDF/XLSX/PPTX/DOCX)を変換して出力を保存
from pathlib import Path
from markitdown import MarkItDown
md = MarkItDown()
files = [
"document.pdf",
"spreadsheet.xlsx",
"presentation.pptx",
"notes.docx",
]
for path in files:
result = md.convert(path)
out = Path(path).with_suffix(".md")
out.write_text(result.text_content, encoding="utf-8")
print(f"Converted {path} -> {out}")
Python: ストリーム変換(大規模ファイルに有用)
from markitdown import MarkItDown
md = MarkItDown()
with open("large_file.pdf", "rb") as f:
result = md.convert_stream(f, file_extension=".pdf")
with open("large_file.md", "w", encoding="utf-8") as out:
out.write(result.text_content)
Python: AI強化画像/スライド説明(OpenAI互換、例:OpenRouter)
from markitdown import MarkItDown
from openai import OpenAI
client = OpenAI(
api_key="YOUR_OPENROUTER_API_KEY",
base_url="https://openrouter.ai/api/v1",
)
md = MarkItDown(
llm_client=client,
llm_model="anthropic/claude-opus-4.5",
llm_prompt="Describe this image in detail for scientific documentation.",
)
result = md.convert("presentation.pptx")
print(result.text_content)
実装の詳細
-
変換エントリーポイント
MarkItDown().convert(path)はパス/URLからファイルを変換し、主なペイロードがresult.text_content(Markdown)であるオブジェクトを返しますMarkItDown().convert_stream(stream, file_extension=".pdf")はバイナリストリームから変換します。大規模ファイルまたはデータがディスク上にない場合に使用してください
-
フォーマットハンドリング
- フォーマットサポートはオプショナルな追加機能(例:
pdf、docx、pptx、xlsx、audio-transcription、youtube-transcription)またはallによって提供されます - ZIP入力は、通常は含まれるファイルを反復処理し、サポートされている各エントリーを変換することで処理されます
- フォーマットサポートはオプショナルな追加機能(例:
-
OCR
- 画像/スキャン文書の場合、OCRツールが利用可能な場合(一般的にはTesseract)にOCRが有効になります。OSレベルのOCRバイナリがインストールされ、
PATH内でアクセス可能であることを確認してください
- 画像/スキャン文書の場合、OCRツールが利用可能な場合(一般的にはTesseract)にOCRが有効になります。OSレベルのOCRバイナリがインストールされ、
-
AI画像説明
llm_client、llm_model、llm_promptが指定された場合、MarkItDownは画像(スライド画像を含む)のモデル生成説明をリクエストし、その説明をMarkdown出力に挿入できますbase_urlとapi_keyを設定することで、任意のOpenAI互換クライアント(例:OpenRouter)を使用できます
-
PDF抽出の向上(Azure Document Intelligence)
- Document Intelligenceエンドポイントで設定された場合、複雑なレイアウト(テーブル、マルチカラムテキスト、スキャンPDF)のPDF抽出が改善され、より忠実なMarkdown構造が生成されます
-
プラグイン
- プラグインはCLIからリストアップおよび有効化でき(例:
--list-plugins、--use-plugins)、変換動作を拡張または新しいフォーマットハンドラーを追加できます
- プラグインはCLIからリストアップおよび有効化でき(例:
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- aipoch
- ライセンス
- MIT
- 最終更新
- 2026/5/11
Source: https://github.com/aipoch/medical-research-skills / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。