はじめに
NV Ingest (NVIDIA Ingest)は、何十万もの複雑で厄介な非構造化PDFやその他の企業ドキュメントを解析するために設計された、早期アクセスのマイクロサービス群です。NVIDIA Ingestは、PDF、Word、PowerPoint文書の解析をサポートし、NVIDIA NIMマイクロサービスを使用して、テキスト、表、グラフ、画像を検索、文脈化、抽出し、下流の生成アプリケーションで使用できるようにします。このサービスは、処理を並列化し、ドキュメントをページに分割し、コンテンツ(例えば、表、グラフ、画像、テキスト)を分類し、光学式文字認識(OCR)を使用して明確に定義されたJSONスキーマに抽出します。NVIDIA Ingestはまた、オプションとして、埋め込まれたコンテンツの計算を管理し、ベクトルデータベースであるMilvusに保存します。
機能一覧
- PDF、Word、PowerPoint文書の解析をサポート
- NVIDIA NIMマイクロサービスを使用して、テキスト、表、グラフ、画像を検索、文脈化、抽出します。
- ドキュメントの並列化、ページ分割、コンテンツの分類
- OCRによるコンテンツの抽出とJSONスキーマへの変換
- スループットと精度のバランスをとるため、複数の文書タイプの抽出方法をサポート。
- テキストの分割とチャンキング、変換とフィルタリング、埋め込み生成、ストレージへの画像オフロードなど、さまざまな前処理と後処理をサポート。
- オプションで、埋め込みコンテンツの計算とベクターデータベースMilvusへの保存を管理する。
ヘルプの使用
設置プロセス
- NVIDIA Ingestリポジトリをクローンします:
git clone https://github.com/NVIDIA/nv-ingest.git
- プロジェクト・カタログにアクセスする:
cd nv-ingest
- 依存関係をインストールします:
pip install -r requirements.txt
- 環境変数を設定する:
ソース setup_env.sh
- サービスを開始する:
docker-compose up
使用プロセス
- 文書解析タスクを提出する::
- ドキュメントのロードと解析タスクを含むJSONジョブ記述をAPI経由で送信します。
- JSONの職務記述書の例:
{ "document_payload": "base64_encoded_document", "document_tasks": ["parse_text", "extract_metadata"], "extract_metadata "ingestion_tasks": ["parse_text", "extract_metadata"]] 。 }
- 解析結果の取得::
- 抽出されたオブジェクトメタデータ、処理アノテーション、時間/トラッキングデータを含むJSONディクショナリになります。
- サンプルAPIコール
curl -X GET "http://localhost:5000/api/results/{job_id}"
- サポートされるドキュメントの種類と抽出方法::
- PDF文書:pdfium、Unstructured.io、Adobe Content Extraction Servicesによる抽出をサポート。
- Word文書:Microsoft Office APIによる抽出をサポート。
- PowerPoint文書:Microsoft Office API経由の抽出がサポートされています。
- 画像:OCRによる抽出に対応。
- 前処理と後処理::
- テキストの分割とチャンキング:長いテキストを小さなチャンクに分割して、より良い処理と分析を行う。
- 変換とフィルタリング:抽出されたテキストを変換してフィルタリングし、データ品質を向上させる。
- 埋め込み生成:抽出されたコンテンツの埋め込みを計算し、ベクトルデータベースに保存・検索する。
- ストレージへの画像オフロード:抽出した画像を外部ストレージにオフロードし、さらなる処理と分析を行います。
詳しい操作手順
- 文書解析タスクを提出する::
- ドキュメントのロードと解析タスクを含むJSONジョブ記述をAPI経由で送信します。
- JSONの職務記述書の例:
{ "document_payload": "base64_encoded_document", "document_tasks": ["parse_text", "extract_metadata"], "extract_metadata "ingestion_tasks": ["parse_text", "extract_metadata"]] 。 }
- 解析結果の取得::
- 抽出されたオブジェクトメタデータ、処理アノテーション、時間/トラッキングデータを含むJSONディクショナリになります。
- サンプルAPIコール
curl -X GET "http://localhost:5000/api/results/{job_id}"
- サポートされるドキュメントの種類と抽出方法::
- PDF文書:pdfium、Unstructured.io、Adobe Content Extraction Servicesによる抽出をサポート。
- Word文書:Microsoft Office APIによる抽出をサポート。
- PowerPoint文書:Microsoft Office API経由の抽出がサポートされています。
- 画像:OCRによる抽出に対応。
- 前処理と後処理::
- テキストの分割とチャンキング:長いテキストを小さなチャンクに分割して、より良い処理と分析を行う。
- 変換とフィルタリング:抽出されたテキストを変換してフィルタリングし、データ品質を向上させる。
- 埋め込み生成:抽出されたコンテンツの埋め込みを計算し、ベクトルデータベースに保存・検索する。
- ストレージへの画像オフロード:抽出した画像を外部ストレージにオフロードし、さらなる処理と分析を行います。