카테고리:

문자열 및 이진 함수 (대규모 언어 모델)

PARSE_DOCUMENT(SNOWFLAKE.CORTEX)

Snowflake 스테이지의 문서에서 추출된 콘텐츠를 JSON으로 인코딩된 오브젝트가 문자열로 포함되어 있는 OBJECT로 반환합니다. 이 함수는 광학 문자 인식(OCR)과 레이아웃이라는 2가지 유형의 추출을 지원합니다. 자세한 내용은 Cortex Parse Document 개요 을 참조하십시오.

구문

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

인자

필수:

stage

Snowflake 스테이지의 이름입니다.

path

Snowflake 스테이지의 문서에 대한 상대 경로입니다.

선택 사항:

mode

OBJECT 형식의 값을 반환합니다. 오브젝트에서 키 content 의 값은 추출된 데이터를 JSON으로 인코딩된 문자열로 포함합니다. 데이터는 호출에서 지정된 모드에 따라 형식이 지정되거나 일반 텍스트로 표시될 수 있습니다.

  • modeLAYOUT 인 경우 데이터는 테이블을 포함한 구조적 콘텐츠가 있는 마크다운입니다.

  • modeOCR 인 경우 데이터는 텍스트 콘텐츠입니다.

기본값: 'OCR'

반환

추출된 데이터를 JSON으로 인코딩된 문자열로 포함하는 OBJECT 데이터 타입입니다. 그 내용은 호출에 사용된 모드에 따라 달라집니다.

  • LAYOUT 모드: 문서에서 추출한 테이블과 함께 마크다운이 포함된 “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."
 }