カテゴリ:

文字列とバイナリ関数 (大規模言語モデル)

PARSE_DOCUMENT (SNOWFLAKE.CORTEX)

Snowflakeステージ上のドキュメントから抽出した内容を、 JSONでエンコードしたオブジェクトを文字列として含む OBJECTとして返します。この機能は、光学式文字認識(OCR)とレイアウトの2種類の抽出をサポートしています。詳細については、 Cortex Parseドキュメントの概要 をご参照ください。

構文

SNOWFLAKE.CORTEX.PARSE_DOCUMENT( '@<stage>', '<path>', [ { 'mode': '<mode>' }, ] )
Copy

引数

必須:

stage

Snowflakeステージの名前。

path

Snowflakeステージ上のドキュメントへの相対パス。

オプション:

mode

OBJECT 型の値を返します。オブジェクトのキー content の値には、抽出されたデータが JSON でエンコードされた文字列として格納されます。データは、呼び出しで指定されたモードに応じて、フォーマットされるかプレーンテキストになります。

  • modeLAYOUT の場合、データはテーブルを含む構造的なコンテンツを持つMarkdownになります。

  • modeOCR の場合、データはテキストコンテンツです。

デフォルト: 'OCR'

戻り値

JSON エンコードされた文字列として抽出されたデータを含む OBJECT データ型。コンテンツは、呼び出しで使用されるモードによって異なります。

  • LAYOUT モード: ドキュメントから抽出されたテーブルを持つMarkdownを含む「content」キーがある JSON。

  • OCR モード: ドキュメントからのテキストコンテンツを含む「content」キーを持つ JSON。

OCR モード

SELECT TO_VARCHAR(
    SNOWFLAKE.CORTEX.PARSE_DOCUMENT(
        '@PARSE_DOCUMENT.DEMO.documents',
        'document_1.pdf',
        {'mode': 'OCR'}):content
    ) AS OCR;
Copy

出力:

{
    "content of the document"
}

LAYOUT モード

この例では、以下のスクリーンショットに表示されている表を含むドキュメントを解析します。

表を含む PDF コンテンツの例
SELECT
  TO_VARCHAR (
    SNOWFLAKE.CORTEX.PARSE_DOCUMENT (
        '@PARSE_DOCUMENT.DEMO.documents',
        'document_1.pdf',
        {'mode': 'LAYOUT'} ):content ) AS LAYOUT;
Copy

出力:

{
  "content": "# This is PARSE DOCUMENT example
     Example table:
     |Header|Second header|Third Header|
     |:---:|:---:|:---:|
     |First row header|Data in first row|Data in first row|
     |Second row header|Data in second row.|Data in second row.|

     Some more text."
 }