Cortex AI Functions: extração de imagens com AI_PARSE_DOCUMENT¶
AI_PARSE_DOCUMENT é uma função do Cortex AI que extrai texto, dados, elementos de layout e imagens de PDFs, documentos do Word e imagens. Use esse recurso de extração de imagens de alta fidelidade para operar fluxos de trabalho de processamento de documentos avançados e multimodais, como:
Enriquecer dados: extrair imagens de documentos para adicionar contexto visual e obter insights mais detalhados.
RAG multimodal: combinar imagens e texto para geração aumentada de recuperação (Retrieval-Augmented Generation, RAG) para melhorar as respostas do modelo.
Classificação de imagens: usar as imagens extraídas com AI_EXTRACT ou AI_COMPLETE para marcação e análise automáticas.
Bases de conhecimento: criar repositórios mais enriquecidos incluindo texto e imagens para pesquisa e raciocínio melhores.
Conformidade: extrair e analisar imagens (por exemplo, gráficos e assinaturas) para fluxos de trabalho regulatórios e de auditoria.
Para conferir uma apresentação do AI_PARSE_DOCUMENT, consulte Análise de documentos com AI_PARSE_DOCUMENT.
Usando o AI_PARSE_DOCUMENT para extrair imagens¶
Para extrair imagens de um documento usando AI_PARSE_DOCUMENT:
Defina a opção
'mode'como'LAYOUT'. A extração de imagens requer o modo LAYOUT.Defina a opção
'extract_images'como TRUE.
A extração de imagens com AI_PARSE_DOCUMENT retorna uma matriz, images, na saída JSON. Cada elemento de images contém um campo, image_base64, com os dados da imagem extraída codificados como uma cadeia de caracteres base64. O OBJECT_CONSTRUCT da imagem também contém campos para ID exclusivo e caixas delimitadoras da imagem.
Você pode decodificar as imagens usando BASE64_DECODE_BINARY, depois passá-las diretamente para AI_EXTRACT para processar ou descrever o conteúdo das imagens. Se preferir, armazene-as em uma área de preparação para processamento usando o AI_COMPLETE multimodal. Atualmente, o AI_COMPLETE não oferece suporte à entrada direta de imagens.
Exemplos¶
Extrair e descrever imagens¶
Depois de extrair os dados da imagem, você poderá usar o AI_EXTRACT para processar ou descrever o conteúdo da imagem. O exemplo a seguir gera uma descrição para a primeira imagem extraída depois de convertê-la de base64 em binária. O AI_EXTRACT requer uma entrada binária. A consulta usa uma expressão regular para remover os metadados (esquema e formato) da cadeia de caracteres base64.
Armazenar as imagens extraídas em uma área de preparação¶
É possível armazenar as imagens extraídas de documentos em uma área de preparação do Snowflake para reutilização, auditoria ou processamento adicional com outras funções do Cortex AI. Este exemplo cria e usa um procedimento armazenado em Python para decodificar dados de imagem base64 de AI_PARSE_DOCUMENT e carregar os arquivos de imagem resultantes em uma área de preparação especificada.
Depois de criar o procedimento SAVE_EXTRACTED_IMAGES, você poderá chamá-lo para extrair imagens de um documento e armazená-las em uma área de preparação, conforme mostrado no trecho de código a seguir:
A saída dessa consulta é uma lista de caminhos de arquivos para as imagens armazenadas na área de preparação especificada, como:
Agora você pode processar as imagens armazenadas usando outras funções do Cortex AI, como AI_COMPLETE, para análise ou geração multimodal.
Resposta:
Considerações sobre custo¶
O AI_PARSE_DOCUMENT aplica um faturamento com base no número de páginas processadas. Um único arquivo de imagem é considerado uma página para fins de faturamento. A extração de imagens não gera custos adicionais.
Limitações atuais¶
Não é possível extrair mais de cinquenta imagens de um único documento. Imagens adicionais são ignoradas.
Imagens menores que 4x4 pixels não são extraídas.
Se o tamanho de uma resposta exceder o parâmetro de conta EXTERNAL_FUNCTION_MAx_RESPONSE_SIZE, a função retornará um erro. Aumente o valor desse parâmetro se necessário.