トップ OSS紹介 MarkItDown

MarkItDown

NRIのOpenStandiaが提供するMarkItDown詳細情報

バージョンアップ情報

MarkItDown情報

MarkItDown情報更新日:2026/01/13

MarkItDownとは

MarkItDownは、Microsoft社によって開発・公開されているオープンソースのPythonパッケージです。
PDF、Word、Excel、PowerPoint、HTML、画像、音声など、多様なファイル形式を構造化されたMarkdown(.md)形式へ変換するツールとして2024年に初回リリースされました。
LLM(大規模言語モデル)やAIアプリケーションとの連携を中心に活用の場が広がっています。
一般的なリッチドキュメントには、フォント情報、レイアウトや目に見えないメタデータなど、AIから見て無駄な情報(ノイズ)が多く含まれます。
Markdown形式は、純粋なテキスト記法であり、構造の本質情報のみを抽出しやすいため、AIへの前処理・プロンプトとして無駄を最小化した形で情報提供ができます。
簡単なマークアップで文書の構造を明示できるので、AI(特にLLM)によるテキスト解析において、見出しやリスト、テーブルなどの構成要素の判別が容易になり、AIが情報を的確に認識しやすくなります。
また、LLMなどにテキストを与える際、「トークン数(=文章を最小単位に分割した数)」でコストやパフォーマンスが大きく変わります。
HTMLやXMLより軽量なMarkdown形式は、余分な記号やタグが少ない状態で意味構造を維持できるため、同じ内容でもトークン消費量を抑え、より多くの内容やコンテキストを一度にAIへ渡すことができ、その結果コストの最小化にもつながります。
さらに、AIモデルを活用したシステム間連携や自動処理においてもAPI連携、パイプライン処理、バッチ変換などが容易になります。

このようにMarkdown形式は、LLMにとって解釈しやすい構造化されたテキスト表現であり、後続処理(自然言語処理・全文検索・ナレッジ整理など)にとってもデータ整形しやすいことからAIとの親和性が極めて高いです。
こういった背景から多様なファイルフォーマットをMarkdown形式に変換できるMarkItDownは、AI時代の情報変換ツールとして注目を集めています。
MarkItDownの開発はGitHub上で進められており、オープンソースとしてコミュニティからの貢献も積極的に受け入れています。

主な特徴

機能カテゴリ

説明

豊富な対応フォーマット

PDF、Word、Excel、PowerPoint、HTML、CSV、JSON、XML、画像(EXIF/OCR対応)、音声(文字起こし対応)ファイルまで、幅広いフォーマットの解析をサポートしています。
ZIPファイル内に含まれるファイルも再帰的に解析可能です。

LLMに最適化出力

変換結果はLLMに適した軽量で構造化済みのMarkdown形式で出力されます。

柔軟なインストール

`pip install "markitdown[all]"` で対応するすべてのフォーマット用のライブラリを一括インストール可能です。
必要なフォーマットのみ個別インストールも可能で、環境を軽量に保つことができます。

Python API/CLI両対応

Pythonコードから直接利用できるAPIと、簡単にターミナルからファイル変換できるCLIコマンドの両方を提供します。

プラグイン機構

外部プラグインによる機能追加に対応します。
`markitdown --list-plugins`
でインストール済プラグインを確認できます。

Docker対応

Docker環境上での実行にも対応しており、依存関係を隔離した運用が容易です。

  • 使用例(CLI)

$ markitdown input.pdf -o output.md

  • 使用例(Python API)

from markitdown import MarkItDown
md = MarkItDown()
result = md.convert("test.xlsx")
print(result.text_content)

以下、デジタル庁が公開している「オープンデータ取組済自治体資料」をサンプルとして、ExcelとPowerPointのファイルをmarkdownデータに変換した例を示します。

Excel:
元データ:20251205_resources_opendata_lg_list_01.xlsx

元データは下記ボタンからダウンロードできます。


$ markitdown 20251205_resources_opendata_lg_list_01.xlsx -o  20251205_resources_opendata_lg_list_01.md

Markdownデータ: 20251205_resources_opendata_lg_list_01.md

PowerPoint:
元データ: 20251120_resources_opendata_lg_rate_04.pptx

元データは下記ボタンからダウンロードできます。


$ markitdown 20251120_resources_opendata_lg_rate_04.pptx -o  20251120_resources_opendata_lg_rate_04.md

Markdownデータ: 20251120_resources_opendata_lg_rate_04.md

メリット・デメリット

メリット・必要性

  • 多様な形式の統一変換が可能:異なるファイルフォーマットをMarkdownに変換、統一できるため、AI処理や全文検索などの知識管理システムへの連携、解析処理が容易になります。
  • AI/LLM処理との親和性が高い:元の文書構造を維持したまま軽量に表現できるため、トークン効率が良く、AIモデルへの入力に適しています。
  • 自動化・バッチ処理が容易:CLIやPython APIを活用することで、複数ファイルの一括変換や定期処理に組み込むことができます。
  • オープンソースの透明性:Microsoftが開発を主導しつつ、GitHub上で透明性のある開発が行われています。

デメリット・注意点・課題

  • レイアウト情報等は抽出対象外:MarkItDownは「テキスト情報の構造抽出」を優先しているため、元文書のレイアウトや装飾等は抽出対象になりません。
  • 外部機能への依存性:OCR解析や音声変換など一部機能では追加のライブラリや外部サービス(例:Azure Document Intelligence)が必要になる場合があります。
  • 変換精度のばらつき:文書構造が複雑なPDFや非標準形式のOfficeファイルでは、Markdown出力が想定と異なる場合があります。
  • 開発途上:バージョン0系(正式版前)であり、今後もAPI仕様が大きく変更される可能性があります。

類似プロダクト

  • Pandoc
    多様な文書フォーマットを相互変換できる高機能ツールです。ただし「AI/LLMやOCR・音声」特化ではありません。
  • Unstructured
    PDFやOffice文書の構造抽出とプレーンテキスト化に特化したツールです。AIワークフローでの前処理に用いられます。
  • Amazon Textract
    ドキュメント(PDFなど)をプレーンテキスト化するツールで、構造抽出は簡易的です。

動作環境

項目

内容

対応OS

Windows / macOS / Linux

対応言語

Python 3.10以上

インストール方法

pip install "markitdown[all]" または GitHubからのソースインストール

推奨構成

仮想環境(venv)またはDocker環境での利用を推奨

実行方法

CLIまたはPython API

MarkItDownのライセンス

MarkItDownのライセンスはMIT Licenseです。
MIT License は、商用利用・改変・再配布などが可能な、緩やかなオープンソースライセンスです。
詳細なライセンス条件については、GitHub リポジトリ内の LICENSE ファイルを参照してください。

参考情報

オープンソース年間サポートサービス

OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。

お気軽にお問い合わせください
オープンソースに関するさまざまな課題、OpenStandiaがまるごと解決します。
下記コンテンツも
あわせてご確認ください。