Agente de IA para Gestão de Empréstimos e Devoluções

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

Como criar um agente de IA que automatiza o processo de empréstimo e devolução de livros, enviando notificações de prazos e atualizando o sistema da biblioteca.

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 Gestão de Empréstimos e Devoluções. 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 é automatizar o processo de empréstimo e devolução de livros, garantindo que os registros sejam atualizados em tempo real e que notificações automáticas sobre prazos de devolução e disponibilidade de livros reservados sejam enviadas aos usuários.

2. Contexto e Problema

Cenário Atual

Atualmente, o processo de gestão de empréstimos e devoluções de livros na biblioteca é manual e demorado, resultando em ineficiências e erros no controle de prazos e disponibilidade de livros.

  • Processo manual e demorado de gestão de empréstimos e devoluções de livros na biblioteca.
  • Necessidade de garantir a eficiência e a precisão no controle de prazos e disponibilidade de livros.

Problemas Identificados

  • Consumo de tempo: O processo manual consome tempo valioso que poderia ser melhor aproveitado em outras atividades da biblioteca.
  • Erros de registro: A atualização manual dos registros é propensa a erros, levando a inconsistências nos dados de disponibilidade de livros.
  • Falta de notificações automáticas: Usuários não recebem lembretes automáticos sobre prazos de devolução, aumentando o risco de atrasos.

3. Impactos Esperados

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

  • Reduzir o tempo de processamento de empréstimos e devoluções em pelo menos 70%.
  • Melhorar a precisão dos registros de disponibilidade de livros.
  • Automatizar o envio de notificações para lembrar os usuários sobre prazos de devolução e disponibilidade de reservas.

4. Visão Geral da Solução

O agente de IA para gestão de empréstimos e devoluções automatiza o processo de empréstimo e devolução de livros, garantindo a atualização em tempo real dos registros e o envio de notificações automáticas. A seguir são detalhadas todas as regras de negócio e especificações funcionais necessárias para que esse agente atue eficientemente na gestão de empréstimos e devoluções na biblioteca.

A solução consiste em um fluxo de automação composto por diversos agentes de IA. O processo inicia com a validação e orquestração dos empréstimos e termina com a execução de notificações para os usuários.

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

Agentes Função Principal
Agente de Validação e Orquestração de Empréstimo Validar a elegibilidade do usuário e a disponibilidade do exemplar, calcular data de devolução, resolver filas de reserva e produzir payloads padronizados para atualização do sistema e envio de notificações.
Agente de Execução de Chamada à API - Biblioteca (Empréstimo) Realizar a chamada à API do Sistema de Biblioteca para registrar o empréstimo e atualizar status do exemplar e da fila de reservas (se aplicável).
Agente de Preparação de Notificação de Empréstimo Formatar mensagens e agendamentos de lembretes do empréstimo conforme preferências do usuário e políticas de aviso.
Agente de Execução de Notificações (Empréstimo) Executar o envio das notificações preparadas (email, SMS, push) e programar lembretes.
Agente de Validação e Cálculo de Devolução Validar a devolução, identificar atraso e multas conforme política, preparar payloads para atualização do sistema e notificações ao usuário.
Agente de Execução de Chamada à API - Biblioteca (Devolução) Realizar a chamada à API do Sistema de Biblioteca para registrar a devolução, liberar o exemplar e aplicar multas quando previsto.
Agente de Preparação de Notificação de Devolução Preparar mensagem ao usuário confirmando a devolução e informando eventual atraso e multa.
Agente de Execução de Notificações (Devolução) Enviar a notificação de devolução ao usuário.
Agente de Preparação de Notificação de Disponibilidade de Reserva Quando houver reserva pendente após devolução, preparar mensagem informando disponibilidade ao próximo da fila e prazo para retirada.
Agente de Execução de Notificações (Reserva Disponível) Enviar notificação ao próximo usuário da fila quando a reserva fica disponível.

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 Orquestração de Empréstimo

1.1 Tarefa do Agente

Validar a elegibilidade do usuário e a disponibilidade do exemplar, calcular data de devolução, resolver filas de reserva e produzir payloads padronizados para atualização do sistema e envio de notificações.

1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados estruturados para validar a elegibilidade de um usuário para empréstimo de livro, incluindo informações sobre o usuário, livro e políticas da biblioteca.

# 2. Objetivo
Validar a elegibilidade do usuário, a disponibilidade do exemplar, calcular a data de devolução e resolver filas de reserva.

# 3. Regras que você deve seguir para gerar sua resposta
- Negar empréstimo se usuario.multa_em_aberto > 0 ou usuario.atrasos_abertos > 0; definir emprestimo_autorizado=false e motivo_bloqueio="pendencias".
- Negar se contagem de usuario.emprestimos_ativos >= politicas.limite_emprestimos_por_categoria[usuario.categoria]; motivo_bloqueio="limite_atingido".
- Verificar reserva: se livro.fila_reserva não vazia e primeiro da fila != usuario.id, negar com motivo_bloqueio="reserva_prioritaria" e prioridade_reserva_respeitada=false; se usuario.id for o primeiro, prioridade_reserva_respeitada=true.
- Verificar disponibilidade: se livro.exemplares_disponiveis < 1 e não há prioridade de reserva para o usuário, negar com motivo_bloqueio="sem_exemplar".
- Em caso autorizado, calcular data_prevista_devolucao = data_referencia + politicas.prazo_por_categoria_dias[usuario.categoria] (não ajustar fins de semana a menos que política traga exceção; se trouxer, role para o próximo dia útil). Saída no formato ISO YYYY-MM-DD.
- Preencher payload_api_atualizacao com operacao="registrar_emprestimo" e datas; nunca incluir campos nulos.
- Montar payload_notificacao.tipo="emprestimo_confirmado" com variáveis obrigatórias (nome_usuario, titulo_livro, data_prevista_devolucao) e lembretes em P-3d e P-1d relativos à data_prevista_devolucao.
- Definir usuario_posicao_fila conforme posição do usuário na fila (0 se não está na fila); se usuário for atendido por reserva, removê-lo logicamente da fila ao construir o payload (não executa remoção; apenas sinaliza via payload_api_atualizacao.extensoes = {"remover_reserva": true}). 
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 dados estruturados 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 de um arquivo JSON na interface da Prototipe AI, para acelerar o processo de validação.
  • Tipo do input: Dados estruturados contendo informações sobre o usuário, livro e políticas da biblioteca.
  • 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 contendo a validação do empréstimo e os payloads para atualização do sistema e notificações.
  • Exemplo de Estrutura de Output:
    { "emprestimo_autorizado": true|false, "motivo_bloqueio": "string|null", "data_prevista_devolucao": "YYYY-MM-DD|null", "prioridade_reserva_respeitada": true|false, "usuario_posicao_fila": 0|n|null, "payload_api_atualizacao": {"operacao": "registrar_emprestimo", "usuario_id": "string", "livro_id": "string", "data_emprestimo": "YYYY-MM-DD", "data_prevista_devolucao": "YYYY-MM-DD"}, "payload_notificacao": {"tipo": "emprestimo_confirmado", "destinatario_usuario_id": "string", "canal_preferencial": "email|sms|push", "variaveis": {"nome_usuario": "string", "titulo_livro": "string", "data_prevista_devolucao": "YYYY-MM-DD"}, "lembretes": [{"quando": "P-3d"}, {"quando": "P-1d"}] } }
  • Número de caracteres esperado: O JSON de output terá um tamanho aproximado de 2.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 próximo agente no fluxo.

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

Ao concluir sua execução, esse agente aciona o próximo agente no fluxo.

© 2025 prototipe.ai. Todos os direitos reservados.