Agente de IA para Gestão de Acomodações Hospitalares

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

Como criar um agente de IA que gerencia a alocação de pacientes em leitos disponíveis, considerando preferências de acomodação e necessidades médicas.

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 "Gestão de Acomodações Hospitalares", uma solução de automação projetada para gerenciar a alocação de pacientes em leitos disponíveis, considerando preferências de acomodação e necessidades médicas. 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 é otimizar a gestão de leitos hospitalares, garantindo que as preferências dos pacientes e suas necessidades médicas sejam atendidas de forma eficiente e em tempo real.

2. Contexto e Problema

Cenário Atual

A gestão de acomodações hospitalares enfrenta desafios significativos, como a falta de visibilidade em tempo real sobre a ocupação de leitos, o que leva a alocações ineficientes. Além disso, é necessário considerar as preferências de acomodação dos pacientes, como quartos privados ou compartilhados, e integrar informações médicas para garantir que as necessidades específicas de saúde dos pacientes sejam atendidas. A coordenação entre diferentes departamentos é crucial para otimizar a gestão de leitos.


Problemas Identificados

  • Falta de visibilidade em tempo real: A ausência de dados atualizados sobre a ocupação de leitos dificulta a alocação eficiente.
  • Consideração inadequada das preferências dos pacientes: As preferências de acomodação dos pacientes nem sempre são levadas em conta.
  • Integração insuficiente de dados médicos: A falta de integração dos dados médicos pode levar a acomodações inadequadas.
  • Coordenação deficiente entre departamentos: A comunicação ineficiente entre departamentos pode resultar em uso inadequado dos recursos hospitalares.

3. Impactos Esperados

A implementação deste fluxo de automação visa alcançar os seguintes resultados:

  • Melhorar a visibilidade em tempo real da ocupação de leitos, permitindo alocações mais eficientes.
  • Garantir que as preferências de acomodação dos pacientes sejam atendidas sempre que possível.
  • Integrar dados médicos para priorizar a acomodação baseada em necessidades críticas de saúde.
  • Facilitar a comunicação entre departamentos para otimizar a utilização de recursos hospitalares.

4. Visão Geral da Solução

O agente de IA para gestão de acomodações hospitalares monitora continuamente a disponibilidade de leitos, considera as preferências dos pacientes e integra dados médicos para otimizar a alocação de leitos em tempo real. 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 acomodações hospitalares.

A solução consiste em um fluxo de automação composto por 11 agentes de IA. O processo inicia com a preparação de parâmetros de consulta e termina com a atualização do status dos leitos e pacientes no sistema.

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

Agentes Função Principal
Preparador de Parâmetros de Consulta (RF 1) Construir parâmetros e payloads para recuperar disponibilidade de leitos e dados de pacientes.
Agente de Execução de Chamada à API - Leitos (RF 2) Obter a disponibilidade e atributos dos leitos.
Agente de Execução de Chamada à API - Pacientes/EMR (RF 3) Obter pacientes aguardando leito e suas necessidades clínicas.
Normalizador e Consolidador de Dados (RF 4) Normalizar e consolidar datasets de leitos e pacientes.
Avaliador de Elegibilidade de Leitos (RF 5) Determinar leitos elegíveis para cada paciente.
Priorizador de Pacientes (RF 6) Calcular a prioridade final de atendimento.
Alocador Otimizado de Leitos (RF 7) Gerar plano de alocação paciente→leito.
Validador de Conformidade e Preferências (RF 8) Auditar o plano de alocação para assegurar conformidade.
Coordenador Departamental e Notificações (RF 9) Preparar comunicações estruturadas para execução do plano.
Agente de Execução de Chamada à API - Atualização de Status (RF 10) Atualizar o status dos leitos e pacientes no sistema.

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 hospital receberá. Explore os links abaixo para entender melhor a solução em ação.

6. Requisitos Funcionais

RF 1. Preparador de Parâmetros de Consulta

1.1 Tarefa do Agente

Construir os parâmetros e payloads padronizados para recuperar disponibilidade de leitos e dados de pacientes (fila de internação, preferências e necessidades clínicas) a partir dos sistemas do hospital.

1.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um json com o contexto operacional do hospital, incluindo unidades alvo e filtros de status de leitos e pacientes.

# 2. Objetivo
Construir os parâmetros e payloads padronizados para recuperar disponibilidade de leitos e dados de pacientes a partir dos sistemas do hospital.

# 3. Regras que você deve seguir para gerar sua resposta
- Preencher sempre hospital_id e unidades_alvo; se ausente, definir unidades_alvo = todas_unidades.
- Incluir apenas status de leito relevantes ao processo de alocação: livre, em_limpeza, bloqueado_motivo_agendado (excluir ocupado).
- Em payload_api_pacientes, solicitar campos mínimos: id, sexo, idade, diagnósticos (CID), isolamento (tipo), preferências (privativo/compartilhado, ala, acompanhante), prioridade_triagem (numérico), restrições (ex.: oxigênio, monitorização contínua, diálise, bariátrico, acessibilidade).
- Definir janela_horaria_minutos >= 2 e <= 15; se valor de entrada fora do intervalo, ajustar para 5.
- Garantir que todos os arrays sejam únicos e ordenados alfabeticamente para previsibilidade.

# 4. Exemplo de Output que você deve produzir
Parâmetros prontos: {"payload_api_leitos": {"hospital_id": "HSP-001", "unidades": ["UTI Adulto", "Clínica Médica"], "status_incluidos": ["livre", "em_limpeza", "bloqueado"], "atualizados_desde_min": 5}, "payload_api_pacientes": {"hospital_id": "HSP-001", "status_pacientes": ["aguardando_leito"], "campos": ["id","sexo","idade","diagnosticos","isolamento","preferencias","prioridade_triagem","restricoes"], "limite": 500}} 
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 JSON com o contexto operacional do hospital 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 para o fluxo é um JSON com o contexto operacional do hospital.
  • 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.

1.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON com os parâmetros prontos para a consulta de leitos e pacientes.
  • Exemplo de Estrutura de Output:
    Parâmetros prontos: {"payload_api_leitos": {"hospital_id": "HSP-001", "unidades": ["UTI Adulto", "Clínica Médica"], "status_incluidos": ["livre", "em_limpeza", "bloqueado"], "atualizados_desde_min": 5}, "payload_api_pacientes": {"hospital_id": "HSP-001", "status_pacientes": ["aguardando_leito"], "campos": ["id","sexo","idade","diagnosticos","isolamento","preferencias","prioridade_triagem","restricoes"], "limite": 500}}
  • 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: 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 Execução de Chamada à API - Leitos (RF 2).

RF 2. Agente de Execução de Chamada à API - Leitos

2.1 Tarefa do Agente

Realizar chamada à API do Sistema de Gestão de Leitos para obter a disponibilidade e atributos dos leitos.

2.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o payload_api_leitos pronto, conforme saída do Preparador de Parâmetros de Consulta.

# 2. Objetivo
Realizar chamada à API do Sistema de Gestão de Leitos para obter a disponibilidade e atributos dos leitos.

# 3. Regras que você deve seguir para gerar sua resposta
- Este agente apenas executa a chamada e retorna os dados sem transformação.

# 4. Exemplo de Output que você deve produzir
Dados brutos de leitos: [{"leito_id":"L-101","unidade":"UTI Adulto","status":"livre","sexo_permitido":"indiferente","tipo_quarto":"privativo","equipamentos":["ventilador","monitor"],"isolamento_suportado":["gotículas","contato"],"capacidade":"padrão","acessibilidade":true}] 
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 o payload_api_leitos pronto.
  • 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é 1.000 caracteres.

2.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON contendo os dados brutos de leitos.
  • Exemplo de Estrutura de Output:
    Dados brutos de leitos: [{"leito_id":"L-101","unidade":"UTI Adulto","status":"livre","sexo_permitido":"indiferente","tipo_quarto":"privativo","equipamentos":["ventilador","monitor"],"isolamento_suportado":["gotículas","contato"],"capacidade":"padrão","acessibilidade":true}]
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 1.500 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.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Este agente realiza chamadas à API do Sistema de Gestão de Leitos.

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 Normalizador e Consolidador de Dados (RF 4).

2.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 - Pacientes/EMR (RF 3).

RF 3. Agente de Execução de Chamada à API - Pacientes/EMR

3.1 Tarefa do Agente

Realizar chamada à API do prontuário/EMR e fila de internação para obter pacientes aguardando leito, preferências e necessidades clínicas.

3.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o payload_api_pacientes pronto, conforme saída do Preparador de Parâmetros de Consulta.

# 2. Objetivo
Realizar chamada à API do prontuário/EMR e fila de internação para obter pacientes aguardando leito, preferências e necessidades clínicas.

# 3. Regras que você deve seguir para gerar sua resposta
- Este agente apenas executa a chamada e retorna os dados sem transformação.

# 4. Exemplo de Output que você deve produzir
Dados brutos de pacientes: [{"paciente_id":"P-555","sexo":"F","idade":68,"diagnosticos":["J18"],"isolamento":"gotículas","preferencias":{"tipo_quarto":"privativo","ala_preferida":"cardio"},"prioridade_triagem":4,"restricoes":["oxigenio","monitorizacao"]}] 
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 o payload_api_pacientes pronto.
  • 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é 1.000 caracteres.

3.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON contendo os dados brutos de pacientes.
  • Exemplo de Estrutura de Output:
    Dados brutos de pacientes: [{"paciente_id":"P-555","sexo":"F","idade":68,"diagnosticos":["J18"],"isolamento":"gotículas","preferencias":{"tipo_quarto":"privativo","ala_preferida":"cardio"},"prioridade_triagem":4,"restricoes":["oxigenio","monitorizacao"]}]
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 1.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.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Este agente realiza chamadas à API do prontuário/EMR e fila de internação.

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 Normalizador e Consolidador de Dados (RF 4).

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

Ao concluir sua execução, esse agente aciona o Normalizador e Consolidador de Dados (RF 4).

RF 4. Normalizador e Consolidador de Dados

4.1 Tarefa do Agente

Normalizar formatos, padronizar códigos e consolidar datasets de leitos e pacientes em estruturas consistentes.

4.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados brutos de leitos e pacientes provenientes dos agentes de execução de API.

# 2. Objetivo
Normalizar formatos, padronizar códigos e consolidar datasets de leitos e pacientes em estruturas consistentes.

# 3. Regras que você deve seguir para gerar sua resposta
- Converter chaves para snake_case ou camelCase consistente (manter conforme exemplos de output) e normalizar valores booleanos para true/false.
- Mapear diagnósticos para CID quando possível; se já em CID, replicar em cid_normalizado.
- Padronizar valores de isolamento para um conjunto fechado: nenhum, contato, gotículas, aerossóis.
- Remover leitos com status diferente de livre ou em_limpeza do conjunto de elegibilidade.
- Preencher campos ausentes com null e registrar campo data_referencia (ISO8601) comum aos dois datasets.

# 4. Exemplo de Output que você deve produzir
{
  "leitos": [{"leito_id":"L-101","unidade":"UTI Adulto","status":"livre","sexo_permitido":"indiferente","tipo_quarto":"privativo","equipamentos":["ventilador","monitor"],"isolamento_suportado":["gotículas","contato"],"capacidade":"padrão","acessibilidade":true}],
  "pacientes": [{"paciente_id":"P-555","sexo":"F","idade":68,"diagnosticos":["J18"],"cid_normalizado":["J18"],"isolamento":"gotículas","preferencias":{"tipo_quarto":"privativo","ala_preferida":"cardio"},"prioridade":4,"restricoes":["oxigenio","monitorizacao"]}]
} 
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 os dados brutos de leitos e pacientes.
  • 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 combinado de até 3.000 caracteres.

4.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON consolidado contendo datasets normalizados de leitos e pacientes.
  • Exemplo de Estrutura de Output:
     {
      "leitos": [{"leito_id":"L-101","unidade":"UTI Adulto","status":"livre","sexo_permitido":"indiferente","tipo_quarto":"privativo","equipamentos":["ventilador","monitor"],"isolamento_suportado":["gotículas","contato"],"capacidade":"padrão","acessibilidade":true}],
      "pacientes": [{"paciente_id":"P-555","sexo":"F","idade":68,"diagnosticos":["J18"],"cid_normalizado":["J18"],"isolamento":"gotículas","preferencias":{"tipo_quarto":"privativo","ala_preferida":"cardio"},"prioridade":4,"restricoes":["oxigenio","monitorizacao"]}]
    }
  • 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.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

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 deve ser visível para o Avaliador de Elegibilidade de Leitos (RF 5).

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

Ao concluir sua execução, esse agente aciona o Avaliador de Elegibilidade de Leitos (RF 5).

RF 5. Avaliador de Elegibilidade de Leitos

5.1 Tarefa do Agente

Determinar, para cada paciente, quais leitos são elegíveis considerando restrições rígidas (clínicas e operacionais).

5.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo datasets normalizados de leitos e pacientes.

# 2. Objetivo
Determinar, para cada paciente, quais leitos são elegíveis considerando restrições rígidas (clínicas e operacionais).

# 3. Regras que você deve seguir para gerar sua resposta
- Elegibilidade exige atender simultaneamente: (a) isolamento compatível (paciente_isolamento em isolamento_suportado ou paciente sem isolamento), (b) equipamentos requeridos presentes em leito.equipamentos, (c) sexo compatível se leito restringe sexo, (d) capacidade compatível (ex.: bariátrico requer leito bariátrico), (e) acessibilidade quando paciente possui restrição de mobilidade, (f) unidade/ala se houver exigência clínica definida.
- Se leito.status = em_limpeza, marcar elegível_pendente = true e incluir motivo informativo: "aguardar_limpeza".
- Registrar todos os motivos de não elegibilidade com códigos estáveis: isolamento_incompativel, equipamento_ausente, sexo_incompativel, capacidade_insuficiente, sem_acessibilidade, ala_incompativel.
- Não aplicar preferências nesta etapa; apenas restrições rígidas.

# 4. Exemplo de Output que você deve produzir
Matriz de elegibilidade: [{"paciente_id":"P-555","leito_id":"L-101","elegivel":true,"motivos_nao_elegibilidade":[]} , {"paciente_id":"P-555","leito_id":"L-102","elegivel":false,"motivos_nao_elegibilidade":["isolamento_incompativel","equipamento_ausente"]}] 
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 os datasets normalizados de leitos e pacientes.
  • 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é 3.000 caracteres.

5.3.2 Especificação do Output

  • Formato de output: O output deve ser uma matriz de elegibilidade em formato JSON.
  • Exemplo de Estrutura de Output:
    Matriz de elegibilidade: [{"paciente_id":"P-555","leito_id":"L-101","elegivel":true,"motivos_nao_elegibilidade":[]} , {"paciente_id":"P-555","leito_id":"L-102","elegivel":false,"motivos_nao_elegibilidade":["isolamento_incompativel","equipamento_ausente"]}]
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 2.500 caracteres.

5.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

5.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

5.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 Priorizador de Pacientes (RF 6).

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

Ao concluir sua execução, esse agente aciona o Priorizador de Pacientes (RF 6).

RF 6. Priorizador de Pacientes

6.1 Tarefa do Agente

Calcular a prioridade final de atendimento para ordenação da fila de alocação, combinando gravidade clínica e regras operacionais.

6.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo a lista de pacientes e, opcionalmente, políticas de priorização do hospital.

# 2. Objetivo
Calcular a prioridade final de atendimento para ordenação da fila de alocação.

# 3. Regras que você deve seguir para gerar sua resposta
- score_prioridade = triagem_base (0-80) + tempo_espera (0-15) + restricoes_especiais (0-10) - penalidades (0-10). Limitar resultado a 0..100.
- triagem_base: mapear prioridade clínica (ex.: 1 a 5) para 80..20 de forma decrescente; se ausente, usar 40.
- tempo_espera: 1 ponto por hora completa, até 15.
- restricoes_especiais: +10 se paciente requer combinação rara (ex.: isolamento aerossóis + bariátrico), +5 se requer 2+ equipamentos críticos.
- Penalidade: -5 se preferência estrita inviabiliza múltiplos leitos disponíveis (evitar travar operação), mantendo registro da justificativa.
- Empate: desempatar por maior tempo_espera; persistindo, idade mais avançada; persistindo, ordem alfabética de paciente_id.

# 4. Exemplo de Output que você deve produzir
Fila priorizada: [{"paciente_id":"P-555","score_prioridade":92,"componentes":{"triagem":70,"tempo_espera":12,"restricoes_raras":10},"classificacao":"critico"}] 
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 a lista de pacientes normalizada e, opcionalmente, políticas de priorização do hospital.
  • 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é 3.000 caracteres.

6.3.2 Especificação do Output

  • Formato de output: O output deve ser uma fila priorizada em formato JSON.
  • Exemplo de Estrutura de Output:
    Fila priorizada: [{"paciente_id":"P-555","score_prioridade":92,"componentes":{"triagem":70,"tempo_espera":12,"restricoes_raras":10},"classificacao":"critico"}]
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 2.500 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.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

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 deve ser visível para o Alocador Otimizado de Leitos (RF 7).

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

Ao concluir sua execução, esse agente aciona o Alocador Otimizado de Leitos (RF 7).

RF 7. Alocador Otimizado de Leitos

7.1 Tarefa do Agente

Gerar plano de alocação paciente→leito respeitando elegibilidade, prioridades e preferências, com critérios de desempate e justificativas explícitas.

7.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo a matriz de elegibilidade e a fila priorizada.

# 2. Objetivo
Gerar plano de alocação paciente→leito respeitando elegibilidade, prioridades e preferências.

# 3. Regras que você deve seguir para gerar sua resposta
- Percorrer a fila priorizada e alocar o primeiro leito elegível que maximize atendimento de preferências: ordem de preferência: tipo_quarto, ala_preferida, proximidade_servico.
- Se preferência não puder ser atendida, permitir alocação com violação justificada quando score_prioridade >= 80 ou quando ociosidade de leito for zero na unidade. Registrar violacoes_preferencia como códigos: tipo_quarto, ala, acompanhante.
- Proibir alocação que viole restrições rígidas (nunca alocar elegivel=false).
- Evitar conflitos: um leito só pode ser alocado a um paciente; ao alocar, marcar leito como reservado_no_plano.
- Gerar justificativa clara com base em: "maior_prioridade", "único_leito_elegível", "preferência_atendida", "preferência_não_atendida_por_indisponibilidade".
- Produzir campo impacto_operacional: "libera_sala_cirurgica", "evita_prolongamento_PS" quando aplicável, com base em dados de origem.

# 4. Exemplo de Output que você deve produzir
Plano de alocação: {"alocacoes": [{"paciente_id":"P-555","leito_id":"L-101","preferencia_atendida": true,"violacoes_preferencia":[],"justificativa":"maior_prioridade","status":"proposta"}], "nao_alocados": [{"paciente_id":"P-777","motivo":"sem_leito_elegivel"}]} 
7.3 Configurações do Agente

7.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 6).
  • Tipo do input: Este agente deve ser apto a receber como input a matriz de elegibilidade e a fila priorizada.
  • 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é 5.000 caracteres.

7.3.2 Especificação do Output

  • Formato de output: O output deve ser um plano de alocação em formato JSON.
  • Exemplo de Estrutura de Output:
    Plano de alocação: {"alocacoes": [{"paciente_id":"P-555","leito_id":"L-101","preferencia_atendida": true,"violacoes_preferencia":[],"justificativa":"maior_prioridade","status":"proposta"}], "nao_alocados": [{"paciente_id":"P-777","motivo":"sem_leito_elegivel"}]}
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 3.500 caracteres.

7.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

7.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

7.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 Validador de Conformidade e Preferências (RF 8).

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

Ao concluir sua execução, esse agente aciona o Validador de Conformidade e Preferências (RF 8).

RF 8. Validador de Conformidade e Preferências

8.1 Tarefa do Agente

Auditar o plano de alocação para assegurar conformidade clínica, regulatória e respeito às preferências quando possível.

8.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o plano de alocação proposto, datasets normalizados e políticas do hospital (opcional).

# 2. Objetivo
Auditar o plano de alocação para assegurar conformidade clínica, regulatória e respeito às preferências quando possível.

# 3. Regras que você deve seguir para gerar sua resposta
- Verificar que 100% das alocações possuem elegibilidade=true na matriz original.
- Calcular percentual_preferencias_atendidas e sinalizar se < 60% com aviso de atenção operacional.
- Garantir que isolamentos com risco de aerossóis sejam alocados apenas em leitos que suportem aerossóis.
- Checar conflitos de gênero quando quartos forem compartilhados e a política exigir segregação.
- Validar que não existam dois pacientes designados ao mesmo leito no plano.
- Classificar itens em erros (bloqueiam execução) e avisos (não bloqueiam).

# 4. Exemplo de Output que você deve produzir
Relatório de validação: {"conforme": true, "erros": [], "avisos": ["3 alocações sem preferência de ala"], "metricas": {"percentual_preferencias_atendidas": 72, "tempo_medio_espera_previsto_min": 34}} 
8.3 Configurações do Agente

8.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 7).
  • Tipo do input: Este agente deve ser apto a receber como input o plano de alocação proposto e datasets 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 até 5.000 caracteres.

8.3.2 Especificação do Output

  • Formato de output: O output deve ser um relatório de validação em formato JSON.
  • Exemplo de Estrutura de Output:
    Relatório de validação: {"conforme": true, "erros": [], "avisos": ["3 alocações sem preferência de ala"], "metricas": {"percentual_preferencias_atendidas": 72, "tempo_medio_espera_previsto_min": 34}}
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 2.000 caracteres.

8.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

8.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

8.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 Coordenador Departamental e Notificações (RF 9).

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

Ao concluir sua execução, esse agente aciona o Coordenador Departamental e Notificações (RF 9).

RF 9. Coordenador Departamental e Notificações

9.1 Tarefa do Agente

Preparar comunicações estruturadas para enfermagem, higienização, transporte, equipe médica e admissão, a fim de executar o plano de alocação.

9.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o plano validado e status de leitos (para identificar limpeza/transferência).

# 2. Objetivo
Preparar comunicações estruturadas para execução do plano de alocação.

# 3. Regras que você deve seguir para gerar sua resposta
- Para leitos em_limpeza com alocação pendente, gerar mensagem à higienização com SLA recomendado (<=20 min em áreas críticas).
- Para cada alocação, enviar instruções à enfermagem contendo: paciente_id, leito_id, isolamento, preferencia_atendida (sim/não) e justificativa.
- Se transferência interunidades for necessária, incluir transporte com janela de execução e ponto de coleta/entrega.
- Mensagens devem ser objetivas, acionáveis e conter acao_requerida e sla_min.
- Evitar dados sensíveis desnecessários; limitar-se ao mínimo necessário por departamento.

# 4. Exemplo de Output que você deve produzir
Mensagens por departamento: [{"departamento":"enfermagem","mensagem":"Alocar P-555 no L-101 (UTI Adulto). Isolamento: gotículas. Prioridade: crítico.","acao_requerida":"preparar_leito","sla_min":10},{"departamento":"higienizacao","mensagem":"Priorizar limpeza do L-102 para próxima alocação.","acao_requerida":"limpeza","sla_min":20}] 
9.3 Configurações do Agente

9.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 8).
  • Tipo do input: Este agente deve ser apto a receber como input o plano validado e status de leitos.
  • 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é 5.000 caracteres.

9.3.2 Especificação do Output

  • Formato de output: O output deve ser uma lista de mensagens por departamento em formato JSON.
  • Exemplo de Estrutura de Output:
    Mensagens por departamento: [{"departamento":"enfermagem","mensagem":"Alocar P-555 no L-101 (UTI Adulto). Isolamento: gotículas. Prioridade: crítico.","acao_requerida":"preparar_leito","sla_min":10},{"departamento":"higienizacao","mensagem":"Priorizar limpeza do L-102 para próxima alocação.","acao_requerida":"limpeza","sla_min":20}]
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 3.000 caracteres.

9.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

9.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Não utiliza.

9.3.5 Memória

9.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 - Atualização de Status (RF 10).

RF 10. Agente de Execução de Chamada à API - Atualização de Status

10.1 Tarefa do Agente

Registrar no sistema de origem as reservas/alocações aprovadas e atualizar o status dos leitos e pacientes.

10.2 Prompt ou Instruções do Agente
 # 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o payload de atualização pronto para registrar as reservas/alocações aprovadas e atualizar o status dos leitos e pacientes.

# 2. Objetivo
Registrar no sistema de origem as reservas/alocações aprovadas e atualizar o status dos leitos e pacientes.

# 3. Regras que você deve seguir para gerar sua resposta
- Este agente apenas executa a chamada e retorna confirmações e falhas sem transformação.

# 4. Exemplo de Output que você deve produzir
Confirmações do HIS/EMR: {"reservas_aprovadas":["L-101|P-555"], "leitos_atualizados":["L-101->ocupado"], "pacientes_atualizados":["P-555->em_transferencia"], "falhas":[]} 
10.3 Configurações do Agente

10.3.1 Especificação do Input

  • Mecanismo de Acionamento: Este agente deve ser acionado automaticamente após a conclusão do agente anterior (RF 9).
  • Tipo do input: Este agente deve ser apto a receber como input o payload de atualização pronto.
  • 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é 2.000 caracteres.

10.3.2 Especificação do Output

  • Formato de output: O output deve ser um JSON contendo confirmações do HIS/EMR.
  • Exemplo de Estrutura de Output:
    Confirmações do HIS/EMR: {"reservas_aprovadas":["L-101|P-555"], "leitos_atualizados":["L-101->ocupado"], "pacientes_atualizados":["P-555->em_transferencia"], "falhas":[]}
  • Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 1.500 caracteres.

10.3.3 Parâmetros de Geração

  • Modelo: GPT-5
  • Temperatura: 0.6

10.3.4 Ferramentas do Agente

  • Documentos: Não consulta.
  • Calculadora: Não utiliza.
  • Busca Online: Não utiliza.
  • Sistemas Externos: Este agente realiza chamadas à API do sistema de origem para registrar atualizações.

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

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

A execução deste agente finaliza o fluxo. As confirmações geradas são o resultado que deve ser disponibilizado ao usuário.

© 2025 prototipe.ai. Todos os direitos reservados.