Pular para o conteúdo principal

Visão geral

A extração baseada em prompt permite usar instruções em linguagem natural para extrair dados estruturados de documentos usando LLMs. Em vez de treinar modelos tradicionais de aprendizado de máquina, você descreve quais dados deseja extrair e como eles devem ser formatados, e o LLM executa a extração com base nas suas instruções. O que você irá realizar:
  • Criar uma atividade de extração baseada em prompt.
  • Configurar uma conexão com um LLM.
  • Escrever prompts de extração eficazes.
  • Definir o formato e a estrutura de saída.
  • Definir o grau de rigor e aplicar regras de validação.
  • Testar e aprimorar sua extração.
Tempo para concluir: 20–30 minutos Casos de uso:
  • Extração de informações do Fornecedor a partir de faturas
  • Captura de dados de documentos em nível de cabeçalho
  • Processamento de documentos semiestruturados
  • Documentos com layouts variáveis

Pré-requisitos

Antes de começar, certifique-se de que você tenha:
  1. Acesso ao ABBYY Vantage Advanced Designer.
  2. Uma conexão LLM configurada. Consulte Como configurar conexões LLM.
  3. Uma Skill de Documento com documentos de exemplo carregados.
  4. Compreensão básica da estrutura JSON.
  5. Definições de campos para os dados que você deseja extrair.
Observação: Este guia se concentra na extração no nível de cabeçalho. Os recursos de extração de tabelas podem variar.

Compreendendo a extração baseada em prompts

O que é Extração Baseada em Prompt?

A extração baseada em prompt utiliza LLMs para entender e extrair dados de documentos a partir de instruções em linguagem natural. Você define:
  • Função: Como o LLM deve atuar (por exemplo, “modelo de extração de dados”).
  • Instruções: Como extrair e formatar os dados.
  • Estrutura de saída: O formato JSON exato para os resultados.
  • Regras: Diretrizes para lidar com dados ambíguos ou ausentes.

Benefícios

  • Não requer dados de treinamento: Funciona apenas com engenharia de prompts.
  • Flexível: É fácil adicionar ou modificar campos.
  • Lida com variações: LLMs conseguem entender diferentes formatos de documento.
  • Configuração rápida: Mais rápido do que treinar modelos tradicionais de aprendizado de máquina.
  • Linguagem natural: Escreva instruções em inglês simples.

Limitações

  • Custo: Cada extração faz chamadas à API de LLM.
  • Velocidade: Mais lenta que a extração tradicional para documentos simples.
  • Consistência: Os resultados podem variar ligeiramente entre execuções.
  • Limites de contexto: Documentos muito longos podem exigir um tratamento especial.

Etapa 1: Adicionar uma Atividade Baseada em Prompt

Crie uma nova atividade de extração baseada em prompt na sua Skill de Documento.
  1. Abra sua Skill de Documento no ABBYY Vantage Advanced Designer.
  2. No painel esquerdo, localize EXTRACT FROM TEXT (NLP).
  3. Encontre e clique em Prompt-based.
Selecting Prompt-Based Activity
  1. A atividade aparece no seu canvas de fluxo de trabalho.
  2. Conecte-a entre as atividades de entrada e saída.
Observação: Atividades baseadas em prompt podem ser encontradas em “EXTRACT FROM TEXT (NLP)” no painel Activities, juntamente com outros métodos de extração, como Named Entities (NER) e Deep Learning.

Etapa 2: Configurar a conexão de LLM

Selecione qual conexão de LLM a atividade deve usar.
  1. Selecione a atividade baseada em prompt no seu fluxo de trabalho.
  2. No painel Activity Properties à direita, localize LLM Connection.
  3. Clique no menu suspenso.
Configuring LLM Connection
  1. Selecione na lista a conexão de LLM que você configurou.
    • Exemplo: Nick-ChatGPT, Microsoft Foundry, Production GPT-4
  2. Verifique se a conexão foi selecionada.
Observação: Se você não vir nenhuma conexão listada, primeiro será necessário configurar uma conexão de LLM em Configuration → Connections.

Etapa 3: Definir campos de saída

Configure os campos que você deseja extrair antes de escrever seu prompt.
  1. No painel Activity Properties, localize a seção Output.
  2. Você verá uma lista hierárquica de grupos de campos e campos.
  3. Neste exemplo, estamos extraindo informações do fornecedor:
    • Fornecedor
      • Nome
      • Endereço
      • TaxID
      • Número da conta
      • Sort Code
      • IBAN
      • BIC_SWIFT
    • Unidade de negócios
      • Nome
      • Endereço
      • Data da fatura
      • Número da fatura
    • Totais
      • Montante líquido
Estrutura de saída de campos
  1. Clique no botão Activity Editor para começar a configurar o prompt.
Observação: Defina todos os campos antes de escrever seu prompt. Os nomes dos campos serão referenciados na estrutura do prompt.

Etapa 4: Definir a Função

Defina qual função o LLM deve desempenhar ao processar documentos.
  1. No Activity Editor, você verá a interface Prompt Text
  2. Comece com a seção ROLE:
FUNÇÃO

Você é um modelo de extração de dados. Extraia apenas os campos relacionados ao fornecedor especificados de um documento. Extraia o texto do valor exatamente como está (não o rótulo). Não infira nem reformate nenhum dado. Omita qualquer campo que não esteja claramente presente.
Prompt Text Editor Instruções principais para o papel:
  • Seja específico: “data extraction model” informa ao LLM qual é o seu propósito.
  • Defina o escopo: “vendor-related fields” limita o que deve ser extraído.
  • Estabeleça expectativas: “value text verbatim” evita reformatar os dados.
  • Trate dados ausentes: “Omit any field that is not clearly present”.
Melhores práticas:
  • Mantenha o papel claro e conciso.
  • Use frases no imperativo (“Extract”, “Do not infer”).
  • Seja explícito sobre o que NÃO fazer.
  • Defina como lidar com casos limite.

Etapa 5: Definir o formato de saída

Especifique a estrutura exata em JSON para os resultados de extração.
  1. Abaixo da seção ROLE, adicione o título OUTPUT FORMAT.
  2. Defina a estrutura JSON:
OUTPUT FORMAT

Return one valid JSON object using this exact structure:

{
  "Fields": [
    { "FieldName": Vendor.Name, "Text": "...", "Line": <FirstLineIndex> },
    { "FieldName": Vendor.Address, "Text": "...", "Line": <FirstLineIndex> },
    { "FieldName": Vendor.TaxID, "Text": "...", "Line": <FirstLineIndex> },
    { "FieldName": Vendor.Account Number, "Text": "...", "Line": <FirstLineIndex> },
    { "FieldName": Vendor.Sort Code, "Text": "...", "Line": <FirstLineIndex> },
    { "FieldName": Vendor.IBAN, "Text": "...", "Line": <FirstLineIndex> },
    { "FieldName": Vendor.BIC_SWIFT, "Text": "...", "Line": <FirstLineIndex> }
  ]
}
Formato de saída JSON Componentes da estrutura:
  • FieldName: Deve corresponder exatamente às suas definições de campo (por exemplo, Vendor.Name).
  • Text: O valor extraído como uma string.
  • Line: Índice de linha iniciando em zero em que o valor aparece no documento.
Observações importantes:
  • Use exatamente os nomes de campo da sua configuração de Output.
  • Inclua todos os campos, mesmo que alguns possam estar vazios.
  • A estrutura deve ser um JSON válido.
  • Os números de linha ajudam na verificação e na solução de problemas.

Etapa 6: Adicionar Regras de Extração Específicas para Campos

Forneça instruções detalhadas para a extração de cada campo. Abaixo de OUTPUT FORMAT, adicione regras específicas para cada tipo de campo:
VENDOR NAME
1) Recognize names like "ABC Corporation", "XYZ Ltd", "Acme Inc.".
2) Extract the complete company name including legal suffixes (Ltd, Inc, GmbH, etc.).
3) Vendor name typically appears near the top of the document.

VENDOR ADDRESS
1) Extract the complete address including street, city, postal code.
2) For multiline addresses, represent each new line using "\n".
3) Vendor-side only; exclude customer/buyer addresses.

NÚMERO DA CONTA
1) Reconheça "Account Number", "Account No", "Acct #".
2) Extraia o formato numérico exatamente como impresso (por exemplo, "12-34-56" ou "500 105 17").
3) Somente contas do fornecedor (por exemplo, seções "Beneficiary" ou "Vendor Payment").
4) Ignore IBAN — ele possui seu próprio campo.

SORT CODE
1) Recognize "Sort Code", "Sort No.", "BLZ", "Bankleitzahl".
2) Extract the numeric format exactly as printed (e.g., "12-34-56" or "500 105 17").
3) Vendor-side data only; ignore payer/buyer codes.

IBAN
1) Recognize "IBAN", "International Bank Account Number".
2) Extract the full IBAN exactly as printed (include spaces).
3) Vendor-side only, typically under "Bankverbindung", "Coordonnées bancaires", "Payment Details", or "Beneficiary Bank".

BIC_SWIFT
1) Recognize "BIC", "SWIFT", or "BIC/SWIFT".
2) Extract the complete identifier (usually 8 or 11 uppercase letters/numbers).
3) Vendor-side only, near the IBAN or bank name.
4) Exclude customer/payer data.
Extraction Rules Estrutura das regras:
  • Padrões de reconhecimento: Liste rótulos alternativos para cada campo.
  • Especificações de formato: Descreva o formato exato a ser extraído.
  • Dicas de localização: Onde os dados geralmente são encontrados.
  • Exclusões: O que NÃO deve ser extraído.
Boas práticas:
  • Numere suas regras para maior clareza.
  • Forneça diversas variações de rótulos.
  • Especifique a origem dos dados (lado do Fornecedor vs. lado do Cliente).
  • Inclua exemplos de formato entre parênteses.
  • Seja explícito sobre campos relacionados (por exemplo, “Ignore o IBAN — ele tem seu próprio campo”).

Etapa 7: Aplicar regras de rigor

Adicione regras de validação para garantir a qualidade e a consistência dos dados. No final do seu prompt, adicione uma seção STRICTNESS:
STRICTNESS
- Never generate or infer values.
- Omit ambiguous or missing fields.
- If none of the vendor fields are found, return:
  {
    "Fields": []
  }
Regras de rigor Regras adicionais de rigor (opcional):
REGRAS GERAIS
- Extraia exatamente um valor por campo.
- Ignore qualquer campo que não possa ser localizado com segurança — omita-o da saída.
- "FieldName" deve corresponder exatamente aos nomes acima.
- "Text" deve ser copiado literalmente do documento — sem normalização ou inferência.
- Para valores de múltiplas linhas (por exemplo, endereços), represente cada nova linha usando a sequência de escape "\n" (uma barra invertida seguida pela letra n).
- Não insira tags HTML como <br> no texto de saída.
- "Line" é o índice baseado em zero da primeira linha que contém o valor extraído; inclua-o apenas se verificável.
Por que o rigor é importante:
  • Evita alucinações: LLMs podem gerar dados plausíveis, porém incorretos.
  • Garante consistência: Regras claras reduzem a variação entre execuções.
  • Trata dados ausentes: Define o que fazer quando campos não são encontrados.
  • Mantém a integridade dos dados: Extração literal preserva a formatação original.
Princípios fundamentais de rigor:
  • Nunca gerar dados que não estejam no documento.
  • Omitir extrações incertas em vez de adivinhar.
  • Retornar estrutura vazia se nenhum campo for encontrado.
  • Manter correspondência exata dos nomes de campo.
  • Preservar a formatação original do texto.

Etapa 8: Selecionar o formato do documento

Escolha qual representação de documento enviar para o LLM.
  1. No Activity Editor, localize a lista suspensa Prompt.
  2. Você verá opções de como o documento será fornecido ao LLM.
Opções de formato de documento Formatos disponíveis:
  • PDF: Arquivo PDF original
    • Use em: Documentos em que o layout é crítico
    • Observações: Tamanho de arquivo maior; alguns LLMs têm suporte limitado a PDF
  • Plain Text: Extração de texto sem formatação
    • Use em: Documentos simples, somente texto
    • Observações: Perde toda a formatação e as informações de layout
  • Annotated Text ⭐ (Recomendado)
    • Use em: A maioria dos tipos de documento
    • Observações: Preserva a estrutura, embora seja baseado em texto
    • Benefícios: Melhor equilíbrio entre estrutura e desempenho
  • Formatted Text: Texto com formatação básica preservada
    • Use em: Documentos em que alguma formatação é importante
    • Observações: Meio-termo entre Plain e Annotated
  1. Selecione Annotated Text para obter os melhores resultados
Observação: Com base em testes, constatou-se que Annotated Text oferece os resultados mais consistentes e confiáveis para tarefas de extração. Ele preserva a estrutura do documento, ao mesmo tempo em que é processado de forma eficiente pelos LLMs.

Etapa 9: Teste sua extração

Execute a atividade em documentos de exemplo para verificar os resultados.

Executar a Activity

  1. Feche o Activity Editor.
  2. Navegue até a guia All Documents.
  3. Selecione um documento de teste.
  4. Clique no botão Test Activity ou Run.
Testando a Activity
  1. Aguarde enquanto o LLM processa o documento
    • Tempo de processamento: geralmente de 5 a 30 segundos, dependendo da complexidade do documento.
    • Você verá um indicador de carregamento enquanto aguarda a resposta da API.

Revisar os resultados

Quando o processamento for concluído:
  1. A interface muda para a Visualização preditiva:
  2. Verifique o painel Saída, que mostra os campos extraídos:
  3. Clique em cada campo para ver:
    • Valor extraído
    • Nível de confiança (se fornecido)
    • Região destacada na imagem do documento
Reviewing Results O que verificar:
  • ✅ Todos os campos esperados estão preenchidos
  • ✅ Os valores correspondem exatamente ao documento
  • ✅ Nenhum dado alucinado ou inferido
  • ✅ Tratamento adequado de campos multilinha
  • ✅ Campos ausentes são omitidos (não preenchidos com dados incorretos)

Padrões comuns de resultados

Extração bem-sucedida:
{
  "Fields": [
    { "FieldName": "Vendor.Name", "Text": "ABC Corporation Ltd", "Line": 3 },
    { "FieldName": "Vendor.Address", "Text": "123 Business Street\nLondon SW1A 1AA", "Line": 5 },
    { "FieldName": "Vendor.IBAN", "Text": "GB29 NWBK 6016 1331 9268 19", "Line": 15 }
  ]
}
Extração parcial (alguns campos não extraídos):
{
  "Fields": [
    { "FieldName": "Vendor.Name", "Text": "ABC Corporation Ltd", "Line": 3 }
  ]
}
Nenhum campo encontrado:
{
  "Fields": []
}

Etapa 10: Aprimore seu prompt

Faça iterações no seu prompt com base nos resultados dos testes.

Problemas Comuns e Soluções

Problema: o LLM extrai o campo errado
  • Solução: Adicione indicações de localização mais específicas.
  • Exemplo: “Somente do lado do Fornecedor; exclua endereços do cliente/comprador”
Problema: a formatação é alterada
  • Solução: Dê ênfase à extração literal (verbatim).
  • Exemplo: “Extraia o formato numérico exatamente como impresso (por exemplo, ‘12-34-56’)”
Problema: o LLM inventa dados
  • Solução: Aumente o nível de rigor das regras.
  • Exemplo: “Nunca gere ou infira valores. Omita se não estiver presente.”
Problema: campos multilinha são concatenados
  • Solução: Especifique sequências de escape.
  • Exemplo: “Para valores multilinha, use \n para novas linhas”
Problema: nomes de campo incorretos na saída
  • Solução: Verifique se os nomes dos campos correspondem exatamente.
  • Exemplo: Use Vendor.Account Number e não AccountNumber

Processo de melhoria iterativa

  1. Teste em vários documentos: Não otimize para um único caso.
  2. Registre os padrões: Anote quais regras funcionam e quais precisam de refinamento.
  3. Adicione exemplos específicos: Inclua exemplos de formato entre parênteses.
  4. Ajuste o nível de rigor: Refine com base em padrões de extração excessiva/insuficiente.
  5. Teste casos limite: Use documentos com campos ausentes e layouts incomuns.

Exemplos de refinamentos

Antes:
VENDOR NAME
1) Extract the vendor name from the document.
Depois:
NOME DO FORNECEDOR
1) Reconheça nomes como "ABC Corporation", "XYZ Ltd", "Acme Inc.".
2) Extraia o nome completo da empresa, incluindo sufixos legais (Ltd, Inc, GmbH, etc.).
3) O nome do fornecedor normalmente aparece próximo ao topo do documento.
4) Exclua nomes de clientes/compradores - foque na entidade que emite a nota fiscal.

Compreendendo o processo de extração

Como funciona a extração baseada em prompt

  1. Conversão do documento: Seu documento é convertido para o formato selecionado (Annotated Text recomendado).
  2. Montagem do prompt: Seu papel, formato de saída, regras de campos e regras de rigidez são combinados.
  3. Chamada de API: O prompt e o documento são enviados ao LLM por meio da sua conexão.
  4. Processamento pelo LLM: O LLM lê o documento e extrai os dados de acordo com suas instruções.
  5. Resposta JSON: O LLM retorna dados estruturados no formato JSON especificado.
  6. Mapeamento de campos: O Vantage mapeia a resposta JSON para os campos de saída que você definiu.
  7. Verificação: Números de linha e pontuações de confiança (se fornecidos) ajudam a verificar a precisão.

Uso de tokens e custos

Fatores que afetam o custo:
  • Tamanho do documento: Documentos mais longos usam mais tokens.
  • Complexidade do prompt: Prompts detalhados aumentam a contagem de tokens.
  • Escolha de formato: Annotated Text é normalmente mais eficiente que PDF.
  • Número de campos: Mais campos = prompts mais longos.
Dicas de otimização:
  • Use uma linguagem concisa e clara nos prompts.
  • Não duplique instruções.
  • Remova exemplos desnecessários.
  • Considere agrupar campos de dados relacionados.

Boas práticas

Redação de prompts

Faça:
  • ✅ Use instruções claras no imperativo (“Extract”, “Recognize”, “Omit”).
  • ✅ Forneça múltiplas variações de rótulo para cada campo.
  • ✅ Inclua exemplos de formato entre parênteses.
  • ✅ Especifique o que NÃO deve ser extraído (exclusões).
  • ✅ Numere suas regras para facilitar a referência.
  • ✅ Use terminologia consistente em todo o texto.
Não faça:
  • ❌ Não use instruções vagas (“get the name”).
  • ❌ Não presuma que o LLM conhece convenções específicas do domínio.
  • ❌ Não escreva frases excessivamente longas e complexas.
  • ❌ Não se contradiga em diferentes seções.
  • ❌ Não ignore regras de rigor.

Definições de campos

Instruções eficazes para campos:
  • Comece com padrões de reconhecimento (rótulos alternativos).
  • Especifique o formato exato a ser preservado.
  • Forneça indicações de localização (posicionamento típico).
  • Defina a responsabilidade pelos dados (Fornecedor vs. cliente).
  • Inclua o tratamento para valores em várias linhas.
  • Faça referência a campos relacionados para evitar confusão.
Exemplo:
IBAN
1) Reconheça "IBAN", "International Bank Account Number".
2) Extraia o IBAN completo exatamente como impresso (inclua espaços).
3) Apenas do lado do Fornecedor, normalmente em "Bankverbindung", "Detalhes de Pagamento".
4) NÃO confunda com Número da Conta — o IBAN é mais longo e alfanumérico.

Estratégia de teste

  1. Comece com documentos simples: Teste primeiro a extração básica.
  2. Expanda para variações: Experimente diferentes layouts e formatos.
  3. Teste casos limite: Campos ausentes, posições incomuns, múltiplas ocorrências.
  4. Documente as falhas: Guarde exemplos de onde a extração falha.
  5. Itere de forma sistemática: Altere apenas um elemento de cada vez.

Otimização de Desempenho

Para velocidade:
  • Mantenha os prompts concisos.
  • Use o formato Annotated Text.
  • Minimize o número de campos por atividade.
  • Considere dividir documentos complexos.
Para precisão:
  • Forneça regras de campo abrangentes.
  • Inclua exemplos de formato.
  • Adicione regras de rigor mais rígidas.
  • Teste com amostras variadas de documentos.
Para custo:
  • Otimize o tamanho do prompt.
  • Use formatos de documento eficientes.
  • Armazene resultados em cache quando apropriado.
  • Monitore o uso de tokens pelo dashboard do provedor de LLM.

Resolução de problemas

Problemas de extração

Problema: Campos estão vazios apesar de haver dados presentes. Soluções:
  • Verifique se a grafia do nome do campo está exatamente correta.
  • Verifique se os dados estão no formato de documento selecionado.
  • Adicione mais variações de rótulos aos padrões de reconhecimento.
  • Reduza temporariamente o nível de restrição para ver se o LLM encontra o dado.
  • Verifique se a qualidade do documento afeta a extração por OCR (Optical Character Recognition)/texto.
Problema: O LLM extrai dados do cliente em vez de dados do fornecedor. Soluções:
  • Reforce as especificações do lado do fornecedor.
  • Adicione exclusões explícitas para dados de cliente/comprador.
  • Forneça dicas de localização (por exemplo, “topo do documento”, “seção do emissor”).
  • Inclua exemplos de extração correta versus incorreta.
Problema: Valores multilinha são concatenados ou ficam com formato incorreto. Soluções:
  • Especifique explicitamente o formato da sequência de escape (\n).
  • Forneça exemplos de saída multilinha correta.
  • Verifique se o formato do documento preserva as quebras de linha.
  • Adicione a instrução: “Preservar as quebras de linha originais usando \n”.
Problema: O LLM reformata ou normaliza dados. Soluções:
  • Enfatize “verbatim” e “exatamente como impresso”.
  • Adicione a seguinte regra de rigor: “Sem normalização ou inferência”.
  • Forneça exemplos específicos mostrando a preservação da formatação.
  • Inclua exemplos negativos: “Não ‘12-34-56’, manter como ‘12 34 56’”.

Problemas de desempenho

Problema: A extração está muito lenta. Soluções:
  • Altere para o formato Annotated Text se estiver usando PDF.
  • Simplifique o prompt sem perder instruções críticas.
  • Reduza a resolução do documento se as imagens forem muito grandes.
  • Verifique o status do provedor de LLM e os limites de taxa.
  • Considere usar um modelo mais rápido para documentos simples.
Problema: Resultados inconsistentes entre execuções. Soluções:
  • Torne mais rígidas as regras de validação.
  • Torne as instruções mais específicas e sem ambiguidades.
  • Adicione mais exemplos de formato.
  • Reduza a complexidade do prompt que possa dar margem a interpretações.
  • Teste com configurações de temperatura mais altas (se disponíveis na conexão).
Problema: Custos de API elevados. Soluções:
  • Otimize o tamanho do prompt.
  • Use Annotated Text em vez de PDF.
  • Procure processar documentos em lotes fora do horário de pico.
  • Considere usar modelos menores/mais baratos para documentos simples.
  • Monitore e configure alertas de orçamento no painel do provedor de LLM.

Técnicas avançadas

Extração condicional

Você pode instruir o LLM a extrair determinados campos apenas se certas condições forem atendidas:
NÚMERO DA CONTA (CONDICIONAL)
1) Extrair somente se o documento contiver detalhes de pagamento bancário.
2) Se "Método de pagamento: Cheque" ou similar aparecer, omitir este campo.
3) Reconhecer "Account Number", "Account No", "Acct #".

Suporte a vários idiomas

A extração baseada em prompts funciona bem com documentos multilíngues:
NOME DO FORNECEDOR (MULTILÍNGUE)
1) Reconhecer em inglês: "Vendor Name", "Supplier", "Seller"
2) Reconhecer em alemão: "Verkäufer", "Lieferant", "Anbieter"
3) Reconhecer em francês: "Fournisseur", "Vendeur"
4) Extrair o nome completo da empresa independentemente do idioma.

Regras de validação

Inclua lógica de validação em seus prompts:
IBAN (COM VALIDAÇÃO)
1) Extraia o IBAN completo exatamente como está impresso.
2) Verifique se ele começa com um código de país de 2 letras.
3) Se o formato não corresponder ao padrão IBAN, omita o campo.
4) Não invente dígitos de verificação nem códigos de país.

Relações entre campos

Especifique como os campos se relacionam:
ACCOUNT NUMBER vs IBAN
- Account Number: Usually shorter, numeric, domestic format.
- IBAN: Alphanumeric, starts with country code (e.g., "GB29 NWBK...").
- If both are present, extract both to separate fields.
- If only one is present, extract to the appropriate field.
- Do not duplicate the same value in both fields.

Limitações e considerações

Capacidades atuais

Com suporte:
  • ✅ Extração de campos em nível de cabeçalho
  • ✅ Valores de linha única e multilinha
  • ✅ Múltiplos campos por documento
  • ✅ Lógica de extração condicional
  • ✅ Documentos em vários idiomas
  • ✅ Layouts de documentos variados
Limitado ou sem suporte:
  • ⚠️ Extração de tabelas (varia conforme a implementação)
  • ⚠️ Estruturas complexas aninhadas
  • ⚠️ Documentos muito grandes (limites de tokens)
  • ⚠️ Processamento em tempo real (latência da API)
  • ⚠️ Garantia de resultados determinísticos

Quando usar a extração baseada em prompt

Melhor para:
  • Documentos com layouts variáveis
  • Documentos semiestruturados
  • Protótipos e testes rápidos
  • Pequenos e médios volumes de documentos
  • Quando não há dados de treinamento disponíveis
  • Processamento de documentos em vários idiomas
Considere alternativas para:
  • Processamento em alto volume (ML tradicional pode ser mais rápido)
  • Formulários altamente estruturados (extração baseada em modelos)
  • Aplicações sensíveis a custos (métodos tradicionais podem ser mais baratos)
  • Aplicações críticas em termos de latência (APIs de LLM têm atraso de rede)
  • Requisitos de processamento offline (métodos tradicionais não exigem conexão com a internet)

Integração com Skills de Documento

Uso de dados extraídos

Quando a extração é concluída, os dados de campo ficam disponíveis em todo o seu Skill de Documento:
  1. Atividades de Validação: Aplicar regras de negócio aos valores extraídos.
  2. Atividades de Script: Processar ou transformar dados extraídos.
  3. Atividades de Exportação: Enviar dados para sistemas externos.
  4. Interface de Revisão: Verificação manual dos campos extraídos.

Combinação com outras atividades

A extração baseada em prompt pode funcionar em conjunto com outras atividades:
Workflow Example:
1. Classification (identify document type)
2. OCR (extract text)
3. Prompt-based extraction (extract structured data)
4. Validation rules (verify data quality)
5. Script (format for export)
6. Output (deliver results)

Mapeamento de campos

Os campos JSON extraídos são automaticamente mapeados para os campos de saída definidos:
  • "FieldName": "Vendor.Name" → Mapeado para o campo de saída Vendor.Name.
  • A hierarquia de campos é preservada na estrutura de saída.
  • Números de linha ajudam na verificação e na solução de problemas.

Resumo

Você concluiu com sucesso:
  • ✅ Criou uma atividade de extração baseada em prompt.
  • ✅ Configurou uma conexão de LLM.
  • ✅ Escreveu um prompt de extração abrangente com função, formato e regras.
  • ✅ Selecionou o formato de documento ideal (Annotated Text).
  • ✅ Aplicou regras de rigor para garantir a qualidade dos dados.
  • ✅ Testou a extração e revisou os resultados.
  • ✅ Aprendeu práticas recomendadas para engenharia de prompts.
Principais pontos:
  • A extração baseada em prompt usa instruções em linguagem natural.
  • O formato Annotated Text oferece os melhores resultados.
  • Prompts claros e específicos geram extrações consistentes.
  • Regras de rigor evitam alucinações e mantêm a qualidade dos dados.
  • Testes e refinamentos iterativos melhoram a precisão.
Sua atividade de extração baseada em prompt agora está pronta para o processamento de documentos!

Próximas etapas

  1. Teste com documentos diversos: Valide em diferentes layouts e variações.
  2. Refine seus prompts: Melhore continuamente com base nos resultados.
  3. Monitore os custos: Acompanhe o uso de tokens no painel do seu provedor de LLM.
  4. Otimize o desempenho: Ajuste os prompts para velocidade e precisão.
  5. Explore a extração de tabelas: Experimente extrair Itens (se suportado).
  6. Integre com fluxos de trabalho: Combine com outras atividades para um processamento completo.

Recursos adicionais

  • Documentação do ABBYY Vantage Advanced Designer: https://docs.abbyy.com
  • Guia de configuração de conexão com LLM: Como configurar conexões com LLM.
  • Práticas recomendadas de engenharia de prompts (Prompt Engineering): consulte a documentação do seu provedor de LLM.
  • Suporte: entre em contato com o suporte da ABBYY para obter assistência técnica.

Perguntas frequentes

P: Qual é a diferença entre extração baseada em prompt e extração tradicional? R: A extração baseada em prompt usa instruções em linguagem natural para LLMs sem dados de treinamento. Os métodos tradicionais exigem exemplos de treinamento, mas são mais rápidos e mais econômicos em grande escala. P: Posso extrair tabelas com atividades baseadas em prompt? R: A extração em nível de cabeçalho é bem suportada. As capacidades de extração de tabelas podem variar e exigir estruturas de prompt específicas. P: Por que usar Annotated Text em vez de PDF? R: Annotated Text oferece o melhor equilíbrio entre preservação da estrutura e eficiência de processamento. Ele se mostrou o mais confiável nos testes. P: Como reduzo os custos de API? R: Otimize o tamanho do prompt, use o formato Annotated Text, processe de forma eficiente e monitore o uso de tokens no painel do provedor de LLM. P: O que faço se minha conexão com o LLM falhar? R: Verifique o status da conexão em Configuration → Connections. Teste a conexão, verifique as credenciais e certifique-se de que sua cota de API não foi excedida. P: Posso usar várias conexões de LLM em uma mesma skill? R: Sim, atividades diferentes podem usar conexões diferentes. Isso permite usar modelos distintos para diferentes tarefas de extração. P: Como lido com documentos em vários idiomas? R: Adicione variações de rótulos em vários idiomas às suas regras de campo. Em geral, os LLMs lidam bem com conteúdo multilíngue. P: Qual é o tamanho máximo do documento? R: Isso depende dos limites de tokens do seu provedor de LLM. Documentos muito longos podem precisar ser divididos ou processados em seções.