ai_parse_document agora extrai dados de gráficos em JSON
A função ai_parse_document agora identifica gráficos em documentos e extrai rótulos, legendas e valores de séries diretamente como JSON estruturado no campo content.
O que mudou
A função ai_parse_document agora extrai informações tabulares e numéricas de gráficos presentes em documentos não estruturados. Quando identifica um gráfico, a função gera descrições detalhadas e preenche os dados do gráfico em formato JSON estruturado.
Para que serve
Imagine que você processa relatórios de mercado em PDF com diversos gráficos de barras e linhas demonstrando faturamento trimestral. Antes, era necessário tratar imagens de figuras manualmente ou confiar apenas em resumos textuais. Agora você consegue extrair os dados numéricos do próprio gráfico diretamente em consultas SQL ou jobs Spark, permitindo:
- Consultar séries temporais e valores numéricos exibidos visualmente em gráficos.
- Alimentar pipelines analíticos e aplicações de RAG multimodal com números concretos extraídos das figuras.
- Evitar etapas externas de OCR especializado em visualizações de dados.
Como usar
Para capturar essas informações, chame a função passando o conteúdo binário do documento. Opcionalmente, fixe o esquema na versão 2.0 e ative as descrições de elementos gráficos com 'descriptionElementTypes', '*'. Os dados do gráfico aparecerão no campo content dos elementos classificados como figure.
SELECT
path,
ai_parse_document(
content,
map(
'version', '2.0',
'descriptionElementTypes', '*'
)
) AS parsed_doc
FROM READ_FILES('/Volumes/meu_catalogo/meu_schema/meu_volume/documentos/', format => 'binaryFile');
O que acontece nesse código:
- A função
READ_FILESlê os arquivos do volume Unity Catalog no formatobinaryFile. ai_parse_documentprocessa o binário do documento usando o layout do esquema versão 2.0.- O parâmetro
'descriptionElementTypes', '*'habilita a geração de descrições e análise estruturada de figuras, incluindo o JSON dos gráficos.
Para filtrar apenas os dados numéricos dos gráficos capturados:
WITH parsed AS (
SELECT
path,
ai_parse_document(content, map('version', '2.0', 'descriptionElementTypes', '*')) AS doc
FROM READ_FILES('/Volumes/meu_catalogo/meu_schema/meu_volume/relatorios/', format => 'binaryFile')
)
SELECT
path,
elem.description AS descricao_figura,
elem.content AS dados_grafico_json
FROM parsed,
LATERAL EXPLODE(doc:document:elements) AS t(elem)
WHERE elem.type = 'figure'
AND elem.content IS NOT NULL;
O que acontece nesse código:
- O CTE processa os documentos da pasta indicada.
- O comando
LATERAL EXPLODEdesmembra a listaelementsde cada documento retornado em formatoVARIANT. - O filtro seleciona apenas itens do tipo
figurecujocontentnão seja nulo, trazendo o JSON com séries, legendas e eixos.
O que retorna
Quando o elemento analisado for um gráfico, o campo content dentro de elements traz uma string JSON estruturada (valores ilustrativos):
| Campo | Descrição |
|---|---|
title | Título detectado no gráfico (ex.: "Quarterly revenue") |
values | Dicionário estruturado com as séries e valores numéricos lidos (ex.: {"Revenue": {"Q1": 12, "Q2": 15}}) |
additional_info | Detalhes contextuais complementares ou eixos identificados no gráfico |
Limitações e requisitos
- Requer Databricks Runtime 17.3 ou superior.
- Em computação serverless, requer ambiente versão 3 ou superior para suporte ao tipo
VARIANT. - Suporte aos formatos de entrada: PDF, JPG/JPEG, PNG, TIFF/TIF, DOC/DOCX e PPT/PPTX armazenados como tipo
BINARY. - Limite de até 500 páginas por documento (se exceder, a função falha a menos que
pageRangeseja configurado). - O faturamento do uso é registrado no produto
AI_FUNCTIONSe depende da disponibilidade regional dos modelos de fundação.
Como aplicar num pipeline
Em uma camada Bronze que ingere arquivos binários de volumes Unity Catalog, use ai_parse_document em uma visualização ou tabela Silver. Da Silver, exploda os elementos do tipo figure e use funções JSON para carregar os valores das séries diretamente em tabelas dimensionais ou fatos na camada Gold.
- ai_parse_document
- ai functions
- databricks sql
- variant
ai_parse_document now extracts chart data
Resumo e explicação gerados por IA a partir da release note oficial. Em caso de dúvida, a documentação oficial da plataforma prevalece.
Relacionadas
- DatabricksBeta
Conector do SurveyMonkey chega ao Lakeflow Connect no Databricks
O Lakeflow Connect agora conta com conector nativo para o SurveyMonkey em Beta, permitindo ingestão incremental de pesquisas, respostas e contatos com governança no Unity Catalog.
lakeflow connect · surveymonkey - DatabricksBeta
Lakeflow Connect adiciona conector do Oracle Eloqua em Beta
O Lakeflow Connect agora oferece um conector gerenciado em Beta para o Oracle Eloqua, permitindo ingestão incremental de dados de marketing governados pelo Unity Catalog.
lakeflow connect · oracle eloqua - DatabricksBeta
Ingira métricas do GA4 com o novo conector do Lakeflow Connect
O Lakeflow Connect ganha conector gerenciado em Beta para o Google Analytics 4, permitindo ingestão incremental de relatórios agregados via API com governança no Unity Catalog.
lakeflow connect · google analytics