カテゴリ:

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

PARSE_DOCUMENT (SNOWFLAKE.CORTEX)

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

構文

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

引数

必須:

stage

Snowflakeステージの名前。

path

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

オプション:

mode

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

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

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

デフォルト: 'OCR'

戻り値

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

  • OCR モード(デフォルト): 以下に説明されたキーを持つ(文字列としての) JSON。

    • "content": ドキュメントから抽出されたテキスト。

    • "errorInformation": 抽出に失敗した場合のエラー情報が含まれます。

  • LAYOUT モード(プレビュー): 以下に説明されたキーを持つ(文字列としての) JSON。

    • "content": ドキュメントからテーブルを抽出したMarkdown形式のテキスト。

    • "errorInformation": 抽出に失敗した場合のエラー情報が含まれます。

OCR モード

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

出力:

{
    "content": "content of the document"
}

LAYOUT モード

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

表を含む PDF コンテンツの例
SELECT
  TO_VARCHAR (
    SNOWFLAKE.CORTEX.PARSE_DOCUMENT (
        '@PARSE_DOCUMENT.DEMO.documents',
        'document_1.pdf',
        {'mode': 'LAYOUT'} ) ) 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."
 }

制限事項

Snowflake Cortex関数は動的テーブルをサポートしていません。