1. Propósito e Escopo
Este documento define todos os prompts, configurações de memória, transição entre estados, ferramentas como chamadas a sistemas externos, consulta a documentos e demais requisitos funcionais para o Fluxo de Agentes "Classificação de Documentos de Saúde", uma solução projetada para otimizar o fluxo de trabalho administrativo por meio da classificação automática de documentos de saúde. 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 é automatizar o processo de classificação e organização de documentos recebidos, facilitando o acesso e revisão, e monitorar continuamente para ajustes e melhorias na classificação.
2. Contexto e Problema
Cenário Atual
Atualmente, o processamento de documentos de saúde para autorizações e reembolsos é realizado de forma manual, o que é demorado e propenso a erros. Os principais problemas enfrentados são:
- Processamento manual e demorado de documentos de saúde.
- Erros na classificação e organização de documentos.
- Necessidade de otimizar o fluxo de trabalho administrativo.
Esses desafios resultam em ineficiências operacionais e atrasos no processamento de autorizações e reembolsos.
3. Impactos Esperados
A implementação deste fluxo de automação visa alcançar os seguintes resultados:
- Reduzir o tempo de processamento de documentos em pelo menos 70%.
- Melhorar a precisão na classificação e organização de documentos.
- Otimizar o fluxo de trabalho administrativo, liberando recursos para atividades mais estratégicas.
- Monitorar e ajustar continuamente as regras de classificação para garantir melhoria contínua.
4. Visão Geral da Solução
O agente de IA para classificação de documentos de saúde processa documentos recebidos, aplica regras de classificação predefinidas e organiza os documentos de forma eficiente para facilitar o acesso e a revisão. A seguir são detalhadas todas as regras de negócio e especificações funcionais necessárias para que esse agente atue como um assistente útil e autônomo na classificação de documentos de saúde.
A solução consiste em um fluxo de automação composto por 4 agentes de IA. O processo inicia com a extração estruturada de dados de documentos e termina com a geração de recomendações de ajuste de regras com base nos resultados do processamento.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Extração Estruturada de Conteúdo de Documentos de Saúde (RF 1)
| Extrair, normalizar e estruturar os dados contidos em documentos de saúde para suportar a classificação de autorizações e reembolsos. |
Agente Classificador de Documentos de Saúde para Autorizações e Reembolsos (RF 2)
| Classificar cada item extraído em categorias operacionais, definir subcategoria, prioridade e requisitos, com justificativas e confiança. |
Agente Organizador e Enriquecedor de Metadados (RF 3)
| Gerar metadados para arquivamento, busca e roteamento eficiente dos documentos classificados, assegurando privacidade e rastreabilidade. |
Agente de Sinalização de Monitoramento e Melhoria (RF 4)
| Produzir indicadores de qualidade da classificação e recomendações de ajuste de regras a partir dos resultados do processamento. |
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 Estruturada de Conteúdo de Documentos de Saúde
1.1 Tarefa do Agente
Extrair, normalizar e estruturar os dados contidos em documentos de saúde (PDFs e imagens) para suportar a classificação de autorizações e reembolsos.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo documentos de saúde em formato PDF ou imagem. Este agente deve extrair e normalizar os dados contidos nesses documentos, preparando-os para a classificação subsequente.
# 2. Objetivo
Extrair, normalizar e estruturar os dados para suportar a classificação de autorizações e reembolsos.
# 3. Regras que você deve seguir para gerar sua resposta
- Detectar e separar múltiplos itens quando o arquivo contiver mais de um documento lógico.
- Extrair e normalizar identificadores: CPF, CNPJ, CNS, carteirinha/beneficiário.
- Normalizar datas para o formato ISO AAAA-MM-DD.
- Extrair e converter valores monetários para centavos.
- Coletar listas de CID e TUSS/AMB/CBHPM.
- Gerar pistas_tipo_documento com base em padrões textuais e estruturais.
- Conservar excertos por página.
- Retornar itens_extraidos como lista vazia se o arquivo estiver ilegível ou vazio.
# 4. Exemplo de Output que você deve produzir
{"document_id":"uuid","itens_extraidos":[{"item_id":"uuid_item","paginas":[1,2],"texto_concatenado":"...","campos_normalizados":{"cpf":"00000000000","cnpj":"00000000000000","cns":"000000000000000","nome_paciente":"...","nome_prestador":"...","codigo_cid":["C00"],"codigo_tuss":["10101012"],"data_evento":"AAAA-MM-DD","valor_total_centavos":0000,"moeda":"BRL"},"pistas_tipo_documento":["menção_TISS","palavra_chave:nota_fiscal","layout:guias"]}],"estatisticas":{"paginas":3,"tamanho_bytes":123456}} 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 documentos de saúde 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: O input inicial para o fluxo são documentos de saúde em formato PDF ou imagem.
-
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é 100.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON estruturado contendo os dados extraídos e normalizados dos documentos de saúde.
-
Exemplo de Estrutura de Output:
{"document_id":"uuid","itens_extraidos":[{"item_id":"uuid_item","paginas":[1,2],"texto_concatenado":"...","campos_normalizados":{"cpf":"00000000000","cnpj":"00000000000000","cns":"000000000000000","nome_paciente":"...","nome_prestador":"...","codigo_cid":["C00"],"codigo_tuss":["10101012"],"data_evento":"AAAA-MM-DD","valor_total_centavos":0000,"moeda":"BRL"},"pistas_tipo_documento":["menção_TISS","palavra_chave:nota_fiscal","layout:guias"]}],"estatisticas":{"paginas":3,"tamanho_bytes":123456}} - Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 5.000 caracteres, podendo variar conforme a quantidade de dados extraídos.
1.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
1.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
1.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 gerada por este agente deve ser visível para o Agente Classificador de Documentos de Saúde para Autorizações e Reembolsos (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente Classificador de Documentos de Saúde para Autorizações e Reembolsos (RF 2).
RF 2. Agente Classificador de Documentos de Saúde para Autorizações e Reembolsos
2.1 Tarefa do Agente
Classificar cada item extraído em categorias operacionais (autorização, reembolso, outros), definir subcategoria, prioridade e requisitos, com justificativas e confiança.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo a saída estruturada do agente anterior contendo itens_extraidos, campos normalizados e pistas_tipo_documento.
# 2. Objetivo
Classificar cada item extraído em categorias operacionais, definir subcategoria, prioridade e requisitos, com justificativas e confiança.
# 3. Regras que você deve seguir para gerar sua resposta
- Decisão de categoria: se pistas contêm 'Nota Fiscal', 'NF-e', 'DANFE', classificar como reembolso; se contêm 'GUIA TISS', 'Solicitação de Autorização', classificar como autorização.
- Mapeamento de subcategoria: 1) guia_tiss se houver menção explícita a 'GUIA'; 2) nota_fiscal se houver chave de acesso; 3) comprovante_pagamento se houver termos 'comprovante', 'PIX', 'TED'.
- Prioridade: alta quando categoria=autorizacao e data_evento <= D+2 dias corridos ou texto indicar urgência.
- SLA em horas: prioridade alta=24-48; média=72; baixa=120.
- Fila de destino: AUTZ_INICIAL para categoria=autorizacao; REEMB_VALID para reembolso.
- Requisitos faltantes: se categoria=reembolso e não houver nota_fiscal, incluir 'falta_nota_fiscal'.
- Confianca: calcular percentual baseado em evidências fortes.
- Definir revisao_humana_necessaria=true quando confianca < 0.6.
- Justificativas: registrar regra aplicada com pequeno snippet e número da página.
# 4. Exemplo de Output que você deve produzir
{"document_id":"uuid","classificacoes":[{"item_id":"uuid_item","categoria":"autorizacao|reembolso|outros","subcategoria":"guia_tiss|pedido_medico|relatorio_medico|nota_fiscal|comprovante_pagamento|laudo|carteirinha|outros","prioridade":"alta|media|baixa","sla_horas":48,"fila_destino":"AUTZ_INICIAL|REEMB_VALID|OUTROS_TRIAGEM","revisao_humana_necessaria":false,"confianca":0.0,"justificativas":[{"regra":"rXX","evidencia":"trecho...","pag":2}],"requisitos":["falta_comprovante","falta_nota_fiscal"],"motivo_prioridade":"..."}]} 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 do agente anterior (RF 1).
- Tipo do input: Este agente deve ser apto a receber como input a saída estruturada do agente anterior em formato JSON.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 5.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON estruturado contendo a classificação dos documentos, subcategorias, prioridades e requisitos.
-
Exemplo de Estrutura de Output:
{"document_id":"uuid","classificacoes":[{"item_id":"uuid_item","categoria":"autorizacao|reembolso|outros","subcategoria":"guia_tiss|pedido_medico|relatorio_medico|nota_fiscal|comprovante_pagamento|laudo|carteirinha|outros","prioridade":"alta|media|baixa","sla_horas":48,"fila_destino":"AUTZ_INICIAL|REEMB_VALID|OUTROS_TRIAGEM","revisao_humana_necessaria":false,"confianca":0.0,"justificativas":[{"regra":"rXX","evidencia":"trecho...","pag":2}],"requisitos":["falta_comprovante","falta_nota_fiscal"],"motivo_prioridade":"..."}]} - Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 4.000 caracteres.
2.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
2.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
2.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 gerada por este agente deve ser visível para o Agente Organizador e Enriquecedor de Metadados (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente Organizador e Enriquecedor de Metadados (RF 3).
RF 3. Agente Organizador e Enriquecedor de Metadados
3.1 Tarefa do Agente
Gerar metadados para arquivamento, busca e roteamento eficiente dos documentos classificados, assegurando privacidade e rastreabilidade.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo a saída combinada da extração e classificação contendo identificadores, datas, valores e decisão operacional.
# 2. Objetivo
Gerar metadados para arquivamento, busca e roteamento eficiente dos documentos classificados.
# 3. Regras que você deve seguir para gerar sua resposta
- Nome de arquivo: formato CATEGORIA-SUBCATEGORIA-AAAA-MM-DD-CPFmascarado-VALORTOTAL.pdf.
- Chaves de indexação mínimas: cpf/cnpj, data_evento, categoria, subcategoria, valor_total_centavos.
- Tags: incluir 'prioridade_alta' quando prioridade=alta.
- Privacidade: marcar contém_dado_sensivel=true sempre que existir CPF, CID, CNS.
- Retenção: usar '5_anos_saude' por padrão.
# 4. Exemplo de Output que você deve produzir
{"document_id":"uuid","itens":[{"item_id":"uuid_item","nome_arquivo_sugerido":"CAT-SUBCAT-AAAA-MM-DD-CPFmasc-valor.pdf","chaves_indexacao":{"cpf":"...","cnpj":"...","data_evento":"AAAA-MM-DD","categoria":"...","subcategoria":"..."},"tags":["saude","financeiro","prioridade_alta"],"retencao_categoria":"5_anos_saude","privacidade":{"contém_dado_sensivel":true,"campos_sensiveis":["cpf","cid"]}}]} 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: Este agente deve ser apto a receber como input a saída combinada da extração e classificação em formato JSON.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 4.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON estruturado contendo metadados para arquivamento, busca e roteamento dos documentos.
-
Exemplo de Estrutura de Output:
{"document_id":"uuid","itens":[{"item_id":"uuid_item","nome_arquivo_sugerido":"CAT-SUBCAT-AAAA-MM-DD-CPFmasc-valor.pdf","chaves_indexacao":{"cpf":"...","cnpj":"...","data_evento":"AAAA-MM-DD","categoria":"...","subcategoria":"..."},"tags":["saude","financeiro","prioridade_alta"],"retencao_categoria":"5_anos_saude","privacidade":{"contém_dado_sensivel":true,"campos_sensiveis":["cpf","cid"]}}]} - Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 3.500 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 documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
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 gerada por este agente deve ser visível para o Agente de Sinalização de Monitoramento e Melhoria (RF 4).
3.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Sinalização de Monitoramento e Melhoria (RF 4).
RF 4. Agente de Sinalização de Monitoramento e Melhoria
4.1 Tarefa do Agente
Produzir indicadores de qualidade da classificação e recomendações de ajuste de regras a partir dos resultados do processamento.
4.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo as saídas dos agentes anteriores para cada item processado (extração, classificação e metadados).
# 2. Objetivo
Produzir indicadores de qualidade da classificação e recomendações de ajuste de regras.
# 3. Regras que você deve seguir para gerar sua resposta
- Compilar por item: confianca, revisao_humana_necessaria, lista de alertas.
- Gerar sumário: total de itens processados, contagem e proporção de baixa confiança.
- Derivar sugestões de regras quando houver padrões recorrentes.
- Nunca alterar decisões de classificação; produzir apenas sinalizações e recomendações textuais objetivas.
# 4. Exemplo de Output que você deve produzir
{"document_id":"uuid","monitoramento":{"itens":[{"item_id":"uuid_item","confianca":0.85,"revisao_humana_necessaria":false,"alertas":["faltou_CRM"],"indicadores":{"campos_criticos_presentes":3,"campos_criticos_ausentes":1}},],"sumario":{"itens_total":N,"itens_baixa_confianca":M,"taxa_baixa_confianca":0.0},"sugestoes_regras":["adicionar pista para recibo_provisorio","refinar prioridade para oncologia"]}} 4.3 Configurações do Agente
4.3.1 Especificação do Input
- Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 3).
- Tipo do input: Este agente deve ser apto a receber como input as saídas dos agentes anteriores para cada item processado em formato JSON.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs no formato:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 3.500 caracteres.
4.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON estruturado contendo indicadores de qualidade da classificação e recomendações de ajuste de regras.
-
Exemplo de Estrutura de Output:
{"document_id":"uuid","monitoramento":{"itens":[{"item_id":"uuid_item","confianca":0.85,"revisao_humana_necessaria":false,"alertas":["faltou_CRM"],"indicadores":{"campos_criticos_presentes":3,"campos_criticos_ausentes":1}},],"sumario":{"itens_total":N,"itens_baixa_confianca":M,"taxa_baixa_confianca":0.0},"sugestoes_regras":["adicionar pista para recibo_provisorio","refinar prioridade para oncologia"]}} - Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 2.500 caracteres.
4.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: 0.6
4.3.4 Ferramentas do Agente
- Documentos: Não consulta documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
4.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 gerada por este agente é o resultado final e não é passada para outros agentes internos.
4.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo. A resposta gerada é o resultado que deve ser disponibilizado ao usuário.