Agente de IA para Validação de Documentos em Processos de Adesão

22 de December de 2025 • Tempo de leitura: 5 min

Como criar um agente de IA que verifica a validade e autenticidade de documentos submetidos durante o processo de adesão a planos de saúde.

1. Propósito e Escopo

Este documento define todos os prompts, configurações de memória, transição entre estados, consulta a documentos e demais requisitos funcionais para o Agente de IA para Validação de Documentos em Processos de Adesão. Essa documentação é um modelo de PRD ou Documento de Requisitos de Produto específicos para construção de Agentes de IA.

O objetivo principal é verificar a validade e autenticidade de documentos submetidos durante o processo de adesão a planos de saúde, reduzindo a necessidade de verificação manual e minimizando erros.

2. Contexto e Problema

Cenário Atual

Durante o processo de adesão a planos de saúde, é comum o envio de documentos falsificados ou inválidos. A verificação manual desses documentos é demorada e sujeita a erros, o que pode comprometer a eficiência e a segurança do processo de adesão.


Problemas Identificados

  • Documentos falsificados ou inválidos: A detecção de documentos falsos ou inválidos é um desafio constante durante o processo de adesão.
  • Verificação manual demorada: O processo manual de verificação é lento e propenso a erros humanos.

3. Impactos Esperados

A implementação deste agente de IA visa alcançar os seguintes resultados:

  • Aumento da precisão na validação de documentos.
  • Redução do tempo necessário para o processamento de documentos de adesão.
  • Minimização de erros humanos durante a verificação de documentos.
  • Detecção automática de documentos suspeitos para revisão manual.

4. Visão Geral da Solução

O agente de IA para validação de documentos em processos de adesão verifica a validade e autenticidade de documentos submetidos, utilizando algoritmos avançados e bases de dados externas. A seguir são detalhadas todas as regras de negócio e especificações funcionais necessárias para que esse agente atue de forma eficiente e autônoma na validação de documentos durante o processo de adesão.

A solução consiste em um fluxo de automação composto por três agentes de IA. O processo inicia com a extração e preparação de parâmetros de verificação dos documentos enviados, passa pela execução de consultas a bases externas e termina com a validação e decisão de autenticidade dos documentos.

A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.

Agentes Função Principal
Agente de Extração e Preparação de Parâmetros de Verificação (RF 1) Ler os documentos de adesão enviados e preparar um JSON estruturado com metadados, campos essenciais e parâmetros de verificação.
Agente de Execução de Consultas a Bases Externas (RF 2) Realizar consultas a bases externas para verificar status e correspondência de dados.
Agente de Validação e Decisão de Autenticidade (RF 3) Aplicar regras de negócio de validação sobre os dados extraídos e os retornos das bases externas para classificar o documento e definir o próximo passo.

5. Protótipos

Para proporcionar uma visão clara e tangível da solução proposta, criamos protótipos interativos que demonstram tanto o fluxo de trabalho dos agentes quanto o resultado final que o cliente receberá. Explore os links abaixo para entender melhor a solução em ação.

6. Requisitos Funcionais

RF 1. Agente de Extração e Preparação de Parâmetros de Verificação

1.1 Tarefa do Agente

Ler os documentos de adesão enviados e preparar um JSON estruturado com metadados, campos essenciais e parâmetros de verificação necessários para etapas posteriores.

1.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um pacote de documentos do proponente (PDFs/Imagens) e dados declarados na proposta (nome, CPF, data de nascimento, endereço, e-mail, telefone, nº da proposta, produto/operadora).

# 2. Objetivo
Ler os documentos de adesão enviados e preparar um JSON estruturado com metadados, campos essenciais e parâmetros de verificação necessários para etapas posteriores.

# 3. Regras que você deve seguir para gerar sua resposta
- Identifique o tipo de cada documento a partir de rótulos visuais e conteúdo textual, e normalize para o conjunto permitido: RG, CNH, CPF, Comprovante_Endereco, Certidao, Outros.
- Extraia, quando existirem, os campos: número do documento, órgão emissor, UF emissor e data de emissão; para comprovante de endereço, extraia logradouro, número, complemento (se houver), bairro, cidade, UF e CEP; para RG/CNH, extraia nome e data de nascimento presentes no documento.
- Cruce dados extraídos com os dados declarados na proposta e registre divergências pontuais em sinais_internos.inconsistencia_dados em formato de mensagens atômicas (ex.: "nome_diverge", "data_nascimento_diverge", "endereco_cep_invalido_format").
- Sinalize possivel_alteracao como true se houver indicações textuais inconsistentes entre campos do mesmo documento (ex.: datas conflitantes, campos obrigatórios ausentes) ou metadados contraditórios entre páginas.
- Defina formato_inadequado como true se o arquivo não permitir leitura confiável (ex.: resolução muito baixa perceptível pelos textos truncados) ou se o tipo inferido não pertencer ao conjunto conhecido.
- Determine parametros_verificacao.precisa_verificacao_externa: true quando houver documentos de identificação (RG, CNH, CPF) ou quando houver comprovante de endereço com CEP válido; caso nenhum dado verificável externamente exista, defina como false e datasets_requeridos vazio.
- Preencha parametros_verificacao.datasets_requeridos de forma determinística: se houver CPF válido em formato NNN.NNN.NNN-NN, inclua "rfb_cpf"; se houver RG com UF emissor, inclua "ssp_rg"; se houver CNH, inclua "detra_cnh"; se houver CEP válido (NNNNN-NNN), inclua "correios_endereco".
- Sempre retorne o JSON mesmo diante de dados faltantes; use null para campos desconhecidos e listas vazias quando aplicável. 
1.3 Configurações do Agente

1.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente é o ponto de partida do fluxo e deve ser acionado pelo envio de um pacote de documentos e dados declarados via API. Na fase de testes, o fluxo será iniciado pelo envio manual dos dados, que serão enviados para o agente diretamente por upload dos documentos na interface da Prototipe AI, para acelerar o processo de validação.
  • Tipo do input: Pacote de documentos (PDFs/Imagens) e dados estruturados.
  • Formatos Suportados: Esse agente deve ser capaz de receber documentos nos formatos: .pdf, .jpg, .png.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 50.000 caracteres.

1.3.2 Especificação do Output

  • Formato de output: O output deve ser um arquivo no formato JSON estruturado com metadados, campos essenciais e parâmetros de verificação.
  • Exemplo de Estrutura de Output:
     { "proposta_id": "string", "proponente": {"nome": "string", "cpf": "string", "data_nascimento": "YYYY-MM-DD"}, "documentos": [{"tipo": "RG|CNH|CPF|Comprovante_Endereco|Certidao|Outros", "arquivo_id": "string", "numero": "string|null", "orgao_emissor": "string|null", "uf_emissor": "string|null", "data_emissao": "YYYY-MM-DD|null", "nome_no_documento": "string|null", "data_nascimento_no_documento": "YYYY-MM-DD|null"}], "endereco_declarado": {"logradouro": "string", "numero": "string", "bairro": "string", "cidade": "string", "uf": "string", "cep": "string"}, "sinais_internos": {"possivel_alteracao": false, "fotos_repetidas": false, "inconsistencia_dados": ["string"], "formato_inadequado": false}, "parametros_verificacao": {"precisa_verificacao_externa": true, "datasets_requeridos": ["rfb_cpf", "ssp_rg", "detra_cnh", "correios_endereco"], "chaves_consulta": {"cpf": "string", "nome": "string", "data_nascimento": "YYYY-MM-DD", "cep": "string"}} } 
  • Número de caracteres esperado: O JSON gerado deve ser claro e direto, com um tamanho estimado em 2.500 caracteres.

1.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

1.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

1.3.5 Memória

1.3.6 Regras de Orquestração e Transição

Ao concluir sua execução, esse agente aciona o Agente de Execução de Consultas a Bases Externas (RF 2).

RF 2. Agente de Execução de Consultas a Bases Externas

2.1 Tarefa do Agente

Realizar consultas a bases externas oficiais/terceiras para verificar status e correspondência de dados (ex.: CPF ativo, correspondência de nome e data de nascimento, endereço por CEP).

2.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um payload com parametros_verificacao.datasets_requeridos e chaves_consulta já definidos, além do proposta_id para rastreio.

# 2. Objetivo
Realizar consultas a bases externas oficiais/terceiras para verificar status e correspondência de dados (ex.: CPF ativo, correspondência de nome e data de nascimento, endereço por CEP).

# 3. Regras que você deve seguir para gerar sua resposta
- Este agente é exclusivamente executor de consultas e não precisa de instruções de LLM.
- Aceite parâmetros prontos, efetue as consultas e devolva os dados conforme o contrato de saída.
- Execute chamadas às APIs externas definidas na plataforma do projeto conforme os datasets_requeridos.
- Tratamento de indisponibilidade deve ser refletido em campos consultado=false e inclusão de mensagens em erros. 
2.3 Configurações do Agente

2.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão bem-sucedida do agente anterior (RF 1).
  • Tipo do input: Payload com parametros_verificacao.datasets_requeridos e chaves_consulta já definidos, além do proposta_id para rastreio.
  • Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato: .json (JSON).
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 3.000 caracteres.

2.3.2 Especificação do Output

  • Formato de output: O output deve ser um arquivo no formato JSON contendo os resultados das consultas externas.
  • Exemplo de Estrutura de Output:
     { "proposta_id": "string", "resultados_externos": { "rfb_cpf": {"consultado": true, "status": "regular|suspenso|cancelado|null", "nome_cadastrado_confere": true|null, "data_nascimento_confere": true|null}, "ssp_rg": {"consultado": true, "documento_existente": true|null, "uf_confere": true|null}, "detra_cnh": {"consultado": true, "registro_valido": true|null, "situacao": "valida|suspensa|cassada|null"}, "correios_endereco": {"consultado": true, "cep_valido": true|null, "logradouro_padrao": "string|null", "cidade_uf_confere": true|null} }, "erros": [] } 
  • Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 1.500 caracteres.

2.3.3 Parâmetros de Geração

  • Modelo: Não se aplica (uso de ferramenta)
  • Temperatura: Não se aplica

2.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Executa chamadas às APIs externas definidas na plataforma do projeto conforme os datasets_requeridos.

2.3.5 Memória

2.3.6 Regras de Orquestração e Transição

Ao concluir sua execução, esse agente aciona o Agente de Validação e Decisão de Autenticidade (RF 3).

RF 3. Agente de Validação e Decisão de Autenticidade

3.1 Tarefa do Agente

Aplicar regras de negócio de validação sobre os dados extraídos e os retornos das bases externas para classificar o documento e definir o próximo passo.

3.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo a saída do Agente de Extração (documentos, sinais_internos, parametros_verificacao) e, quando disponível, a saída do Agente de Consultas Externas (resultados_externos).

# 2. Objetivo
Aplicar regras de negócio de validação sobre os dados extraídos e os retornos das bases externas para classificar o documento e definir o próximo passo.

# 3. Regras que você deve seguir para gerar sua resposta
- Valide CPF: se formato inválido, adicione motivo "cpf_formato_invalido" e regra R_CPF_001; se consulta rfb_cpf.status != "regular", adicione R_CPF_002 e marque autenticidade_confirmada=false.
- Concilie nome e data de nascimento: se resultados_externos.rfb_cpf.nome_cadastrado_confere=false, adicione "nome_diverge_rfb" (R_ID_003); se data_nascimento_confere=false, adicione "data_nascimento_diverge_rfb" (R_ID_004).
- RG/CNH: se documento_existente=false em ssp_rg, adicione "rg_nao_encontrado" (R_RG_001); se detra_cnh.registro_valido=false ou situacao != "valida", adicione "cnh_irregular" (R_CNH_001).
- Endereco/CEP: se cep_valido=false, adicione "cep_invalido" (R_END_001); se cidade_uf_confere=false, adicione "endereco_diverge_localidade" (R_END_002).
- Penalize sinais internos: possivel_alteracao=true soma motivo "indicios_de_alteracao" (R_DOC_001); formato_inadequado=true adiciona "formato_inadequado" (R_DOC_002). Cada inconsistência listada entra em motivos com prefixo "inc_" e regra R_DOC_3xx.
- Cálculo de nivel_confianca (0 a 1): inicie em 1.0; subtraia 0.25 para cada divergência crítica (CPF irregular, nome/data divergentes na RFB, CNH irregular); subtraia 0.1 para cada divergência não crítica (CEP inválido, endereço diverge, RG não encontrado); subtraia 0.15 para cada sinal interno (possivel_alteracao, formato_inadequado). Limite inferior 0.0, superior 1.0.
- Classificação de risco: nivel_confianca >= 0.8 => baixo; >= 0.6 e < 0.8 => medio; < 0.6 => alto.
- Decisão: documento_valido é true se não houver divergência crítica e nivel_confianca >= 0.7; autenticidade_confirmada é true somente se todas as verificações críticas retornarem "ok" ou "nao_aplicavel" e não houver sinais internos; human_review_required é true se: (a) nivel_confianca < 0.8 e existe qualquer motivo crítico; (b) resultados_externos estiveram indisponíveis para um dataset crítico solicitado; ou (c) possivel_alteracao=true.
- Ações recomendadas: se documento_valido e autenticidade_confirmada => ["aprovar"]; se divergência crítica sem confirmação => ["enviar_para_revisao_manual"]; se formato inadequado ou ausência de dados essenciais => ["solicitar_novos_documentos"]; se múltiplas irregularidades graves => ["negar", "enviar_para_revisao_manual"].
- Preencha evidencias.conferencias_externas por dataset: marque "ok" quando o retorno confirmar os dados, "diverge" quando houver inconsistência, "indisponivel" quando consultado=false por indisponibilidade, e "nao_aplicavel" quando o dataset não foi solicitado.
- Sempre retornar resumo textual curto e objetivo citando os principais motivos e a decisão. 
3.3 Configurações do Agente

3.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 2).
  • Tipo do input: Saída do Agente de Extração (documentos, sinais_internos, parametros_verificacao) e, quando disponível, saída do Agente de Consultas Externas (resultados_externos).
  • Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato: .json (JSON).
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 5.000 caracteres.

3.3.2 Especificação do Output

  • Formato de output: O output deve ser um arquivo no formato JSON contendo o resultado da validação e decisão de autenticidade.
  • Exemplo de Estrutura de Output:
     { "proposta_id": "string", "resultado": { "documento_valido": true|false, "autenticidade_confirmada": true|false, "nivel_confianca": 0.0, "classificacao_risco": "baixo|medio|alto", "motivos": ["string"], "regras_acionadas": ["codigo_regra"], "human_review_required": true|false, "acoes_recomendadas": ["aprovar|solicitar_novos_documentos|negar|enviar_para_revisao_manual"], "resumo": "string" }, "evidencias": { "inconsistencias": ["string"], "conferencias_externas": {"rfb_cpf": "ok|diverge|indisponivel|nao_aplicavel", "ssp_rg": "ok|diverge|indisponivel|nao_aplicavel", "detra_cnh": "ok|diverge|indisponivel|nao_aplicavel", "correios_endereco": "ok|diverge|indisponivel|nao_aplicavel" } } } 
  • Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 2.000 caracteres.

3.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

3.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Utiliza lógica interna para calcular o nível de confiança e classificação de risco.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

3.3.5 Memória

  • Visibilidade das Instruções (Prompt): As instruções deste agente não devem ser visíveis para nenhum agente subsequente.
  • Visibilidade da Resposta: A resposta (JSON da validação) é o entregável final e não é passada para outros agentes internos.

3.3.6 Regras de Orquestração e Transição

Este agente finaliza o fluxo de validação de documentos. A resposta gerada deve ser encaminhada conforme configuração do fluxo na plataforma.

© 2025 prototipe.ai. Todos os direitos reservados.