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; excluir endereços de 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: Torne as regras mais rígidas
- Exemplo: “Nunca gere ou infira valores. Omita se não estiver presente.”
- Solução: Especifique as sequências de escape
- Exemplo: “Para valores multilinha, use
\npara novas linhas”
- Solução: Verifique se os nomes de 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
Criação de prompts
- ✅ Use comandos claros no imperativo (“Extract”, “Recognize”, “Omit”)
- ✅ Forneça diferentes 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 pressuponha que o LLM conhece convenções específicas de domínio
- ❌ Não escreva frases excessivamente longas e complexas
- ❌ Não se contradiga em seções diferentes
- ❌ Não ignore regras de rigor (strictness)
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 formatos
- Adicione regras de rigor mais rígidas
- Teste com amostras de documentos variadas
- Otimize o tamanho do prompt
- Use formatos de documento eficientes
- Armazene resultados em cache quando apropriado
- Monitore o uso de tokens pelo painel do provedor de LLM
Resolução de problemas
Problemas de extração
- Verifique se a grafia do nome do campo corresponde exatamente
- Verifique se os dados estão no formato de documento selecionado
- Adicione mais variações de rótulos aos padrões de reconhecimento
- Reduza o nível de rigor temporariamente para ver se o LLM os encontra
- Verifique se a qualidade do documento afeta a extração de OCR/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 vs. 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 quebras de linha
- Adicione a instrução: “Preserve as quebras de linha originais usando
\n”
- Enfatize “verbatim” e “exatamente como impresso”
- Adicione uma regra rígida: “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’, mantenha como ‘12 34 56‘“
Problemas de desempenho
- Mudar para o formato Annotated Text se estiver usando PDF
- Simplificar o prompt sem perder instruções críticas
- Reduzir a resolução do documento se as imagens forem muito grandes
- Verificar o status e os limites de requisição do provedor de LLM
- Considerar usar um modelo mais rápido para documentos simples
- Reforçar as regras de estrita conformidade
- Tornar as instruções mais específicas e inequívocas
- Adicionar mais exemplos de formato
- Reduzir a complexidade do prompt que possa gerar ambiguidades
- Testar com configurações de temperatura mais altas (se disponível na conexão)
- Otimizar o tamanho do prompt
- Usar Annotated Text em vez de PDF
- Processar documentos em lotes fora do horário de pico
- Considerar o uso de modelos menores/mais baratos para documentos simples
- Monitorar e configurar 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 com um LLM
- ✅ Escreveu um prompt de extração abrangente com papel, 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 as 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 ajustes 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
