Pular para o conteúdo principal

Tarefa ai_parse_document para jobs

info

Beta

Esse recurso está na Beta. Para usá-lo, um administrador do Workspace deve ativar a Tarefa de função de AI do Lakeflow na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.

Para analisar documentos em um job, use uma tarefa ai_parse_document. A tarefa executa ai_parse_document em cada documento em um volume ou tabela do Unity Catalog. A tarefa analisa texto, tabelas, descrições de figuras e disposição de documentos como PDFs e imagens, e grava o resultado para cada documento em uma tabela do Unity Catalog. Para formatos de arquivo compatíveis e limites, consulte ai_parse_document.

Uma tarefa de ai_parse_document é um tipo de tarefa de função de AI. No Jobs API e nos Declarative Automation Bundles, é um ai_function_task com a função ai_parse_document definida. Para requisitos e como as tarefas de função de AI processam dados, consulte Tarefas de função de AI para Job.

Adicionar uma tarefa ai_parse_document​

Para adicionar uma tarefa de ai_parse_document:

  1. Navegue até a tab Tarefas na UI de Jobs.

  2. Clique em Ícone de mais. Adicionar tarefa . Se o job ainda não tiver tarefas, clique em Ícone de mais. Adicionar outro tipo de tarefa .

  3. Em Inteligência de documentos , selecione Parsing de documentos .

  4. Insira um nome no campo Nome da tarefa . O default é parsing.

  5. Em Entrada , selecione os documentos a serem analisados. Veja Entrada.

    • Volume : selecione um volume ou uma pasta em um volume.
    • Tabela : Selecione uma tabela e um FILE ou BINARY Coluna .
  6. Em Saída , selecione a Localização e, opcionalmente, insira um Nome da tabela . Consulte Saída.

  7. (Opcional) Para uma entrada de tabela, adicione uma coluna de ID . Veja Coluna de ID.

  8. Em Descrever tipos de elementos , selecione quais elementos analisados recebem uma descrição gerada por AI: Todos os tipos suportados , Apenas figuras ou Nenhum . Nenhum gera descrições, o que reduz o compute e o custo para documentos com muitas figuras. Consulte Compreender elementos.

  9. (Opcional) Para configurar limites de tentativas, duração de execução ou backlog de transmissão, ou notificações, consulte Configurações avançadas de tarefa.

  10. Clique em Salvar tarefa .

A tarefa será executada na próxima execução do Job. Para execução o job em uma programar, veja Executar jobs em uma programar. Para editar, clonar, desabilitar ou excluir esta tarefa, veja Configurar e editar tarefas no Lakeflow Jobs.

Defina a tarefa em Pacotes de Automação Declarativa​

Os Pacotes de Automação Declarativa permitem que você defina o job em arquivos de origem para que você possa versionar, revisar e implantar alterações nele como se fossem código. O exemplo a seguir define um job com uma tarefa ai_parse_document que analisa cada arquivo em um volume e gera descrições apenas para figuras. Para não gerar descrições, omita description_element_types. Para salvar uma imagem renderizada de cada página, defina image_output_path como um caminho de volume. Para criar o job com a API de Jobs, envie as mesmas configurações de job para jobs/create.

YAML
# resources/parse_invoices.job.yml
resources:
jobs:
parse_invoices:
name: parse_invoices
tasks:
- task_key: parsing
ai_function_task:
volume:
volume_path: /Volumes/main/finance/invoices
output:
catalog: main
schema: finance
ai_parse_document:
version: '2.0'
description_element_types: [DESCRIPTION_ELEMENT_TYPE_FIGURE]

Saída​

A coluna response da tabela de saída contém o resultado completo ai_parse_document para cada documento como um VARIANT. A tarefa não adiciona uma coluna para cada valor. Para obter um valor como uma coluna, selecione-o de response em uma query. Para o formato, veja retornos ai_parse_document. Para as outras colunas, veja Tabela de saída.

Use com outras funções de AI​

Para extrair campos de ou classificar os documentos analisados, adicione uma ai_extract ou ai_classify tarefa cuja execução ocorra após a tarefa ai_parse_document. Na interface de usuário de Jobs, a entrada da nova tarefa é configurada por default para a tabela de saída e a coluna response da tarefa ai_parse_document. Veja Usar a saída em uma tarefa posterior.

O exemplo Declarative Automation Bundles a seguir define um job que analisa os arquivos em um volume e, em seguida, extrai um ID de fatura e um total de cada documento analisado. A tarefa extraction lê a tabela de saída da tarefa parsing com {{tasks.parsing.output.table_name}}, lê sua coluna response e usa sua coluna id como a coluna de ID.

YAML
# resources/parse_and_extract_invoices.job.yml
resources:
jobs:
parse_and_extract_invoices:
name: parse_and_extract_invoices
tasks:
- task_key: parsing
ai_function_task:
volume:
volume_path: /Volumes/main/finance/invoices
output:
catalog: main
schema: finance
ai_parse_document:
version: '2.0'
- task_key: extraction
depends_on:
- task_key: parsing
ai_function_task:
delta_table:
table_name: '{{tasks.parsing.output.table_name}}'
input_column: response
merge_key_columns: [id]
output:
catalog: main
schema: finance
table: invoice_fields
ai_extract:
version: '2.1'
schema: |
{
"invoice_id": {"type": "string", "description": "Unique invoice identifier"},
"total_amount": {"type": "number", "description": "Total invoice amount"}
}

Outros recursos​