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 Fluxo de Agentes "Personalização de Ofertas de Vale-Saúde", uma solução de automação projetada para analisar o perfil dos beneficiários e recomendar pacotes de benefícios de vale-saúde mais adequados. 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 é garantir que os beneficiários recebam ofertas personalizadas que atendam às suas necessidades individuais, aumentando a satisfação e eficiência dos pacotes de benefícios oferecidos.
2. Contexto e Problema
Cenário Atual
Atualmente, os beneficiários de vale-saúde recebem ofertas de benefícios que muitas vezes não são adequadas às suas necessidades individuais. Essa falta de personalização pode levar a uma menor satisfação dos beneficiários e a uma subutilização dos pacotes oferecidos.
Problemas Identificados
- Falta de personalização: Os pacotes de benefícios oferecidos não consideram as necessidades e preferências individuais dos beneficiários, resultando em ofertas genéricas.
- Baixa satisfação: A falta de adequação das ofertas às necessidades dos beneficiários pode levar a uma experiência insatisfatória.
3. Impactos Esperados
A implementação deste fluxo de automação visa alcançar os seguintes resultados:
- Aumentar a satisfação dos beneficiários ao oferecer pacotes de benefícios mais alinhados com suas necessidades e preferências.
- Melhorar a eficiência dos pacotes de benefícios oferecidos, resultando em uma melhor utilização dos serviços disponíveis.
4. Visão Geral da Solução
O agente de IA para personalização de ofertas de vale-saúde analisa o perfil dos beneficiários, aplica regras de personalização e recomenda pacotes de benefícios que melhor atendam às suas necessidades individuais. 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 personalização de ofertas de vale-saúde.
A solução consiste em um fluxo de automação composto por 3 agentes de IA. O processo inicia com a preparação e saneamento dos dados dos beneficiários e termina com a recomendação personalizada de pacotes de benefícios.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Preparação e Saneamento de Dados do Beneficiário e Catálogo (RF 1)
| Validar, normalizar e enriquecer o perfil do beneficiário e o catálogo de pacotes de vale-saúde para uso analítico. |
Agente de Scoring de Aderência de Pacotes (RF 2)
| Calcular a aderência de cada pacote do catálogo ao perfil do beneficiário, gerando escores, motivos e alertas. |
Agente de Recomendações Personalizadas de Vale-Saúde (RF 3)
| Selecionar e apresentar recomendações finais de pacotes com justificativas claras e próximos melhores alternativos. |
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 Preparação e Saneamento de Dados do Beneficiário e Catálogo
1.1 Tarefa do Agente
Validar, normalizar e enriquecer o perfil do beneficiário e o catálogo de pacotes de vale-saúde para uso analítico.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON que contém o perfil do beneficiário e o catálogo de pacotes de vale-saúde. O objetivo é processar e preparar esses dados para análises posteriores.
# 2. Objetivo
Validar, normalizar e enriquecer o perfil do beneficiário e o catálogo de pacotes de vale-saúde para uso analítico.
# 3. Regras que você deve seguir para gerar sua resposta
- Valide chaves obrigatórias no perfil do beneficiário.
- Normalize campos textuais para minúsculas sem acentos.
- Mapeie idade para faixa etária e registre em assumptions se necessário.
- Ordene preferências considerando histórico de utilização recente.
- Construa sinais de uso por categoria chave.
- Normalize preço e características dos pacotes do catálogo.
- Preencha dados de qualidade com transformações aplicadas e inconsistências corrigidas.
# 4. Exemplo de Output que você deve produzir
{
"perfil_normalizado": {"id": "string", "faixa_etaria": "36-45", "tem_dependentes": true, "n_dependentes": 2, "cidade": "string", "uf": "string", "orcamento_mensal_max": 250.00, "preferencias_priorizadas": ["odontologia", "telemedicina"], "restricoes": ["sem carência longa"], "sinais_uso": {"odontologia": 0.8, "consultas": 0.6, "exames": 0.3}, "condicoes_autodeclaradas": ["hipertensão"]}, "catalogo_normalizado": [{"id_pacote": "string", "nome": "string", "price_mensal": 199.90, "features": ["telemedicina", "odontologia"], "abrangencia": "nacional", "provedores_chave": ["Clinica X"], "carencias": {"consultas": 0, "exames": 30}, "elegibilidade_check": {"necessita_validacao": false, "incompatibilidade_direta": false}}], "qualidade_dados": {"faltantes": ["renda_mensal"], "assumptions": ["orcamento_mensal_max usado como teto"], "normalizacoes": ["strings para minúsculas sem acentos"], "inconsistencias_corrigidas": []}}
} 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 objeto JSON contendo o perfil do beneficiário e o catálogo de pacotes de vale-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 do JSON na interface da Prototipe AI, para acelerar o processo de validação.
- Tipo do input: O input inicial é um objeto JSON com os dados do beneficiário e do catálogo de pacotes.
-
Formatos Suportados: Esse agente deve ser capaz de receber dados nos formatos:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 10.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON estruturado com o perfil do beneficiário normalizado e o catálogo de pacotes ajustado para análise.
-
Exemplo de Estrutura de Output:
{ "perfil_normalizado": {"id": "string", "faixa_etaria": "36-45", "tem_dependentes": true, "n_dependentes": 2, "cidade": "string", "uf": "string", "orcamento_mensal_max": 250.00, "preferencias_priorizadas": ["odontologia", "telemedicina"], "restricoes": ["sem carência longa"], "sinais_uso": {"odontologia": 0.8, "consultas": 0.6, "exames": 0.3}, "condicoes_autodeclaradas": ["hipertensão"]}, "catalogo_normalizado": [{"id_pacote": "string", "nome": "string", "price_mensal": 199.90, "features": ["telemedicina", "odontologia"], "abrangencia": "nacional", "provedores_chave": ["Clinica X"], "carencias": {"consultas": 0, "exames": 30}, "elegibilidade_check": {"necessita_validacao": false, "incompatibilidade_direta": false}}], "qualidade_dados": {"faltantes": ["renda_mensal"], "assumptions": ["orcamento_mensal_max usado como teto"], "normalizacoes": ["strings para minúsculas sem acentos"], "inconsistencias_corrigidas": []}} } - Número de caracteres esperado: O JSON final deve ter um tamanho aproximado de 5.000 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 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 de Scoring de Aderência de Pacotes (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Scoring de Aderência de Pacotes (RF 2).
RF 2. Agente de Scoring de Aderência de Pacotes
2.1 Tarefa do Agente
Calcular a aderência de cada pacote do catálogo ao perfil do beneficiário, gerando escores, motivos e alertas.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON que contém o perfil normalizado do beneficiário e o catálogo de pacotes normalizado. O objetivo é calcular a aderência de cada pacote ao perfil do beneficiário.
# 2. Objetivo
Calcular a aderência de cada pacote do catálogo ao perfil do beneficiário, gerando escores, motivos e alertas.
# 3. Regras que você deve seguir para gerar sua resposta
- Calcule a compatibilidade orçamentária de cada pacote.
- Avalie a cobertura de preferências usando similaridade Jaccard.
- Determine a elegibilidade e abrangência geográfica.
- Aplique penalizações por carências e restrições quando necessário.
- Gere um score total para cada pacote e liste motivos positivos e negativos.
# 4. Exemplo de Output que você deve produzir
{
"beneficiario_id": "string", "pacotes_avaliados": [{"id_pacote": "string", "nome": "string", "score_total": 0.0, "subscores": {"orcamento": 0.0, "preferencias": 0.0, "elegibilidade": 0.0, "abrangencia": 0.0, "carencia": 0.0, "historico_uso": 0.0}, "dentro_do_orcamento": true, "flags": ["carencia_alta", "elegibilidade_a_validar"], "motivos_positivos": ["inclui odontologia"], "motivos_negativos": ["carência de exames 60 dias"]}], "criterios": {"pesos": {"orcamento": 0.25, "preferencias": 0.25, "elegibilidade": 0.20, "abrangencia": 0.10, "carencia": 0.10, "historico_uso": 0.10}, "limiares": {"orcamento_teto": 250.00, "score_minimo_recomendacao": 0.6}}}
} 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 um objeto JSON com o perfil normalizado do beneficiário e o catálogo de pacotes.
-
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é 8.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON contendo os escores de aderência de cada pacote ao perfil do beneficiário, com motivos e alertas.
-
Exemplo de Estrutura de Output:
{ "beneficiario_id": "string", "pacotes_avaliados": [{"id_pacote": "string", "nome": "string", "score_total": 0.0, "subscores": {"orcamento": 0.0, "preferencias": 0.0, "elegibilidade": 0.0, "abrangencia": 0.0, "carencia": 0.0, "historico_uso": 0.0}, "dentro_do_orcamento": true, "flags": ["carencia_alta", "elegibilidade_a_validar"], "motivos_positivos": ["inclui odontologia"], "motivos_negativos": ["carência de exames 60 dias"]}], "criterios": {"pesos": {"orcamento": 0.25, "preferencias": 0.25, "elegibilidade": 0.20, "abrangencia": 0.10, "carencia": 0.10, "historico_uso": 0.10}, "limiares": {"orcamento_teto": 250.00, "score_minimo_recomendacao": 0.6}}} } - Número de caracteres esperado: O JSON final deve ter um tamanho aproximado 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 de Recomendações Personalizadas de Vale-Saúde (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Recomendações Personalizadas de Vale-Saúde (RF 3).
RF 3. Agente de Recomendações Personalizadas de Vale-Saúde
3.1 Tarefa do Agente
Selecionar e apresentar recomendações finais de pacotes com justificativas claras e próximos melhores alternativos.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON com os escores de aderência dos pacotes ao perfil do beneficiário. O objetivo é selecionar as melhores recomendações de pacotes.
# 2. Objetivo
Selecionar e apresentar recomendações finais de pacotes com justificativas claras e próximos melhores alternativos.
# 3. Regras que você deve seguir para gerar sua resposta
- Ordene os pacotes por score total de forma decrescente.
- Selecione pacotes com score acima do mínimo recomendado.
- Exclua pacotes com incompatibilidades diretas.
- Construa justificativas curtas para as recomendações.
- Inclua alternativas próximas que falharam por um único motivo.
# 4. Exemplo de Output que você deve produzir
{
"beneficiario_id": "string", "recomendacoes": [{"id_pacote": "string", "nome": "string", "score_total": 0.0, "preco_mensal": 0.0, "ajuste_sugerido": {"possivel_negociacao": false, "sugestao_de_upgrade": "string opcional", "sugestao_de_downgrade": "string opcional"}, "justificativa": "texto curto e objetivo com 2-4 bullets"}], "alternativas_proximas": [{"id_pacote": "string", "nome": "string", "motivo": "ultrapassa orçamento em 10%"}], "criterios_resumo": {"score_minimo_recomendacao": 0.6, "max_itens": 3}}
} 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 um objeto JSON com os escores de aderência dos pacotes ao perfil do beneficiário.
-
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é 6.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON contendo as recomendações finais de pacotes para o beneficiário, com justificativas e alternativas próximas.
-
Exemplo de Estrutura de Output:
{ "beneficiario_id": "string", "recomendacoes": [{"id_pacote": "string", "nome": "string", "score_total": 0.0, "preco_mensal": 0.0, "ajuste_sugerido": {"possivel_negociacao": false, "sugestao_de_upgrade": "string opcional", "sugestao_de_downgrade": "string opcional"}, "justificativa": "texto curto e objetivo com 2-4 bullets"}], "alternativas_proximas": [{"id_pacote": "string", "nome": "string", "motivo": "ultrapassa orçamento em 10%"}], "criterios_resumo": {"score_minimo_recomendacao": 0.6, "max_itens": 3}} } - Número de caracteres esperado: O JSON final deve ter um tamanho aproximado 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 é o entregável final e não é passada para outros agentes internos.
3.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo. As recomendações geradas são o resultado que deve ser disponibilizado ao usuário.