PDF、Office文書、HTMLなどを構造化データに変換し、生成AIのパイプラインで活用できるオープンソースのドキュメントパーサー。
CatchTheTornado/text-extract-api
PDF、画像、Office文書をMarkdownや構造化JSONに変換するセルフホスト型FastAPIサービス。OCR、Ollama経由のローカルLLM、個人情報の除去に対応。
代替できる製品:Adobe Acrobat
ABBYY FineReader
- スター
- 3,184
- フォーク
- 279
- 未解決の Issue
- 49
- 最終コミット
- 11 か月前
これは何?
text-extract-apiは、画像、PDF、OfficeファイルからMarkdownテキストや構造化JSONを抽出するサービスです。FastAPIを基盤とし、非同期タスク処理にCelery、OCR結果のキャッシュにRedisを使用します。EasyOCR、MiniCPM-V、Ollama経由で実行するLlama 3.2 Visionのほか、外部のmarker-pdfサーバーを呼び出すリモート方式など、複数のOCR方式を利用できます。
カスタムプロンプトを使って、OCRの出力をOllama上のLLMに渡すことができます。たとえば、JSONの生成や、請求書・レポートからの個人を特定できる情報の除去に利用できます。結果は、ローカルファイルシステム、Google Drive、Amazon S3など、プラグイン形式のストレージプロファイルを通じて保存できます。CPU環境とGPU環境向けのDocker Composeファイルが用意されており、CLIとTypeScriptクライアントも含まれています。
外部のクラウドサービスにファイルを送信せずに文書を処理したいチームを対象としています。データはスタックを実行しているマシンやサーバー内にとどまりますが、リモートのmarker方式やクラウドストレージのバックエンドを使う場合は、設定したエンドポイントにデータが送信されます。
主な機能
- 01画像、PDF、Office文書をMarkdownまたはJSONに変換します。
- 02EasyOCR、MiniCPM-V、Llama 3.2 Vision、およびリモートのmarker-pdfを使ったOCR方式を利用できます。
- 03Ollama上のモデルでOCRテキストを後処理し、構造化データを抽出します。
- 04プロンプトを使って個人を特定できる情報を除去します。
- 05Celeryでタスクを非同期に実行し、OCR結果をRedisにキャッシュします。
- 06ストレージプロファイルを通じて、結果をローカルディスク、Google Drive、Amazon S3に保存します。
ユースケース
- スキャンした請求書やレポートを、後続システムで使える構造化JSONに変換する。
- 文書を共有またはアーカイブする前に、個人情報をマスキングする。
- ファイルをネットワーク外に出せない環境で、オンプレミスの文書OCRを実行する。
- 文書取り込みAPIを構築し、テキストをRAGや検索のパイプラインに渡す。
クイックスタート
- 1
リポジトリをクローンする
git clone https://github.com/CatchTheTornado/text-extract-api.git - 2
プロジェクトディレクトリに移動する
cd text-extract-api - 3
Docker Composeですべてのサービスを起動する
docker-compose up --build
使う前に知っておきたいこと
- ローカルのOCRモデルとOllamaのLLMを実行するには高性能なハードウェアが必要です。また、llama_vision戦略は900億パラメーターを使用するため、非常に低速です。
- marker-pdfのリモート戦略はGPL3ライセンスで、同梱されていません。また、モデルの重みには非商用利用の制限があります。
トピック
よくある質問
- text-extract-api とは?
- PDF、画像、Office文書をMarkdownや構造化JSONに変換するセルフホスト型FastAPIサービス。OCR、Ollama経由のローカルLLM、個人情報の除去に対応。 text-extract-apiは、画像、PDF、OfficeファイルからMarkdownテキストや構造化JSONを抽出するサービスです。FastAPIを基盤とし、非同期タスク処理にCelery、OCR結果のキャッシュにRedisを使用します。EasyOCR、MiniCPM-V、Ollama経由で実行するLlama 3.2 Visionのほか、外部のmarker-pdfサーバーを呼び出すリモート方式など、複数のOCR方式を利用できます。
- text-extract-api は無料で使えますか?ライセンスは?
- text-extract-api は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- text-extract-api は今もメンテナンスされていますか?
- 半年以上コミットなし。text-extract-api の最終コミットは 2025年12月8日 です。
- text-extract-api は何に使えますか?
- スキャンした請求書やレポートを、後続システムで使える構造化JSONに変換する。 文書を共有またはアーカイブする前に、個人情報をマスキングする。 ファイルをネットワーク外に出せない環境で、オンプレミスの文書OCRを実行する。 文書取り込みAPIを構築し、テキストをRAGや検索のパイプラインに渡す。
- text-extract-api のインストール方法は?
- リポジトリをクローンする: git clone https://github.com/CatchTheTornado/text-extract-api.git プロジェクトディレクトリに移動する: cd text-extract-api Docker Composeですべてのサービスを起動する: docker-compose up --build
- text-extract-api はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/CatchTheTornado/text-extract-api
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
クラウドLLMやローカルモデルでPDFとの対話やライブラリ全体の検索ができるZoteroプラグイン。
Reactフロントエンド、FastAPIバックエンド、Docker構成で画像やPDFのDeepSeek-OCRを実行するWebアプリ。
PDFページを解析し、OCRやMarkdown/HTML変換を行うDockerベースのマイクロサービスとGradio UI。
レシートや請求書、PDFからLLMでデータを抽出し、構造化された取引データベースに保存するセルフホスト型会計アプリ。
Cherry Studioは、多数のLLMプロバイダーやローカルモデル、300種類以上のプリセットアシスタントに接続できるクロスプラットフォームのデスクトップAIクライアントです。