Docstrangeはオープンソースの文書処理ツールで、複数のフォーマットの文書や画像からデータを抽出し、Markdown、JSON、CSV、HTMLなどのフォーマットに変換することに重点を置いています。人工知能と高度なOCR技術を使用し、PDF、Word文書、Excel表、PowerPointプレゼンテーション、画像、Webコンテンツの処理をサポートします。簡単なコードやコマンドライン操作で、テキスト、表、特定のフィールドを素早く抽出できるため、開発者、研究者、複雑なドキュメントを扱うビジネスユーザーに適しています。DocstrangeはNanoNets社によって開発され、GitHubでホストされており、無料で簡単に統合できます。
機能一覧
- PDF、Word、Excel、PowerPoint、画像、Webページからテキストとデータを抽出します。
- 抽出されたコンテンツのMarkdown、JSON、CSV、HTML、プレーンテキスト形式への変換をサポート。
- 請求書番号や契約条件など、特定の情報を抽出するためにユーザー定義可能なインテリジェントなフィールド抽出を提供します。
- JSONスキーマ定義をサポートし、ユーザーが指定した構造に準拠したデータを出力する。
- 高度なOCR技術を内蔵し、画像やスキャン文書内のテキストを処理。
- テーブル抽出を提供し、複雑なテーブルの構造を保持し、それらをMarkdownまたはHTMLに変換します。
- データのプライバシーを保護するために、ローカルCPUまたはGPU処理をサポートします。
- コマンドラインとPython APIの両方の操作を提供し、開発者の統合に適しています。
- 複数ファイルのバッチ処理に対応し、作業効率を向上。
ヘルプの使用
設置プロセス
Docstrangeを使用するには、まずPython環境をインストールする必要があります(Python 3.8以上を推奨)。その後、以下の手順でDocstrangeライブラリをインストールしてください:
- Docstrangeのインストール
ターミナルで以下のコマンドを実行し、Docstrangeをインストールする:pip install docstrange
一度インストールすれば、ユーザーはPythonスクリプトまたはコマンドラインからツールを起動できる。
- APIキーの取得(オプション)
クラウド処理モードを使用している場合は、NanoNetsのウェブサイトで登録し、無料のAPIキーを取得することで、処理上限を増やすことができます。キーを取得した後、コマンドラインを--api-key YOUR_API_KEY
パラメータが指定されている。 - ローカル処理モード(オプション)
完全にローカライズされた処理が必要な場合は、ネイティブOCRをサポートする依存関係をインストールしてください(Ollamaなど)。以下のコマンドを実行して、CPUまたはGPU処理を有効にします:docstrange document.pdf --cpu-mode
もしかしたら
docstrange document.pdf --gpu-mode
注:GPUモードは、CUDAがサポートするハードウェア環境が必要です。
使用方法
Docstrangeは主にPython APIとコマンドラインの2つの操作方法を提供しています。以下ではコア機能の使い方について詳しく説明します。
Python APIを使う
DocstrangeのPython APIは、開発者が既存のプロジェクトに組み込むのに適しています。以下はPDFファイルの内容を抽出する例です:
from docstrange import DocumentExtractor
# 初始化提取器(默认云端模式)
extractor = DocumentExtractor()
# 提取 PDF 文件并转换为 Markdown
result = extractor.extract("document.pdf")
markdown = result.extract_markdown()
print(markdown)
# 提取特定字段
fields = result.extract_data(specified_fields=["invoice_number", "total_amount"])
print(fields)
# 使用 JSON 模式提取结构化数据
schema = {
"contract_number": "string",
"parties": ["string"],
"total_value": "number"
}
structured_data = result.extract_data(json_schema=schema)
print(structured_data)
ユーザーは必要に応じて出力形式(Markdown、JSON、CSV、HTML)を選択できます。[](https://github.com/NanoNets/docstrange)
コマンドラインから使用
コマンドライン操作は、ファイルを素早く処理するのに適している。以下は一般的なコマンドである:
- PDFファイルを抽出し、Markdownに出力します:
docstrange document.pdf --output markdown
- 特定のフィールドを抽出し、JSONとして出力します:
docstrange invoice.pdf --output json --extract-fields invoice_number total_amount
- 複数のPDFファイルのバッチ処理:
docstrange *.pdf --output markdown
- 結果をファイルに保存する:
docstrange document.pdf --output-file result.md
コマンドラインは柔軟なパラメーターの組み合わせをサポートしており、ユーザーは必要に応じて出力形式や処理モードを指定することができる。
注目の機能操作
- インテリジェントなフィールド抽出
Docstrangeでは、請求書番号、金額、契約日など、抽出するフィールドを指定することができます。例えば、請求書を処理する場合:docstrange invoice.pdf --output json --extract-fields invoice_number vendor_name total_amount
このツールは、ドキュメント内の関連フィールドを自動的に識別し、構造化されたJSONデータを返します。これは、重要な情報を迅速に抽出する必要があるシナリオに最適です。
- フォーム抽出
複雑な表を含む文書でも、Docstrangeは正確に表を抽出し、MarkdownやHTML形式に変換することができます。例えばresult = extractor.extract("financial_report.pdf") html_table = result.extract_html() print(html_table)
出力形式は元の構造を保持し、ウェブページや文書編集で直接使用するのに適しています。
- ローカル処理モード
データのプライバシーを保護するために、ユーザーはローカル処理モードを有効にすることができます:extractor = DocumentExtractor(cpu=True) result = extractor.extract("document.pdf") print(result.extract_markdown())
ローカルモードは、データをクラウドに送信する必要がなく、機密性の高い文書処理に適している。
- JSONスキーマのサポート
ユーザーはJSONスキーマを定義して、出力データが特定の構造に適合するようにすることができる。例えば、契約文書を処理する:schema = { "contract_number": "string", "parties": ["string"], "total_value": "number", "start_date": "string" } structured_data = result.extract_data(json_schema=schema) print(structured_data)
このアプローチは、標準化が必要なデータ出力シナリオに適している。
ほら
- クラウドモードは安定したインターネット接続を必要とし、より高速な処理のためにAPIキーを使用することをお勧めします。
- ネイティブ・モードでは、追加のOCR依存関係をインストールする必要があります。具体的な要件については、GitHubのドキュメントを参照してください。
- 現在のところ、このツールは手書き文書の処理をサポートしておらず、印刷文書または電子文書の処理に適している。
アプリケーションシナリオ
- 学術研究
研究者はDocstrangeを使って学術論文のPDFファイルをMarkdown形式に変換し、さらなる分析や知識ベースへのインポートのために表やテキストの構造を保持することができます。 - 財務管理
ビジネスユーザーは、請求書、領収書、財務レポートから主要フィールド(金額、日付など)を抽出し、JSONまたはCSVとしてエクスポートして、財務ソフトウェアに簡単にインポートできます。 - 法的文書
弁護士は、契約書から主要な条項や署名情報をすばやく抽出して構造化データを作成し、契約書のレビュープロセスを合理化することができます。 - データ分析
データアナリストは、データの視覚化や機械学習モデルのトレーニングのために、ウェブページやExcelファイルから表をCSV形式に抽出することができます。
品質保証
- Docstrangeはどのようなファイル形式に対応していますか?
PDF、Word、Excel、PowerPoint、画像(PNG、JPGなど)、WebページのURLからのデータ抽出をサポートしています。 - データ・プライバシーをどのように確保するのか?
ユーザーはローカルCPUまたはGPUの処理モードを選択でき、データはクラウドにアップロードされないため、機密文書の処理に適している。 - 利用するのにお金は必要ですか?
Docstrangeはオープンソースのツールで、無料で使用できます。クラウドモードではAPIキーのためにNanoNetsアカウントの登録が必要で、無料アカウントには使用制限があります。 - 手書きの書類を扱えますか?
現在、Docstrangeは主に印刷または電子文書をサポートしており、手書き文書の取り扱いは限られています。