Agente de IA para Previsão de Alta de Leitos de Observação

30 de November de 2025 • Tempo de leitura: 5 min

Como criar um agente de IA que utiliza dados clínicos e históricos para prever quando os leitos de observação estarão disponíveis.

1. Propósito e Escopo

Este documento define todos os prompts e detalhes de requisitos para um agente de IA que utiliza dados clínicos e históricos para prever quando os leitos de observação estarão disponíveis. 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 é melhorar o planejamento de recursos hospitalares, fornecendo previsões precisas de alta de pacientes em leitos de observação, baseando-se em padrões de dados clínicos e históricos.

2. Contexto e Problema

Problemas Específicos

O sistema atual enfrenta dificuldades em prever com precisão quando os leitos de observação serão liberados, o que resulta em um planejamento inadequado de recursos. As incertezas na liberação de leitos afetam negativamente a eficiência operacional e a capacidade de resposta do hospital.

Problemas Identificados

  • Incapacidade de prever com precisão: A falta de previsões precisas sobre a disponibilidade de leitos dificulta o planejamento e a alocação de recursos.
  • Planejamento inadequado de recursos: As incertezas na liberação de leitos levam a um planejamento ineficaz, impactando a qualidade do atendimento.

3. Impactos Esperados

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

  • Melhoria na precisão das previsões de alta e, consequentemente, na gestão de leitos.
  • Otimização do planejamento de recursos com base em dados clínicos e históricos.
  • Redução de ineficiências operacionais e melhoria na qualidade do atendimento ao paciente.

4. Visão Geral da Solução

O agente de IA para previsão de alta de leitos de observação analisa dados clínicos e históricos dos pacientes para prever quando os leitos estarão disponíveis, permitindo um planejamento de recursos mais eficiente. 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 de leitos hospitalares.

A solução consiste em um fluxo de automação composto por múltiplos agentes de IA. O processo inicia com a preparação dos dados de consulta e termina com a geração de um plano operacional e comunicação proativa com as equipes médicas.

A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo. O fluxo inclui etapas condicionais que são executadas apenas se critérios específicos forem atendidos.

Agentes Função Principal
Agente Preparador de Consulta a Dados de Leitos de Observação Preparar o payload de consulta para recuperar dados históricos e correntes de pacientes em leitos de observação.
Agente de Execução de Consultas em Banco de Dados Realizar conexão com o banco de dados clínico para obter os datasets conforme parâmetros pré-formatados.
Agente de Tratamento e Engenharia de Atributos para Previsão de Alta Tratar dados brutos, consolidar linhas por paciente e gerar features para o serviço de predição de alta.
Agente Preparador de Payload para Serviço de Previsão de Alta Formatar o payload de scoring contendo as features para o serviço de previsão de alta.
Agente de Execução de Chamada à API - Serviço de Previsão de Alta Realizar chamada ao serviço externo de predição para obter probabilidades de alta por paciente.
Agente de Geração de Plano Operacional e Comunicação Proativa Transformar as predições em um plano de liberação de leitos e mensagens prontas para comunicação com as equipes médicas.

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 Preparador de Consulta a Dados de Leitos de Observação

1.1 Tarefa do Agente

Preparar o payload de consulta para recuperar dados históricos e correntes de pacientes em leitos de observação a partir do data warehouse hospitalar (internações/observação, sinais vitais, prescrições e movimentações).

1.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um conjunto de parâmetros para consulta de dados históricos e correntes de pacientes em leitos de observação.

# 2. Objetivo
Preparar o payload de consulta para recuperar dados históricos e correntes de pacientes em leitos de observação a partir do data warehouse hospitalar.

# 3. Regras que você deve seguir para gerar sua resposta
- Construa a query com filtros obrigatórios por unidade, intervalo temporal e status.
- Liste explicitamente colunas necessárias por dataset.
- Calcule :inicio e :fim no fuso UTC com designador de timezone (Z).
- Retorne o mapeamento de datasets sem realizar junções no SQL.
- Retorne exclusivamente o JSON conforme esperado sem comentários adicionais. 
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 com os parâmetros de 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: O input inicial para o fluxo é um objeto JSON com os parâmetros de consulta.
  • 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.

1.3.2 Especificação do Output

  • Formato de output: O output deve ser um objeto JSON contendo a query SQL preparada e os parâmetros associados.
  • Exemplo de Estrutura de Output:
     {"sql": "SELECT ... FROM ... WHERE unidade = :unidade AND admissao_ts >= :inicio AND admissao_ts <= :fim", "params": {"unidade": "OBS-01", "inicio": "2025-11-01T00:00:00Z", "fim": "2025-11-30T23:59:59Z"}, "datasets": ["historico_observacao","estado_atual_pacientes","sinais_vitais","prescricoes","movimentacoes"], "formato_retorno": "jsonl"} 
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 1.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: Utiliza lógica interna para calcular timestamps e parâmetros de consulta.
  • 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 Execução de Consultas em Banco de Dados.

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 em Banco de Dados.

RF 2. Agente de Execução de Consultas em Banco de Dados

2.1 Tarefa do Agente

Realizar conexão com o banco de dados clínico/assistencial para obter os datasets históricos e correntes conforme parâmetros pré-formatados.

2.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON com a consulta preparada para execução no banco de dados clínico.

# 2. Objetivo
Realizar conexão com o banco de dados clínico/assistencial para obter os datasets históricos e correntes conforme parâmetros pré-formatados.

# 3. Regras que você deve seguir para gerar sua resposta
- Execute a consulta no banco de dados com o payload recebido.
- Retorne os dados brutos no formato JSON conforme especificado. 
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 contendo a consulta SQL preparada e os parâmetros associados.
  • 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 objeto JSON contendo os datasets históricos e correntes recuperados do banco de dados.
  • Exemplo de Estrutura de Output:
     {"historico_observacao": [{...}], "estado_atual_pacientes": [{...}], "sinais_vitais": [{...}], "prescricoes": [{...}], "movimentacoes": [{...}]} 
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 10.000 caracteres.

2.3.3 Parâmetros de Geração

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

2.3.4 Ferramentas do Agente

  • Documentos: Não consulta documentos externos.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Realiza conexão com o banco de dados clínico/assistencial para execução da consulta.

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 Tratamento e Engenharia de Atributos para Previsão de Alta.

RF 3. Agente de Tratamento e Engenharia de Atributos para Previsão de Alta

3.1 Tarefa do Agente

Tratar dados brutos, consolidar linhas por paciente e gerar features temporais e clínicas para alimentar o serviço de predição de alta de leitos de observação.

3.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON com os datasets brutos recuperados do banco de dados clínico.

# 2. Objetivo
Tratar dados brutos, consolidar linhas por paciente e gerar features temporais e clínicas para alimentar o serviço de predição de alta.

# 3. Regras que você deve seguir para gerar sua resposta
- Converta todos os timestamps para ISO 8601 UTC.
- Remova registros duplicados mantendo o de timestamp mais recente.
- Calcule métricas para janelas de 6h, 12h, 24h, 48h.
- Resuma diagnósticos e extraia indicadores binários.
- Gere campos como eventos_criticos_24h e 48h.
- Delimite episódio por paciente a partir de admissão até alta/transferência.
- Aplique forward-fill para séries faltantes com limite máximo de 6h. 
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 contendo os datasets brutos recuperados do banco de dados.
  • 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.

3.3.2 Especificação do Output

  • Formato de output: O output deve ser um objeto JSON contendo a tabela de features consolidada e o dicionário de campos.
  • Exemplo de Estrutura de Output:
     {"tabela_features": [{"id_paciente":"123","episodio_id":"E-987","tempo_desde_admissao_h": 14.5, "var_sinais_vitais": {"FR_media_6h": 18.2, "SpO2_min_24h": 93}, "uso_oxigenio": 1, "ultima_variacao_risco": -0.12, "eventos_criticos_24h": 0, "diagnostico_resumido":"asma exacerb", "intervencoes_chave": {"bronco_dilatador":1}, "turno_atual":"diurno", "dia_semana": "domingo"}], "dicionario_campos": {"tempo_desde_admissao_h":"float", "uso_oxigenio":"binary", "turno_atual":"category"}} 
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno 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: Utiliza lógica interna para cálculo de métricas e agregações.
  • 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 Preparador de Payload para Serviço de Previsão de Alta.

RF 4. Agente Preparador de Payload para Serviço de Previsão de Alta

4.1 Tarefa do Agente

Formatar o payload de scoring contendo as features por paciente/episódio e os metadados necessários para o serviço de previsão de alta.

4.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON com a tabela de features consolidada para previsão de alta.

# 2. Objetivo
Formatar o payload de scoring contendo as features por paciente/episódio e os metadados necessários para o serviço de previsão de alta.

# 3. Regras que você deve seguir para gerar sua resposta
- Inclua campos obrigatórios: unidade, referencia_ts e linhas.
- Exclua quaisquer identificadores diretos além de id_paciente e episodio_id.
- Converta categorias para strings em minúsculas do domínio listado.
- Retorne somente o JSON com endpoint, payload e headers. 
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 um objeto JSON contendo a tabela de features consolidada.
  • 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.

4.3.2 Especificação do Output

  • Formato de output: O output deve ser um objeto JSON contendo o endpoint, payload e headers para o serviço de previsão de alta.
  • Exemplo de Estrutura de Output:
     {"endpoint": "predict_discharge_service", "payload": {"unidade": "OBS-01", "referencia_ts": "2025-11-30T14:54:00Z", "linhas": [{"id_paciente":"123","episodio_id":"E-987","features": {"tempo_desde_admissao_h":14.5,"uso_oxigenio":1, "ultima_variacao_risco": -0.12, "turno_atual":"diurno", "dia_semana":"domingo"}}]}, "headers": {"content_type": "application/json"}} 
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 1.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: Utiliza lógica interna para formatação de payload e headers.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não se conecta a sistemas externos.

4.3.5 Memória

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

Ao concluir sua execução, esse agente aciona o Agente de Execução de Chamada à API - Serviço de Previsão de Alta.

RF 5. Agente de Execução de Chamada à API - Serviço de Previsão de Alta

5.1 Tarefa do Agente

Realizar chamada ao serviço externo de predição para obter probabilidades de alta por paciente e estimativas de data/hora.

5.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON contendo o endpoint, payload e headers para a chamada ao serviço de previsão de alta.

# 2. Objetivo
Realizar chamada ao serviço externo de predição para obter probabilidades de alta por paciente e estimativas de data/hora.

# 3. Regras que você deve seguir para gerar sua resposta
- Execute a chamada à API com o payload recebido.
- Retorne as predições no formato JSON conforme especificado. 
5.3 Configurações do Agente

5.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 4).
  • Tipo do input: Este agente deve ser apto a receber como input um objeto JSON contendo o endpoint, payload e headers para a chamada ao serviço de previsão de alta.
  • 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.

5.3.2 Especificação do Output

  • Formato de output: O output deve ser um objeto JSON contendo as predições de alta por paciente e estimativas de data/hora.
  • Exemplo de Estrutura de Output:
     {"predicoes": [{"id_paciente":"123","episodio_id":"E-987","prob_alta_6h":0.42,"prob_alta_12h":0.63,"prob_alta_24h":0.81,"estimativa_alta_ts":"2025-11-30T22:00:00Z","confianca":0.76,"top_drivers":["tendencia_FR_desc","estavel_oxigenacao","sem_evento_critico_24h"]}]} 
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 5.000 caracteres.

5.3.3 Parâmetros de Geração

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

5.3.4 Ferramentas do Agente

  • Documentos: Não consulta documentos externos.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Realiza chamada ao serviço externo de predição de alta.

5.3.5 Memória

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

Ao concluir sua execução, esse agente aciona o Agente de Geração de Plano Operacional e Comunicação Proativa.

RF 6. Agente de Geração de Plano Operacional e Comunicação Proativa

6.1 Tarefa do Agente

Transformar as predições em um plano de liberação de leitos com janelas estimadas de alta, impactos em recursos e mensagens prontas para comunicação com as equipes médicas.

6.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um objeto JSON com as predições do serviço de previsão de alta, incluindo probabilidades e estimativas de data/hora.

# 2. Objetivo
Transformar as predições em um plano de liberação de leitos com janelas estimadas de alta, impactos em recursos e mensagens prontas para comunicação com as equipes médicas.

# 3. Regras que você deve seguir para gerar sua resposta
- Converta probabilidades em janelas discretas {0_6h, 6_12h, 12_24h, 24_48h, 48_72h}.
- Some pacientes atribuídos a cada janela e calcule piso e teto de liberação.
- Ordene pacientes por probabilidade de alta e destaque drivers traduzidos para linguagem acessível.
- Gere mensagens proativas para pacientes com janela até 24h.
- Inclua campo confiança e sinalizadores de revisão clínica quando necessário. 
6.3 Configurações do Agente

6.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 5).
  • Tipo do input: Este agente deve ser apto a receber como input um objeto JSON com as predições do serviço de previsão de alta.
  • 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.

6.3.2 Especificação do Output

  • Formato de output: O output deve ser um objeto JSON contendo o plano operacional e mensagens proativas, além de um documento em Markdown para comunicação interna.
  • Exemplo de Estrutura de Output:
     {"resumo_unidade": {"capacidade_total": 20, "ocupacao_atual": 18, "previsao_liberacao_por_janela": {"0_6h": 2, "6_12h": 3, "12_24h": 4, "24_48h": 3, "48_72h": 2}}, "lista_pacientes": [{"id_paciente":"123","episodio_id":"E-987","estimativa_alta_ts":"2025-11-30T22:00:00Z","janela_prevista":"6_12h","confianca":0.76,"acoes_recomendadas":["Revisar prescrições para descalonamento","Solicitar validação médica"], "mensagem_proativa":"Paciente 123 com 63% de probabilidade de alta até 12h; confirmar critérios e preparar documentos."}]} 
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 5.000 caracteres.

6.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

6.3.4 Ferramentas do Agente

  • Documentos: Não consulta documentos externos.
  • Calculadora: Utiliza lógica interna para cálculo de janelas e priorização de pacientes.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não se conecta a sistemas externos.

6.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.

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

A execução deste agente finaliza o fluxo. O plano gerado deve ser comunicado às equipes médicas conforme configurado na interface da Prototipe AI.

© 2025 prototipe.ai. Todos os direitos reservados.