Agente de IA para Revisão de Documentos de Investimento

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

Como criar um agente de IA que revisa documentos de investimento, verificando a conformidade com regulamentos e consistência com o perfil de investidor.

1. Propósito e Escopo

Este documento define todos os prompts, configurações de memória, transição entre estados e demais requisitos funcionais para o Agente de IA para Revisão de Documentos de Investimento. 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 é analisar documentos de investimento para assegurar sua conformidade com as normas regulatórias vigentes e verificar a consistência com o perfil de risco e objetivos do investidor.

2. Contexto e Problema

Problemas Específicos

O agente precisa resolver os seguintes problemas específicos:

  • Revisão de documentos de investimento para assegurar conformidade regulatória.
  • Verificação da consistência dos documentos com o perfil do investidor.

Regras Aplicadas

  • Analisar documentos de investimento para identificar possíveis inconformidades.
  • Garantir que a documentação esteja alinhada com as normas regulatórias vigentes.
  • Verificar a coerência dos documentos com o perfil de risco e objetivos do investidor.

3. Impactos Esperados

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

  • Aumentar a precisão na revisão de documentos de investimento.
  • Assegurar conformidade com os regulamentos vigentes.
  • Garantir consistência dos documentos com o perfil do investidor.

4. Visão Geral da Solução

O agente de IA para revisão de documentos de investimento analisa documentos para verificar conformidade regulatória e consistência com o perfil do investidor. 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 revisão de documentos de investimento.

A solução consiste em um fluxo de automação composto por 4 agentes de IA. O processo inicia com a consulta aos documentos de investimento e termina com a consolidação do relatório final técnico e executivo.

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

Agentes Função Principal
Agente de Execução de Consulta a Documento (RF 1) Realizar consulta aos documentos de investimento para obter conteúdos textuais, tabelas e metadados necessários à revisão.
Agente de Normalização e Mapeamento de Conteúdo (RF 2) Transformar o conteúdo extraído em um esquema padronizado de dados de produto de investimento.
Agente de Validação Regulatória (RF 3) Avaliar a conformidade do documento normalizado frente a uma matriz regulatória vigente parametrizada.
Agente de Adequação ao Perfil do Investidor e Consolidação do Relatório (RF 4) Verificar a coerência do produto com o perfil do investidor e consolidar o relatório final técnico e executivo.

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 Execução de Consulta a Documento

1.1 Tarefa do Agente

Realizar consulta aos documentos de investimento (PDF/texto) para obter conteúdos textuais, tabelas e metadados necessários à revisão.

1.2 Prompt ou Instruções do Agente
 Este agente não requer instruções de LLM. Sua função é unicamente executar a consulta/extração com os parâmetros recebidos e retornar o conteúdo estruturado conforme o expected_output. 
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 parâmetros prontos para consulta 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 na interface da Prototipe AI, para acelerar o processo de validação.
  • Tipo do input: Parâmetros prontos para consulta.
  • Formatos Suportados: Esse agente deve ser capaz de receber parâmetros no formato JSON.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 10.000 caracteres.

1.3.2 Especificação do Output

  • Formato de output: Dados recuperados da consulta em formato JSON.
  • Exemplo de Estrutura de Output:
     { "documento_id": "12345", "titulo": "Prospecto", "versao_documento": "1.0", "data_emissao_documento": "2025-12-01", "idioma_detectado": "pt", "paginas_total": 30, "conteudo_por_secao": [{ "secao_id": "1", "titulo_secao": "Resumo do Investimento", "pagina_inicial": 1, "pagina_final": 2, "texto": "Este é um resumo do investimento." }], "tabelas": [{ "tabela_id": "1", "pagina": 3, "titulo": "Tabela de Taxas", "celulas": [{ "linha": 1, "coluna": 1, "conteudo": "Taxa de Administração" }] }], "anexos_detectados": ["Anexo A"] } 
  • Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 5.000 caracteres.

1.3.3 Parâmetros de Geração

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

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

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

Ao concluir sua execução, esse agente aciona o Agente de Normalização e Mapeamento de Conteúdo (RF 2).

RF 2. Agente de Normalização e Mapeamento de Conteúdo

2.1 Tarefa do Agente

Transformar o conteúdo extraído em um esquema padronizado de dados de produto de investimento e mapear onde cada dado foi encontrado no documento.

2.2 Prompt ou Instruções do Agente
 - Identifique documento_tipo (ex.: lâmina, prospecto, termo de adesão) a partir de título, metadados e expressões-chave; se ambíguo, defina como 'indefinido' e registre em campos_faltantes.
- Normalize percentuais para valor_percentual em ponto flutuante (ex.: '120% do CDI' => {tipo:'posfixado', valor_percentual:120, referencia:'CDI'}). Sempre indique a unidade temporal (a.a., a.m.); se ausente, assuma a.a. e registre a suposição em campos_faltantes.
- Converta prazos para dias corridos; quando informado em meses/anos, multiplique por 30/365 e registre a conversão no mapeamento_origem.
- Para liquidez, expresse no formato D+X; se constar 'cotização em D+1, pagamento em D+3', defina liquidez='D+3' e inclua nota em mapeamento_origem.
- Extraia todas as taxas e custos recorrentes e eventuais (administração, performance, custódia, IOF/IR quando aplicável) mantendo base_calculo e unidade; se valor for 'até' ou 'máximo de', registre o valor máximo e a qualificação textual.
- Se qualquer campo obrigatório não for localizado com confiança, deixe o valor como null/indefinido e inclua em campos_faltantes com motivo claro ('não encontrado', 'ambíguo', 'inconsistente').
- Para cada campo preenchido, inclua referência de origem (secao_id, página e trecho literal curto) em mapeamento_origem. 
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: Conteúdo estruturado do documento.
  • 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 até 10.000 caracteres.

2.3.2 Especificação do Output

  • Formato de output: JSON normalizado.
  • Exemplo de Estrutura de Output:
     { "documento_id": "12345", "documento_tipo": "Prospecto", "produto_tipo": "Fundo de Investimento", "emissor": "Banco X", "cnpj_emissor": "00.000.000/0001-91", "custodiante": "Banco Y", "publico_alvo_declarado": "Investidores em geral", "indicadores_risco": { "classificacao_interna": "Moderado", "escala": "1 a 5", "volatilidade_12m": 10.5, "drawdown_max": 15.0 }, "objetivo_do_produto": "Renda", "estrategia": "Investimento em renda fixa", "indexador_principal": "CDI", "taxa_remuneracao": { "tipo": "posfixado", "valor_percentual": 120, "referencia": "CDI" }, "taxas_e_custos": [{ "nome": "Taxa de Administração", "base_calculo": "Patrimônio Líquido", "valor": 1.5, "unidade": "%a.a." }], "prazos": { "emissao": "2025-12-01", "vencimento": "2030-12-01", "carencia_dias": 0, "prazo_total_dias": 1825 }, "liquidez": { "liquidez": "D+3", "janela_resgate": "Diária", "restricoes": "Nenhuma" }, "garantias": [{ "tipo": "Fundo Garantidor", "descricao": "Garantia de até R$ 250.000,00" }], "tributacao_resumo": "Imposto de Renda conforme tabela regressiva", "distribuicao": { "suitability_alvo_declarada": "Moderado", "restricoes_comerciais": "Nenhuma" }, "campos_faltantes": [], "mapeamento_origem": [{ "campo": "taxas_e_custos", "secao_id": "3", "pagina": 5, "trecho": "Taxa de Administração: 1,5% a.a." }] } 
  • Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 5.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 de Validação Regulatória (RF 3).

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

Ao concluir sua execução, esse agente aciona o Agente de Validação Regulatória (RF 3).

RF 3. Agente de Validação Regulatória

3.1 Tarefa do Agente

Avaliar a conformidade do documento normalizado frente a uma matriz regulatória vigente parametrizada.

3.2 Prompt ou Instruções do Agente
 - Antes de validar, compare data_emissao_documento com a vigência da matriz; se fora da vigência, defina vigencia_ok=false e siga validando com a matriz fornecida, registrando aviso.
- Determine aplicabilidade por requisito avaliando condicao_aplicabilidade no contexto do produto; se não aplicável, marque 'nao_aplicavel' e não penalize no percentual_conformidade.
- Para requisitos obrigatórios: se campo_alvo ausente ou nulo, marque 'nao_conforme' com justificativa 'ausente'; se presente, avalie criterio_validacao de forma objetiva (unidades, presença de advertências obrigatórias, explicitação de riscos, divulgação de taxas e suas bases etc.).
- Para requisitos condicionais: valide apenas quando a condição for verdadeira; caso contrário, 'nao_aplicavel'.
- Sempre forneça referência de evidência ancorada no mapeamento_origem do dado normalizado. Se não houver referência, trate como não conforme por falta de evidência.
- Construa gaps_priorizados ordenando por severidade (alto>medio>baixo) e pela criticidade do requisito (obrigatório antes de condicional). 
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: Dados normalizados do produto e matriz regulatória.
  • 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 até 10.000 caracteres.

3.3.2 Especificação do Output

  • Formato de output: Resultado por requisito em formato JSON.
  • Exemplo de Estrutura de Output:
     { "versao_matriz": "1.0", "vigencia_ok": true, "avaliacoes": [{ "requisito_id": "R1", "status": "conforme", "evidencia": { "campo": "taxas_e_custos", "valor": "1.5% a.a.", "referencia_origem": { "secao_id": "3", "pagina": 5, "trecho": "Taxa de Administração: 1,5% a.a." } }, "justificativa": "", "severidade": "medio" }], "resumo": { "percentual_conformidade": 95, "total_requisitos": 10, "total_conformes": 9, "total_nao_conformes": 1, "total_nao_aplicaveis": 0 }, "gaps_priorizados": [{ "requisito_id": "R2", "severidade": "alto", "acao_recomendada": "Rever política de distribuição" }] } 
  • Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 5.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 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

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

Ao concluir sua execução, esse agente aciona o Agente de Adequação ao Perfil do Investidor e Consolidação do Relatório (RF 4).

RF 4. Agente de Adequação ao Perfil do Investidor e Consolidação do Relatório

4.1 Tarefa do Agente

Verificar a coerência do produto com o perfil do investidor e consolidar o relatório final técnico e executivo.

4.2 Prompt ou Instruções do Agente
 - Mapeie o risco do produto para a escala do perfil do investidor: use indicadores_risco (volatilidade, drawdown, classe declarada) e prazos/liquidez. Regras práticas: conservador não pode receber produtos com carencia>90 dias ou volatilidade_12m>5% salvo status 'condicional'; moderado pode até 15% volatilidade; arrojado/agressivo sem limite pré-definido, mas registre riscos.
- Cheque horizonte: se horizonte do investidor < prazo_total_dias/30, crie conflito 'horizonte_vs_prazo' e penalize o score.
- Cheque necessidade_liquidez: se 'alta' e liquidez D+>5, marcar conflito e sugerir produto alternativo ou rejeição.
- Cheque objetivos: produto orientado a renda deve declarar política de distribuição; se ausente, conflito 'objetivo_incompativel'.
- Respeite restricoes explícitas do investidor (ex.: 'não investir em crédito privado'): se produto contrariar, classifique 'inadequado'.
- Cálculo de score sugerido: comece em 100; subtraia 40 se risco>perfil; 25 se horizonte incompatível; 20 se liquidez incompatível; 10 por cada restrição violada; 5 por cada ponto de atenção relevante. Limite inferior 0. Status: adequado (>=80 e sem conflitos críticos), condicional (entre 50 e 79 ou com mitigação possível), inadequado (<50 ou conflito crítico).
- Para consolidação, defina ok_regulatorio=true apenas se percentual_conformidade>=95% e nenhum requisito severidade 'alto' estiver 'nao_conforme'. Caso contrário, false.
- O relatorio_markdown deve conter: Sumário Executivo, Visão Regulatória (com % e gaps), Adequação ao Perfil (status e score), Riscos e Advertências, Dados-Chave do Produto (taxas, prazos, liquidez), Evidências (páginas/trechos), e Recomendações objetivas. 
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: Dados normalizados do produto, resultado regulatório e perfil do investidor.
  • 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 até 15.000 caracteres.

4.3.2 Especificação do Output

  • Formato de output: JSON contendo a adequação ao perfil do investidor e o relatório consolidado.
  • Exemplo de Estrutura de Output:
     { "adequacao": { "status": "adequado", "score": 85, "motivos_chave": ["Risco compatível", "Horizonte de investimento adequado"], "conflitos": [] }, "consolidado": { "ok_regulatorio": true, "percentual_conformidade": 95, "riscos_relevantes": ["Volatilidade moderada"], "pontos_de_atencao": ["Verificar política de distribuição"] }, "recomendacoes": [{ "tipo": "ajuste_documental", "descricao": "Rever política de distribuição" }], "relatorio_markdown": "Sumário Executivo + detalhes técnicos", "relatorio_json": {} } 
  • Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 5.000 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 entregável 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. O relatório gerado é o resultado que deve ser disponibilizado ao usuário.

© 2025 prototipe.ai. Todos os direitos reservados.