Agente de IA para Planejamento de Capacidade de Redes de Saúde

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

Como criar um agente de IA que analisa dados de uso e capacidade das redes de saúde credenciadas.

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 e demais requisitos funcionais para o Fluxo de Agentes "Planejamento de Capacidade de Redes 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 agente de IA foi projetado para analisar dados de uso e capacidade das redes de saúde credenciadas, identificar ineficiências e sugerir ajustes para otimizar o atendimento, além de propor estratégias para lidar com picos de demanda e evitar sobrecarga.

2. Contexto e Problema

Problemas Específicos

O agente foi criado para resolver problemas específicos e já conhecidos nas redes de saúde credenciadas:

  • Ineficiências no uso da capacidade das redes de saúde credenciadas.
  • Dificuldade em prever e ajustar a capacidade para atender à demanda flutuante.

A análise de dados de uso e capacidade é crucial para identificar e mitigar esses problemas, garantindo que as redes de saúde possam atender eficientemente à demanda dos pacientes.

3. Impactos Esperados

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

  • Melhorar a eficiência no uso da capacidade das redes de saúde credenciadas.
  • Otimizar o atendimento ao ajustar a capacidade com base na demanda.
  • Reduzir a sobrecarga durante picos de demanda, garantindo um atendimento contínuo e de qualidade.
  • Aumentar a previsibilidade das operações, permitindo um planejamento mais eficaz.

4. Visão Geral da Solução

O agente de IA para planejamento de capacidade de redes de saúde processa dados estruturados sobre uso e capacidade, identificando ineficiências e sugerindo ajustes para otimizar o atendimento. 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 gestão eficiente das redes de saúde.

A solução consiste em um fluxo de automação composto por 4 agentes de IA. O processo inicia com a validação e normalização dos dados e termina com a proposta de estratégias para lidar com picos de demanda.

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

Agentes Função Principal
Agente de Validação e Normalização de Dados Validar e normalizar os dados de uso e capacidade das redes de saúde credenciadas.
Agente de Diagnóstico de Ineficiências Identificar ineficiências de uso de capacidade e apontar causas prováveis.
Agente de Planejamento de Capacidade e Ajustes Sugerir ajustes operacionais para otimizar o atendimento.
Agente de Estratégias para Picos e Contingência Propor estratégias para lidar com picos de demanda e evitar sobrecarga.

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 Validação e Normalização de Dados

1.1 Tarefa do Agente

Validar, padronizar e enriquecer os dados de uso e capacidade das redes de saúde credenciadas, garantindo consistência antes das análises.

1.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um dataset em CSV ou JSON com registros diários ou por faixa horária contendo, no mínimo, as colunas: data (YYYY-MM-DD), unidade_id, prestador_id, especialidade_id, capacidade_disponivel (numero >=0), capacidade_utilizada (numero >=0).

# 2. Objetivo
Validar, padronizar e enriquecer os dados de uso e capacidade das redes de saúde credenciadas, garantindo consistência antes das análises.

# 3. Regras que você deve seguir para gerar sua resposta
- Rejeitar registros sem qualquer uma das colunas obrigatórias.
- Converter tipos (data para ISO YYYY-MM-DD; numéricos com ponto decimal).
- Padronizar ids como strings sem espaços.
- Exigir capacidade_disponivel >= 0 e capacidade_utilizada >= 0.
- Se capacidade_utilizada > capacidade_disponivel, marcar como outlier e ajustar capacidade_disponivel para capacidade_utilizada quando capacidade_max_teorica suportar.

# 4. Exemplo de Output que você deve produzir
{ "dados_normalizados": [ { "data": "2025-12-01", "unidade_id": "U01", "prestador_id": "P10", "especialidade_id": "ESP-ORTO", "periodo": "manha", "capacidade_disponivel": 120, "capacidade_utilizada": 98, "taxa_no_show": 0.08, "backlog_pedidos": 12, "sla_dias": 7, "capacidade_max_teorica": 150, "capacidade_min_operacional": 80 } ], "relatorio_qualidade": { "registros_entrada": 12500, "registros_validos": 12130, "registros_descartados": 370, "motivos_descarte": { "schema_invalido": 120, "valores_negativos": 40, "datas_invalidas": 55, "duplicados": 155 }, "ajustes_realizados": { "imputacoes": 310, "correcoes_tipo": 220, "agregacoes_duplicados": 155 }, "intervalo_datas": { "inicio": "2025-08-01", "fim": "2025-12-15" } } }
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 dataset em CSV ou JSON contendo os registros necessários 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: O input inicial para o fluxo é um dataset em CSV ou JSON.
  • Formatos Suportados: Esse agente deve ser capaz de receber datasets nos formatos: .csv, .json.
  • Número de caracteres esperado: Este agente deve ter capacidade para processar um input de texto com até 500.000 caracteres.

1.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON estruturado contendo os dados normalizados e um relatório de qualidade.
  • Exemplo de Estrutura de Output:
     { "dados_normalizados": [ { "data": "2025-12-01", "unidade_id": "U01", "prestador_id": "P10", "especialidade_id": "ESP-ORTO", "periodo": "manha", "capacidade_disponivel": 120, "capacidade_utilizada": 98, "taxa_no_show": 0.08, "backlog_pedidos": 12, "sla_dias": 7, "capacidade_max_teorica": 150, "capacidade_min_operacional": 80 } ], "relatorio_qualidade": { "registros_entrada": 12500, "registros_validos": 12130, "registros_descartados": 370, "motivos_descarte": { "schema_invalido": 120, "valores_negativos": 40, "datas_invalidas": 55, "duplicados": 155 }, "ajustes_realizados": { "imputacoes": 310, "correcoes_tipo": 220, "agregacoes_duplicados": 155 }, "intervalo_datas": { "inicio": "2025-08-01", "fim": "2025-12-15" } } }
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em 10.000 caracteres.

1.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.5

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 Diagnóstico de Ineficiências.

1.3.6 Regras de Orquestração

Ao concluir sua execução, esse agente aciona o Agente de Diagnóstico de Ineficiências.

RF 2. Agente de Diagnóstico de Ineficiências

2.1 Tarefa do Agente

Identificar e quantificar ineficiências de uso de capacidade por unidade/prestador/especialidade/periodo e apontar causas prováveis.

2.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados normalizados e um relatório de qualidade conforme saída do Agente de Validação e Normalização de Dados.

# 2. Objetivo
Identificar e quantificar ineficiências de uso de capacidade por unidade/prestador/especialidade/periodo e apontar causas prováveis.

# 3. Regras que você deve seguir para gerar sua resposta
- Calcular ocupacao_media, desvio_padrao_ocupacao e coeficiente_variacao por grupo.
- Classificar como subutilização quando ocupacao<=0.70 em pelo menos 5 dias dentro de qualquer janela móvel de 7 dias.
- Classificar como sobrecarga quando ocupacao>=0.90 por 3 dias consecutivos.
- Se taxa_no_show media do grupo >= 0.12, classificar como causa provável de subutilização.

# 4. Exemplo de Output que você deve produzir
{ "ineficiencias": [ { "escopo": { "unidade_id": "U01", "prestador_id": "P10", "especialidade_id": "ESP-ORTO", "periodo": "manha" }, "tipo": "subutilizacao", "janela_analise": { "inicio": "2025-11-15", "fim": "2025-12-15" }, "metricas": { "ocupacao_media": 0.62, "dias_ocupacao_baixa": 16, "capacidade_media": 110, "ociosidade_media": 42 }, "criterio_disparo": "ocupacao<0.70 em >=5 dias de uma janela de 7 dias por 3 janelas consecutivas", "causas_provaveis": ["no_show_alto", "distribuicao_horaria_desbalanceada" ] } ], "kpis_globais": { "ocupacao_media": 0.81, "dias_sobrecarga": 9, "dias_subutilizacao": 21, "variabilidade_coefficient": 0.34 } }
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: Este agente deve ser apto a receber como input um JSON contendo os dados normalizados e um relatório de qualidade.
  • 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é 10.000 caracteres.

2.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON estruturado contendo as ineficiências identificadas e suas causas prováveis.
  • Exemplo de Estrutura de Output:
     { "ineficiencias": [ { "escopo": { "unidade_id": "U01", "prestador_id": "P10", "especialidade_id": "ESP-ORTO", "periodo": "manha" }, "tipo": "subutilizacao", "janela_analise": { "inicio": "2025-11-15", "fim": "2025-12-15" }, "metricas": { "ocupacao_media": 0.62, "dias_ocupacao_baixa": 16, "capacidade_media": 110, "ociosidade_media": 42 }, "criterio_disparo": "ocupacao<0.70 em >=5 dias de uma janela de 7 dias por 3 janelas consecutivas", "causas_provaveis": ["no_show_alto", "distribuicao_horaria_desbalanceada" ] } ], "kpis_globais": { "ocupacao_media": 0.81, "dias_sobrecarga": 9, "dias_subutilizacao": 21, "variabilidade_coefficient": 0.34 } }
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em 8.000 caracteres.

2.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.5

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 Planejamento de Capacidade e Ajustes.

2.3.6 Regras de Orquestração

Ao concluir sua execução, esse agente aciona o Agente de Planejamento de Capacidade e Ajustes.

RF 3. Agente de Planejamento de Capacidade e Ajustes

3.1 Tarefa do Agente

Sugerir ajustes operacionais de capacidade para otimizar o atendimento, respeitando restrições operacionais e sinais de demanda.

3.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo ineficiências identificadas, KPIs globais e dados normalizados oriundos do Agente de Diagnóstico de Ineficiências.

# 2. Objetivo
Sugerir ajustes operacionais de capacidade para otimizar o atendimento, respeitando restrições operacionais e sinais de demanda.

# 3. Regras que você deve seguir para gerar sua resposta
- Definir horizonte default de 14 dias para ajustes propositivos.
- Buscar faixa de ocupação-alvo 0.80–0.90.
- Aumento máximo de 20% por ciclo; redução máxima de 15% por ciclo.
- Nunca reduzir abaixo de capacidade_min_operacional quando backlog_pedidos>0.

# 4. Exemplo de Output que você deve produzir
{ "sugestoes_ajustes": [ { "escopo": { "unidade_id": "U01", "prestador_id": "P10", "especialidade_id": "ESP-ORTO", "periodo": "manha" }, "horizonte_dias": 14, "ajuste_percentual": +15, "capacidade_alvo": 138, "racional": "ocupacao>=0.90 por 4 dias; backlog>0; p95_ocupacao=0.96", "restricoes_respeitadas": ["max_aumento_20%", "nao_reduzir_com_backlog" ], "inicio_vigencia": "2025-12-20" } ], "parametros": { "janela_referencia_dias": 28, "limite_aumento_percentual": 20, "limite_reducao_percentual": 15, "ocupacao_alvo": 0.85 } }
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 bem-sucedida do agente anterior (RF 2).
  • Tipo do input: Este agente deve ser apto a receber como input um JSON contendo as ineficiências identificadas, KPIs globais e dados normalizados.
  • 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é 15.000 caracteres.

3.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON estruturado contendo as sugestões de ajustes operacionais.
  • Exemplo de Estrutura de Output:
     { "sugestoes_ajustes": [ { "escopo": { "unidade_id": "U01", "prestador_id": "P10", "especialidade_id": "ESP-ORTO", "periodo": "manha" }, "horizonte_dias": 14, "ajuste_percentual": +15, "capacidade_alvo": 138, "racional": "ocupacao>=0.90 por 4 dias; backlog>0; p95_ocupacao=0.96", "restricoes_respeitadas": ["max_aumento_20%", "nao_reduzir_com_backlog" ], "inicio_vigencia": "2025-12-20" } ], "parametros": { "janela_referencia_dias": 28, "limite_aumento_percentual": 20, "limite_reducao_percentual": 15, "ocupacao_alvo": 0.85 } }
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em 12.000 caracteres.

3.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.5

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 Estratégias para Picos e Contingência.

3.3.6 Regras de Orquestração

Ao concluir sua execução, esse agente aciona o Agente de Estratégias para Picos e Contingência.

RF 4. Agente de Estratégias para Picos e Contingência

4.1 Tarefa do Agente

Propor estratégias operacionais para lidar com picos de demanda e evitar sobrecarga, detalhando ações, pré-requisitos e indicadores de sucesso.

4.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo sugestões de ajustes operacionais, ineficiências identificadas e dados normalizados oriundos do Agente de Planejamento de Capacidade e Ajustes.

# 2. Objetivo
Propor estratégias operacionais para lidar com picos de demanda e evitar sobrecarga, detalhando ações, pré-requisitos e indicadores de sucesso.

# 3. Regras que você deve seguir para gerar sua resposta
- Ativar gatilhos quando existir sobrecarga classificada ou quando p95_ocupacao previsto/observado >=0.95.
- Aplicar extensão de horário quando capacidade_max_teorica permitir +10–20% por curto prazo.
- Realocar atendimentos entre unidades vizinhas quando ocupacao<=0.75.
- Propor teleatendimento/triagem em especialidades elegíveis para deslocar até 10% dos atendimentos simples.

# 4. Exemplo de Output que você deve produzir
{ "estrategias_picos": [ { "gatilho": "p95_ocupacao>=0.95 nas próximas 2 semanas", "acoes": [ { "acao": "extensao_horario", "escopo": { "unidade_id": "U02", "especialidade_id": "ESP-CARDIO" }, "duracao_dias": 10, "incremento_capacidade_estimado": 12, "pre_requisitos": ["equipe_disponivel", "infra_ok"], "indicadores_sucesso": ["ocupacao<=0.90", "tempo_espera<-20%" ] } ], "alternativas": ["redistribuicao_interunidades", "teleatendimento_triagem" ] } ] }
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 bem-sucedida do agente anterior (RF 3).
  • Tipo do input: Este agente deve ser apto a receber como input um JSON contendo sugestões de ajustes operacionais, ineficiências identificadas e dados normalizados.
  • 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é 12.000 caracteres.

4.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON estruturado contendo as estratégias propostas para lidar com picos de demanda.
  • Exemplo de Estrutura de Output:
     { "estrategias_picos": [ { "gatilho": "p95_ocupacao>=0.95 nas próximas 2 semanas", "acoes": [ { "acao": "extensao_horario", "escopo": { "unidade_id": "U02", "especialidade_id": "ESP-CARDIO" }, "duracao_dias": 10, "incremento_capacidade_estimado": 12, "pre_requisitos": ["equipe_disponivel", "infra_ok"], "indicadores_sucesso": ["ocupacao<=0.90", "tempo_espera<-20%" ] } ], "alternativas": ["redistribuicao_interunidades", "teleatendimento_triagem" ] } ] }
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em 10.000 caracteres.

4.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.5

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

A execução deste agente finaliza o fluxo. As estratégias geradas são o resultado que deve ser disponibilizado ao usuário.

© 2025 prototipe.ai. Todos os direitos reservados.