- Categorias:
Funções de cadeia de caracteres e binários (funções de AI)
AI_PARSE_DOCUMENT¶
Nota
AI_PARSE_DOCUMENT é a versão atualizada do PARSE_DOCUMENT (SNOWFLAKE.CORTEX). Para obter a funcionalidade mais recente, use AI_PARSE_DOCUMENT.
Retorna o conteúdo extraído de um documento em uma preparação Snowflake como uma string formatada como JSON. Esta função oferece suporte a dois tipos de extração: Reconhecimento óptico de caracteres (OCR) e layout. Para obter mais informações, consulte AISQL AI_PARSE_DOCUMENT.
Sintaxe¶
AI_PARSE_DOCUMENT( '@<stage>', '<path>', [ <options> ] )
Argumentos¶
Obrigatório:
stage
Nome da preparação Snowflake que contém o documento a ser analisado. Este deve ser uma preparação interna ou externa que usa criptografia do lado do servidor e é acessível ao usuário que executa a função.
path
Caminho relativo para o documento no estágio Snowflake.
Opcional:
options
Um valor OBJECT que contém opções para análise de documentos. As chaves compatíveis são mostradas abaixo. Todas são opcionais.
'mode'
: especifica o modo de análise. Os modos compatíveis são:'OCR'
: a função extrai somente texto. É o modo padrão.'LAYOUT'
: a função extrai o layout e o texto, incluindo o conteúdo estrutural, como tabelas.
'page_split'
: se definido como TRUE, a função divide o documento em páginas e processa cada página separadamente. Este recurso oferece suporte apenas a documentos em PDF, PowerPoint (.pptx
) e Word (.docx
). Os documentos em outros formatos retornam um erro. O padrão é FALSE.Dica
Para processar documentos longos que excedam o limite de token de AI_PARSE_DOCUMENT, defina essa opção como TRUE.
Retornos¶
Um objeto JSON (como uma string) que contém os dados extraídos e os metadados associados. O argumento options
determina a estrutura do objeto retornado.
Dica
Para utilizar a saída em SQL, converta-a em um valor OBJECT usando a função PARSE_JSON.
Se a opção 'page_split'
estiver definida, a saída terá a seguinte estrutura:
"pages"
: uma matriz de objetos JSON, cada um contendo texto extraído do documento. Se o documento tiver apenas uma página, a saída ainda conterá uma matriz"pages"
(que contém um único objeto). Cada página tem os seguintes campos:
"content"
: texto simples (no modo OCR) ou texto formatado em Markdown (no modo LAYOUT).
"index"
: o índice da página no arquivo, começando em 0. Os números de página e os formatos de especificados no documento são ignorados.
"errorInformation"
: contém informações de erro se o documento não puder ser analisado.
"metadata"
: contém metadados sobre o documento, como contagem de páginas.Nota
Os campos
"pages"
e"metadata"
estarão presentes na saída quando a análise for bem-sucedida."errorInformation"
estará presente somente se a análise falhar.
Se 'page_split'
for FALSE ou não estiver presente, a saída terá a seguinte estrutura:
"content"
: texto simples (no modo OCR) ou texto formatado em Markdown (no modo LAYOUT).
"errorInformation"
: contém informações de erro se o documento não puder ser analisado.
"metadata"
: contém metadados sobre o documento, como contagem de páginas.Nota
Os campos
"content"
e"metadata"
estarão presentes na saída quando a análise for bem-sucedida."errorInformation"
estará presente somente se a análise falhar.
Exemplos¶
Para exemplos, consulte exemplos de AI_PARSE_DOCUMENT.
Limitações¶
As funções do Snowflake Cortex não são compatíveis com tabelas dinâmicas.