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 um agente de IA que auxilia na gestão de calendários acadêmicos. Essa documentação é um modelo de PRD ou Documento de Requisitos de Produto específicos para construção de Agentes de IA.
O agente é projetado para organizar e atualizar o calendário acadêmico de forma eficiente, considerando feriados, eventos institucionais e prazos acadêmicos.
2. Contexto e Problema
Cenário Atual
As instituições de ensino enfrentam dificuldades significativas na atualização e organização de seus calendários acadêmicos. Problemas comuns incluem a falta de consideração de feriados, eventos institucionais e prazos acadêmicos, o que pode levar a conflitos de agendamento e informações desatualizadas.
Problemas Identificados
- Atualização Ineficiente: Dificuldade em garantir que todos os eventos relevantes sejam considerados e atualizados no calendário.
- Falta de Padronização: Informações inconsistentes sobre eventos e prazos acadêmicos, levando a confusões.
- Conflitos de Agendamento: Eventos importantes podem coincidir devido à falta de um sistema de verificação de conflitos.
3. Impactos Esperados
A implementação deste agente de IA visa alcançar os seguintes resultados:
- Melhorar a precisão na organização e atualização do calendário acadêmico.
- Reduzir conflitos de agendamento através de uma análise sistemática e automatizada.
- Facilitar a consulta e o acesso a informações atualizadas sobre o calendário acadêmico.
4. Visão Geral da Solução
O agente de IA para gestão de calendário acadêmico processa informações de eventos, feriados e prazos acadêmicos, aplicando regras para organizar e atualizar o calendário de forma 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 calendários acadêmicos.
A solução consiste em um fluxo de automação composto por 3 agentes de IA. O processo inicia com a normalização dos dados de entrada e termina com a geração de um calendário final consolidado.
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 Entradas do Calendário (RF 1)
| Receber e normalizar dados brutos de eventos, feriados e prazos acadêmicos. |
Agente de Aplicação de Regras de Calendário e Resolução de Conflitos (RF 2)
| Aplicar regras acadêmicas e resolver conflitos de agendamento. |
Agente de Geração do Calendário Atualizado e Diferenças (RF 3)
| Produzir o calendário final consolidado e o resumo das diferenças. |
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 usuário 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 Entradas do Calendário
1.1 Tarefa do Agente
Receber dados brutos de eventos, feriados e prazos acadêmicos e produzir um conjunto normalizado e padronizado, pronto para aplicação de regras de calendário.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados brutos de eventos, feriados e prazos acadêmicos. Estes dados podem estar incompletos ou em formatos variados.
# 2. Objetivo
Normalizar e padronizar os dados recebidos para que possam ser utilizados de forma eficiente na gestão do calendário acadêmico.
# 3. Regras que você deve seguir para gerar sua resposta
- Rejeite itens fora do intervalo do ano letivo definido.
- Converta datas e horários para UTC conforme necessário.
- Assegure que cada evento tenha os campos obrigatórios preenchidos.
- Elimine duplicatas e priorize eventos com maior prioridade interna.
# 4. Exemplo de Output que você deve produzir
{
"eventos_normalizados": [
{
"id": "evento1",
"titulo": "Aula Magna",
"tipo": "aula_magna",
"data_inicio_utc": "2025-01-15T10:00:00Z",
"data_fim_utc": "2025-01-15T12:00:00Z",
"prioridade_interna": 50
}
]
} 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 de eventos, feriados e prazos acadêmicos via API. Na fase de testes, o fluxo será iniciado pelo envio manual dos dados, que serão enviados 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 JSON contendo arrays opcionais de eventos, feriados e prazos acadêmicos.
-
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é 50.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON contendo os eventos normalizados, prontos para a aplicação de regras de calendário.
-
Exemplo de Estrutura de Output:
{ "eventos_normalizados": [ { "id": "evento1", "titulo": "Aula Magna", "tipo": "aula_magna", "data_inicio_utc": "2025-01-15T10:00:00Z", "data_fim_utc": "2025-01-15T12:00:00Z", "prioridade_interna": 50 } ] } - Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno 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 Aplicação de Regras de Calendário e Resolução de Conflitos (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Aplicação de Regras de Calendário e Resolução de Conflitos (RF 2).
RF 2. Agente de Aplicação de Regras de Calendário e Resolução de Conflitos
2.1 Tarefa do Agente
Aplicar regras acadêmicas sobre eventos normalizados, inserir feriados aplicáveis, detectar e tratar conflitos de agendamento por escopo e recursos.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo eventos normalizados e o calendário atual para aplicar regras acadêmicas e resolver conflitos de agendamento.
# 2. Objetivo
Aplicar regras para consolidar o calendário acadêmico, resolver conflitos e propor ajustes quando necessário.
# 3. Regras que você deve seguir para gerar sua resposta
- Insira e atualize eventos no calendário consolidado.
- Detecte e trate conflitos de agendamento por escopo e recursos.
- Proponha resoluções automáticas para conflitos identificados.
# 4. Exemplo de Output que você deve produzir
{
"calendario_consolidado": [
{
"id": "evento1",
"titulo": "Aula Magna",
"data_inicio_utc": "2025-01-15T10:00:00Z",
"data_fim_utc": "2025-01-15T12:00:00Z",
"prioridade_interna": 50
}
],
"conflitos_detectados": []
} 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 JSON com eventos normalizados e o calendário atual.
-
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é 50.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON contendo o calendário consolidado e quaisquer conflitos detectados.
-
Exemplo de Estrutura de Output:
{ "calendario_consolidado": [ { "id": "evento1", "titulo": "Aula Magna", "data_inicio_utc": "2025-01-15T10:00:00Z", "data_fim_utc": "2025-01-15T12:00:00Z", "prioridade_interna": 50 } ], "conflitos_detectados": [] } - Número de caracteres esperado: O JSON gerado deve ter um tamanho estimado em torno de 5.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.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
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 Geração do Calendário Atualizado e Diferenças (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Geração do Calendário Atualizado e Diferenças (RF 3).
RF 3. Agente de Geração do Calendário Atualizado e Diferenças
3.1 Tarefa do Agente
Produzir o calendário final consolidado em formato JSON consistente, com trilha de auditoria das mudanças e resumo das diferenças.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o calendário consolidado e os conflitos detectados para gerar o calendário final e um resumo das diferenças.
# 2. Objetivo
Gerar um calendário final consolidado, incluindo trilha de auditoria das mudanças e um resumo das diferenças em relação ao calendário anterior.
# 3. Regras que você deve seguir para gerar sua resposta
- Compare o calendário consolidado com o calendário de referência, se disponível.
- Inclua uma trilha de auditoria com as mudanças registradas.
- Gere mensagens claras para o usuário sobre as alterações feitas.
# 4. Exemplo de Output que você deve produzir
{
"calendario_final": [
{
"id": "evento1",
"titulo": "Aula Magna",
"data_inicio_utc": "2025-01-15T10:00:00Z",
"data_fim_utc": "2025-01-15T12:00:00Z",
"prioridade_interna": 50
}
],
"diffs": {
"adicionados": [],
"alterados": [],
"removidos": []
}
} 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 JSON contendo o calendário consolidado e os conflitos detectados.
-
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é 50.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON contendo o calendário final, as diferenças detectadas e mensagens ao usuário.
-
Exemplo de Estrutura de Output:
{ "calendario_final": [ { "id": "evento1", "titulo": "Aula Magna", "data_inicio_utc": "2025-01-15T10:00:00Z", "data_fim_utc": "2025-01-15T12:00:00Z", "prioridade_interna": 50 } ], "diffs": { "adicionados": [], "alterados": [], "removidos": [] }, "mensagens_ao_usuario": ["Calendário atualizado com sucesso."] } - 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.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
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 resultado 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. O calendário final é o resultado que deve ser disponibilizado ao usuário.