トップ OSS紹介 Docling

Docling

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

バージョンアップ情報

Docling情報

Docling情報更新日:2026/09/08

Doclingとは

Doclingは、PDF文書をはじめとする多様なドキュメント形式を、生成AI(LLM)や検索システムが処理しやすい構造化データ(Markdown、JSONなど)に変換するためのオープンソースライブラリで、IBMの研究部門であるIBM リサーチ・チューリッヒによって開発されました。
近年、RAG(Retrieval-Augmented Generation:検索拡張生成)システムの構築において、企業の持つ膨大なドキュメント資産をいかに高品質なコンテキストとしてLLMに提供するかが重要な課題となっています。特にPDFファイルは、人間が読むためのレイアウト情報を含んでいますが、コンピュータがその論理構造(見出し、段落、表、図など)を正確に理解することは困難でした。
Doclingは、この課題を解決するために設計されました。高度なAIモデルを活用してドキュメントのレイアウトや構造を解析し、テキストだけでなく、表、図、数式、さらにはページヘッダーやフッターといった要素を識別して、意味のある構造化データとして抽出します。これにより、下流のAIアプリケーションはドキュメントの内容をより深く理解できるようになります。

主な特徴

Doclingの主な特徴は、AIを活用した高度なドキュメント構造解析により、PDFなどの非構造化ドキュメントをLLMや検索システムで扱いやすい構造化データへ変換できる点です。
特に、複雑なレイアウトや表、図、数式なども含めて意味のある形で抽出できるため、RAGをはじめとする生成AIアプリケーションの前処理基盤として活用できます。

具体的には、以下のような特徴があります。

  • 高度な構造解析: Doclingは、単にテキストを抽出するだけでなく、ドキュメントの論理構造を理解します。独自のAIモデルを活用し、段落、見出し、リスト、表、図表のキャプション、ヘッダー/フッターなどを識別します。これにより、複雑なレイアウト(例:2段組み)のPDFも正しく解析できます。
  • 強力な表認識機能: PDF内の表構造を認識し、HTMLのテーブル形式やPandasのDataFrameとして利用可能な形で抽出することができます。これは従来のPDF解析ツールでは難易度が高いタスクでした。
  • 多様なフォーマットに対応: PDFファイルを中心に、Microsoft Officeドキュメント(Word, PowerPoint)、画像ファイル、HTMLなど、多様な入力フォーマットに対応しています。
  • LLMフレンドリーな出力: 解析結果は、MarkdownやJSONといった、LLMのプロンプトに組み込みやすい形式で出力されます。特にMarkdown出力では、元のドキュメント構造が可能な限り反映されます。
  • PythonライブラリとCLI: Pythonのライブラリとしてアプリケーションに組み込むことができるほか、コマンドラインインターフェース(CLI)も提供されており、手軽にドキュメント変換を試すことができます。
  • オープンなガバナンスによる継続的な開発: Doclingは、Linux Foundation傘下のLF AI & Data Foundationでホストされているオープンソースプロジェクトです。特定ベンダーに依存しない中立的なガバナンスのもとで開発が進められており、コミュニティや企業が協力して機能追加や品質向上に取り組んでいます。そのため、エンタープライズ環境でも採用しやすく、長期的な継続性が期待できます。

インストールはPythonパッケージマネージャを使用して簡単に出来ます。


pip install docling

(VLM、ASR パイプラインやOCRエンジンなどの高度な機能を利用する場合は、機能追加パッケージもインストールする必要があります。)

コマンドラインから実行するだけで簡単に使用できます。下記はPDFをMarkdownに変換する例です。


docling path/to/sample.pdf

Pythonスクリプトからは以下のように使用できます。


from docling.document_converter import DocumentConverter
source = "path/to/sample.pdf"
converter = DocumentConverter()
doc = converter.convert(source).document
print(doc.export_to_markdown()) # 標準出力に出力

Docling がサポートするドキュメント形式

Doclingは、さまざまな形式のドキュメントを入力として扱うことができます。
代表的なものとして、PDFをはじめ、Microsoft WordのDOCX、ExcelのXLSX、PowerPointのPPTXといったOffice系のファイルに対応しています。
また、MarkdownやHTML、CSVなど、Webやデータ処理でよく利用される形式も扱うことができます。特にPDFは、テキストだけでなく、表や画像、レイアウトなどの構造を解析できるため、Doclingの主要なユースケースの一つです。
このほかにも、画像や音声・動画、EPUB、OpenDocument形式など、さまざまなフォーマットに対応しています。

以下は2026年8月時点でDoclingが対応しているフォーマットの一覧です。

サポートされている入力フォーマット

フォーマット

説明

PDF

DOCX、XLSX、PPTX

Office Open XML に基づくMS Office 2007+ のデフォルトフォーマット

DOC、XLS、PPT

レガシー Officeフォーマット (97 ~ 2004)、LibreOfficeが必要です

ODT、ODS、ODP

テキスト文書、スプレッドシート、プレゼンテーション用のOpenDocument形式

EPUB

電子書籍向けの電子出版形式

Markdown

AsciiDoc

人が読める構造化された技術コンテンツ用のプレーンテキストのマークアップ言語

LaTeX

科学的文書作成システム

HTML、XHTML

CSV

PNG、JPEG、TIFF、BMP、WEBP

画像フォーマット

WAV、MP3、M4A、AAC、OGG、FLAC

オーディオ形式(別途 asr extra が必要です)

MP4、AVI、MOV

ビデオ形式。 オーディオトラックが抽出され、文字起こしが行われます(別途 asr extra 及び ffmpeg が必要です。)

WebVTT

時間とテキストを表示するための Web ビデオテキストトラック形式

BoxNote

Box Notes の共同ノート形式

サポートされているXMLスキーマ

フォーマット

説明

DocLang XML

DocLang に準拠した XMLフォーマット。拡張子は.dclg、.dclg.xmlをサポート

DocLang archive

ページ画像を含む圧縮されたDocLangバンドル、拡張子 .dclx をサポート

USPTO XML

USPTOに準拠したXMLフォーマット

JATS XML

JATS アーティクルに準拠したXMLフォーマット

XBRL XML

XBRL規格に準拠したビジネスおよび財務報告用のXMLフォーマット

EBCDIC

メインフレームで使われる固定幅データファイル。EbcdicBackendOptions を介して渡されるCOBOL レコードレイアウトが必要。拡張子 .ebc、.ebcdic をサポート

Docling JSON

JSON シリアル化された Docling ドキュメント

サポートされている出力フォーマット

フォーマット

説明

HTML

HTML形式。画像埋め込みと参照の両方がサポートされています。

Markdown

JSON

Lossless JSON(情報損失のないJSON)形式

DocLang XML

DocLang XML形式。AI(LLM)のための文書フォーマット

Text

プレーンテキスト

Doctags

内容およびレイアウトを効率的に表現するためのマークアップ形式

WebVTT

時間とテキストを表示するための Web ビデオテキストトラック形式

引用元: https://docling-project.github.io/docling/usage/supported_formats/

メリット・デメリット

メリット・必要性

Doclingを採用するメリットと、現代のシステム開発における必要性は以下の点にあります。

  • RAGシステムの回答精度向上: ドキュメントの構造を保持したままテキストを抽出できるため、RAGシステムにおいてチャンク分割(テキストの分割)をより適切に行うことができます。これにより、LLMが回答に必要な情報を的確に見つけ出せるようになり、最終的な回答精度の向上につながります。
  • ドキュメント資産の有効活用: これまで検索やデータ分析に利用しづらかった画像PDFや複雑なレイアウトの資料を、機械可読なデータに変換することで、企業の持つナレッジ資産として有効活用できるようになります。
  • データ前処理工数の削減: 従来のOCRツールやPDFテキスト抽出ライブラリでは、抽出後のテキストに含まれるノイズ除去や、崩れた表データの整形に多大な工数がかかっていました。Doclingは構造化されたクリーンなデータを出力するため、これらの前処理工数を大幅に削減できます。
  • 最新の研究成果を利用可能: IBM Researchによる最新のドキュメント解析技術が盛り込まれており、特に学術論文や技術標準書のような複雑なドキュメントの解析において高い性能を発揮します。
  • ローカル環境で動作: ネットワークから切り離されたエアギャップ環境でも実行できますので、機密情報を扱う用途にも対応可能です。

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

Doclingを利用するにあたっての注意点や課題は以下の通りです。

  • リソース消費: AIモデルを使用した解析を行うため、単純なテキスト抽出ツールと比較して、処理にメモリやCPU/GPUリソースを多く消費する傾向があります。大量のドキュメントを処理する場合は、インフラのサイジングが重要になります。
  • 処理速度: 詳細なレイアウト解析とOCR処理を伴うため、ドキュメントのページ数や複雑さによっては、解析に時間がかかる場合があります。リアルタイム性が求められる用途では検証が必要です。
  • OCR精度への依存: スキャンされた画像PDFの場合、テキスト認識の精度は内蔵または連携するOCRエンジンの性能に依存します。非常に低品質な画像や手書き文字の認識には限界がある場合があります。
  • 発展途上のプロジェクト: 比較的新しく非常に活発なプロジェクトであるため、APIの変更や機能追加が頻繁に行われる可能性があります。バージョンアップ時の互換性確認が必要です。

類似プロダクト

ドキュメント解析やテキスト抽出を行う類似のOSSプロダクトとしては、以下のようなものがあります。

プロダクト名

特徴

Doclingとの比較

Microsoft が開発したMarkdownへの変換を行うオープンソースのPythonパッケージ。多様なファイル形式に対応。

どちらも Markdown への変換を行う Python ライブラリです。MarkItDown の方が軽量・高速に動作しますが、複雑なレイアウトのドキュメントの解析は Docling の方が優れており、対応するファイル形式も多いです。

unstructured

多様なファイル形式に対応し、RAG向けの前処理パイプラインを提供する人気のライブラリ。

unstructuredも強力ですが、Doclingは特にPDFの詳細なレイアウト解析や表認識の精度において強みを持つ場合があります。両者はアプローチが異なり、用途に応じて使い分けるか、組み合わせて利用されることもあります。

PyPDF2 / pypdf

Pythonの標準的なPDF操作ライブラリ。テキスト抽出、結合、分割などが可能。

基本的なテキスト抽出は可能ですが、レイアウト情報や表構造を認識することは難しく、抽出されたテキストの順序が崩れることがあります。構造化データが必要な場合はDoclingが適しています。

pdfminer.six

PDFからテキストと情報を抽出することに特化したツール。レイアウト分析機能もある程度備える。

Doclingと比較すると、AIモデルを用いた高度な構造認識や表抽出の機能は限定的です。よりルールベースのアプローチが中心となります。

Doclingは、従来のツールでは難しかった「ドキュメントの論理構造の理解」にAIを活用してアプローチしている点が大きな特徴です。

動作環境

DoclingはPython製のライブラリであり、以下の環境で動作します。

  • Pythonバージョン: Python 3.10以上
  • OS: Linux, macOS, Windows

AIモデルの推論を行うため、PyTorchなどの深層学習フレームワークがバックグラウンドで動作します。GPUが利用可能な環境では、処理速度の向上が期待できます。
詳細な依存ライブラリについては、公式リポジトリの pyproject.toml 等をご確認ください。

Doclingのライセンス

Doclingは、MIT License の下で公開されています。
MITライセンスは、非常に寛容なオープンソースライセンスの一つであり、商用利用、修正、配布などが自由に行えます。ただし、著作権表示とライセンス条項の記載が必要です。
ライセンスの詳細は、必ず公式リポジトリの LICENSE ファイルをご確認ください。

参考情報

Doclingに関する詳細な情報は、以下の公式サイトやリポジトリを参照してください。

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