Visão geral
- 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.
- 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
- Acesso ao ABBYY Vantage Advanced Designer.
- Uma conexão LLM configurada. Consulte Como configurar conexões LLM.
- Uma Skill de Documento com documentos de exemplo carregados.
- Compreensão básica da estrutura JSON.
- Definições de campos para os dados que você deseja extrair.
Compreendendo a extração baseada em prompts
O que é Extração Baseada em Prompt?
- 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
- Abra sua Skill de Documento no ABBYY Vantage Advanced Designer.
- No painel esquerdo, localize EXTRACT FROM TEXT (NLP).
- Encontre e clique em Prompt-based.

- A atividade aparece no seu canvas de fluxo de trabalho.
- Conecte-a entre as atividades de entrada e saída.
Etapa 2: Configurar a conexão de LLM
- Selecione a atividade baseada em prompt no seu fluxo de trabalho.
- No painel Activity Properties à direita, localize LLM Connection.
- Clique no menu suspenso.

- Selecione na lista a conexão de LLM que você configurou.
- Exemplo:
Nick-ChatGPT,Microsoft Foundry,Production GPT-4
- Exemplo:
- Verifique se a conexão foi selecionada.
Etapa 3: Definir campos de saída
- No painel Activity Properties, localize a seção Output.
- Você verá uma lista hierárquica de grupos de campos e campos.
- 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
- Fornecedor

- Clique no botão Activity Editor para começar a configurar o prompt.
Etapa 4: Definir a Função
- No Activity Editor, você verá a interface Prompt Text
- Comece com a seção ROLE:

- 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”.
- 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
- Abaixo da seção ROLE, adicione o título OUTPUT FORMAT.
- Defina a estrutura JSON:

- 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.
- 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

- 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.
- 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

- 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.
- 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
- No Activity Editor, localize a lista suspensa Prompt.
- Você verá opções de como o documento será fornecido ao LLM.

- 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
- Selecione Annotated Text para obter os melhores resultados
Etapa 9: Teste sua extração
Executar a Activity
- Feche o Activity Editor.
- Navegue até a guia All Documents.
- Selecione um documento de teste.
- Clique no botão Test Activity ou Run.

- 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
- A interface muda para a Visualização preditiva:
- Verifique o painel Saída, que mostra os campos extraídos:
- Clique em cada campo para ver:
- Valor extraído
- Nível de confiança (se fornecido)
- Região destacada na imagem do documento

- ✅ 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
Etapa 10: Aprimore seu prompt
Problemas Comuns e Soluções
- Solução: Adicione indicações de localização mais específicas.
- Exemplo: “Somente do lado do Fornecedor; exclua endereços do cliente/comprador”
- Solução: Dê ênfase à extração literal (verbatim).
- Exemplo: “Extraia o formato numérico exatamente como impresso (por exemplo, ‘12-34-56’)”
- Solução: Aumente o nível de rigor das regras.
- Exemplo: “Nunca gere ou infira valores. Omita se não estiver presente.”
- Solução: Especifique sequências de escape.
- Exemplo: “Para valores multilinha, use
\npara novas linhas”
- Solução: Verifique se os nomes dos campos correspondem exatamente.
- Exemplo: Use
Vendor.Account Numbere nãoAccountNumber
Processo de melhoria iterativa
- Teste em vários documentos: Não otimize para um único caso.
- Registre os padrões: Anote quais regras funcionam e quais precisam de refinamento.
- Adicione exemplos específicos: Inclua exemplos de formato entre parênteses.
- Ajuste o nível de rigor: Refine com base em padrões de extração excessiva/insuficiente.
- Teste casos limite: Use documentos com campos ausentes e layouts incomuns.
Exemplos de refinamentos
Compreendendo o processo de extração
Como funciona a extração baseada em prompt
- Conversão do documento: Seu documento é convertido para o formato selecionado (Annotated Text recomendado).
- Montagem do prompt: Seu papel, formato de saída, regras de campos e regras de rigidez são combinados.
- Chamada de API: O prompt e o documento são enviados ao LLM por meio da sua conexão.
- Processamento pelo LLM: O LLM lê o documento e extrai os dados de acordo com suas instruções.
- Resposta JSON: O LLM retorna dados estruturados no formato JSON especificado.
- Mapeamento de campos: O Vantage mapeia a resposta JSON para os campos de saída que você definiu.
- 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
- 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.
- 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
- ✅ 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 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
- 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.
Estratégia de teste
- Comece com documentos simples: Teste primeiro a extração básica.
- Expanda para variações: Experimente diferentes layouts e formatos.
- Teste casos limite: Campos ausentes, posições incomuns, múltiplas ocorrências.
- Documente as falhas: Guarde exemplos de onde a extração falha.
- Itere de forma sistemática: Altere apenas um elemento de cada vez.
Otimização de Desempenho
- Mantenha os prompts concisos.
- Use o formato Annotated Text.
- Minimize o número de campos por atividade.
- Considere dividir documentos complexos.
- Forneça regras de campo abrangentes.
- Inclua exemplos de formato.
- Adicione regras de rigor mais rígidas.
- Teste com amostras variadas de documentos.
- 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
- 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.
- 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.
- 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”.
- 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
- 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.
- 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).
- 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
Suporte a vários idiomas
Regras de validação
Relações entre campos
Limitações e considerações
Capacidades atuais
- ✅ 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
- ⚠️ 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
- 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
- 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
- Atividades de Validação: Aplicar regras de negócio aos valores extraídos.
- Atividades de Script: Processar ou transformar dados extraídos.
- Atividades de Exportação: Enviar dados para sistemas externos.
- Interface de Revisão: Verificação manual dos campos extraídos.
Combinação com outras atividades
Mapeamento de campos
"FieldName": "Vendor.Name"→ Mapeado para o campo de saídaVendor.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
- ✅ 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.
- 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.
Próximas etapas
- Teste com documentos diversos: Valide em diferentes layouts e variações.
- Refine seus prompts: Melhore continuamente com base nos resultados.
- Monitore os custos: Acompanhe o uso de tokens no painel do seu provedor de LLM.
- Otimize o desempenho: Ajuste os prompts para velocidade e precisão.
- Explore a extração de tabelas: Experimente extrair Itens (se suportado).
- 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.
