Cortex AI関数:AI_PARSE_DOCUMENTによるイメージ抽出¶
AI_PARSE_DOCUMENTは、PDFs、Wordドキュメント、画像からテキスト、データ、レイアウト要素、画像を抽出するCortex AI関数です。この高忠実度の画像抽出機能を使用して、次のような高度なマルチモーダルドキュメント処理ワークフローを強化します。
データを強化:ドキュメントから画像を抽出し、より詳細なインサイトのために視覚的なコンテキストを追加します。
マルチモーダルRAG:検索拡張生成(RAG)のために画像とテキストを組み合わせ、モデルの応答を改善します。
画像分類:自動タグ付けと分析のためにAI_EXTRACTまたはAI_COMPLETEで抽出された画像を使用します。
ナレッジベース:より良い検索と推論のために、テキストと画像の両方を含めることで豊富なリポジトリを構築します。
コンプライアンス:規制および監査のワークフローのために、イメージ(例: チャート、署名)を抽出および分析します。
AI_PARSE_DOCUMENTの概要については、 AI_PARSE_DOCUMENT を使用したドキュメントの解析 をご参照ください。
AI_PARSE_DOCUMENTを使用した画像の抽出¶
AI_PARSE_DOCUMENTを使用してドキュメントから画像を抽出するには:
'mode'オプションを'LAYOUT'に設定します。イメージ抽出では、LAYOUTモードが必要です。'extract_images'オプションを TRUE に設定します。
AI_PARSE_DOCUMENT画像抽出は、配列 images をJSON出力で返します。images の各要素には、フィールド image_base64 が含まれ、base64文字列としてエンコードされた抽出された画像データを持ちます。また、画像OBJECT_CONSTRUCTには一意のIDと画像の境界ボックスのフィールドも含まれています。
BASE64_DECODE_BINARYを使用してイメージをデコードし、次に直接AI_EXTRACTに渡して画像コンテンツを処理または記述できます。あるいは、マルチモーダルAI_COMPLETEを使用して処理するためにステージに保存することもできます。(AI_COMPLETEは現在、直接の画像入力をサポートしていません。)
例¶
画像を抽出して記述する¶
画像データを抽出した後に、AI_EXTRACTを使用して画像のコンテンツを処理または記述できます。次の例では、Base64からバイナリに変換した後、最初に抽出された画像の説明を生成します。(AI_EXTRACTにはバイナリ入力が必要です。)クエリは、正規表現を使用して、Base64文字列からメタデータ(スキーマと形式)を取り除きます。
抽出されたイメージをステージに格納する¶
ドキュメントから抽出したイメージをSnowflakeステージに保存して、他のCortex AI関数で再利用、監査、追加処理を行うことができます。この例では、Pythonストアドプロシージャを作成して使用し、AI_PARSE_DOCUMENTからBase64イメージデータをデコードし、指定されたステージに結果のイメージファイルをアップロードします。
SAVE_EXTRACTED_IMAGESプロシージャの作成後、次のコードスニペットに示すように、呼び出してドキュメントから画像を抽出してステージに保存することができます。
このクエリの出力は、指定されたステージに格納されているイメージのファイルパスのリストです。
他のCortex AI関数を使用して保存されたイメージを処理できるようになりました。AI_COMPLETEなどでマルチモーダル分析または生成ができます。
応答:
コストの考慮事項¶
AI_PARSE_DOCUMENTは処理されたページ数に基づく課金を使用します。単一の画像ファイルは、請求目的のためのページと見なされます。画像を抽出しても、追加コストは発生しません。
現在の制限¶
1つのドキュメントから50個以上の画像を抽出することはできません。追加の画像は無視されます。
4x4ピクセルより小さい画像は抽出されません。
応答のサイズがアカウントパラメーターEXTERNAL_FUNCTION_MAx_RESPONSE_SIZEを超える場合、関数はエラーを返します。必要に応じて、このパラメーターの値を増やします。