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 "Organização de Acervo em Bibliotecas Escolares", uma solução projetada para otimizar a organização de acervos em bibliotecas escolares com base em categorias, popularidade e frequência de uso. 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 a eficiência na organização do acervo, facilitando a localização de livros por alunos e professores, e refletindo as mudanças nas preferências de leitura na organização física do acervo.
2. Contexto e Problema
Cenário Atual
As bibliotecas escolares enfrentam desafios significativos em relação à organização de seus acervos. Os problemas mais comuns incluem:
- Organização ineficiente do acervo, dificultando a localização de livros por alunos e professores.
- Mudanças frequentes nas preferências de leitura que não são refletidas na organização física do acervo.
Isso resulta em frustração para os usuários e subutilização dos recursos disponíveis.
Problemas Identificados
- Localização Ineficiente: A disposição atual dos livros não facilita a busca por parte dos alunos e professores, tornando o processo de empréstimo demorado e frustrante.
- Falta de Atualização: As mudanças nas preferências de leitura dos alunos e professores não são rapidamente refletidas na organização do acervo, o que pode levar à obsolescência de algumas seções e a superlotação de outras.
3. Impactos Esperados
A implementação deste fluxo de automação visa alcançar os seguintes resultados:
- Melhorar a eficiência na organização do acervo, facilitando a localização de livros por alunos e professores.
- Refletir mudanças nas preferências de leitura na organização do acervo de forma dinâmica e atualizada.
- Otimizar o uso do espaço físico da biblioteca, garantindo que os livros mais populares estejam facilmente acessíveis.
4. Visão Geral da Solução
O agente de IA para organização de acervo em bibliotecas escolares analisa dados de empréstimos e devoluções, identifica padrões de uso e popularidade dos livros, e sugere uma organização dinâmica do acervo. 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 organização do acervo da biblioteca escolar.
A solução consiste em um fluxo de automação composto por 2 agentes de IA. O processo inicia com a análise de dados de uso do acervo e termina com a geração de um plano de organização física do acervo.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Análise de Dados de Uso do Acervo (RF 1)
| Analisar dados de empréstimos e devoluções para identificar popularidade, tendências e itens com baixa circulação no acervo. |
Agente de Sugestão de Organização do Acervo (RF 2)
| Gerar um plano de organização física e de exposição do acervo com base nas métricas de demanda, categorias e sazonalidade. |
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 Análise de Dados de Uso do Acervo
1.1 Tarefa do Agente
Analisar dados de empréstimos e devoluções para identificar popularidade, tendências e itens com baixa circulação no acervo.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo dados estruturados de circulação e catálogo da biblioteca. Estes dados incluem informações sobre empréstimos, devoluções e detalhes do catálogo de livros disponíveis.
# 2. Objetivo
Analisar os dados para identificar padrões de uso e popularidade dos livros, e gerar relatórios que destaquem itens de alta e baixa demanda, bem como tendências emergentes de leitura.
# 3. Regras que você deve seguir para gerar sua resposta
- Calcule métricas de uso para janelas de 30, 90, 180 e 365 dias, considerando apenas registros dentro de cada janela para suas respectivas métricas.
- Descarte linhas com livro_id vazio e trate datas inválidas como ausentes.
- Para livros sem data_devolucao, considere o empréstimo em curso para cálculos de dias_medio_emprestimo usando a data atual ou a data de fim da janela.
- Gere relatórios que incluam resumos gerais, métricas por livro e por categoria, e uma lista de itens frios (baixa circulação).
- Classifique livros por popularidade e sazonalidade, destacando públicos predominantes (alunos, professores ou misto).
# 4. Exemplo de Output que você deve produzir
{
"resumo_geral": {
"periodo_analise": {"inicio": "YYYY-MM-DD", "fim": "YYYY-MM-DD"},
"total_emprestimos": number,
"itens_unicos": number
},
"metricas_por_livro": [
{
"livro_id": string,
"titulo": string,
"categoria_principal": string,
"emprestimos_30d": number,
"emprestimos_90d": number,
"emprestimos_180d": number,
"emprestimos_365d": number,
"dias_medio_emprestimo": number,
"atrasos_percentual": number,
"recencia_factor": number,
"tendencia_crescimento": number,
"popularidade_score": number,
"classe_demanda": "alta" | "media" | "baixa",
"sazonalidade_pico": ["Meses"],
"publico_predominante": "alunos" | "professores" | "misto"
}
],
"metricas_por_categoria": [
{
"categoria": string,
"share_demanda_90d": number,
"popularidade_media": number,
"itens_frios": number,
"tendencia_categoria": number
}
],
"itens_frios": ["livro_id", ...],
"parametros_norma": {
"p90_uso_30d": number,
"media_180d": number,
"desvio_180d": number
}
} 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 de circulação e catálogo 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 CSV na interface da Prototipe AI, para acelerar o processo de validação.
- Tipo do input: Dados estruturados de circulação e catálogo.
-
Formatos Suportados: Esse agente deve ser capaz de receber dados nos formatos:
.json,.csv. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input de até 100.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um arquivo no formato JSON contendo resumos gerais, métricas por livro e por categoria, e uma lista de itens frios.
-
Exemplo de Estrutura de Output:
{ "resumo_geral": { "periodo_analise": {"inicio": "YYYY-MM-DD", "fim": "YYYY-MM-DD"}, "total_emprestimos": number, "itens_unicos": number }, "metricas_por_livro": [ { "livro_id": string, "titulo": string, "categoria_principal": string, "emprestimos_30d": number, "emprestimos_90d": number, "emprestimos_180d": number, "emprestimos_365d": number, "dias_medio_emprestimo": number, "atrasos_percentual": number, "recencia_factor": number, "tendencia_crescimento": number, "popularidade_score": number, "classe_demanda": "alta" | "media" | "baixa", "sazonalidade_pico": ["Meses"], "publico_predominante": "alunos" | "professores" | "misto" } ], "metricas_por_categoria": [ { "categoria": string, "share_demanda_90d": number, "popularidade_media": number, "itens_frios": number, "tendencia_categoria": number } ], "itens_frios": ["livro_id", ...], "parametros_norma": { "p90_uso_30d": number, "media_180d": number, "desvio_180d": number } } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado 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.
- Calculadora: Utiliza lógica interna para calcular métricas de uso e popularidade.
- Busca Online: Não utiliza.
- Sistemas Externos: Não utiliza.
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 Sugestão de Organização do Acervo (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Sugestão de Organização do Acervo (RF 2).
RF 2. Agente de Sugestão de Organização do Acervo
2.1 Tarefa do Agente
Gerar um plano de organização física e de exposição do acervo com base nas métricas de demanda, categorias e sazonalidade.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo a saída completa do Agente de Análise de Dados de Uso do Acervo, além de parâmetros de espaço da biblioteca.
# 2. Objetivo
Gerar um plano de organização física do acervo que maximize a eficiência no uso do espaço e melhore o acesso aos livros mais populares e em alta demanda.
# 3. Regras que você deve seguir para gerar sua resposta
- Crie zonas de organização com base na demanda dos últimos 90 dias, distribuindo o espaço em zonas de alta, média e baixa demanda.
- Alinhe a alocação de categorias com a popularidade média e as tendências identificadas, garantindo que os livros mais populares estejam em locais de fácil acesso.
- Proponha realocações de livros conforme necessário para otimizar o uso do espaço e aumentar a visibilidade de itens de alta demanda.
- Inclua recomendações para sinalização e rotulagem que ajudem na navegação dos usuários pela biblioteca.
# 4. Exemplo de Output que você deve produzir
{
"zonificacao": [
{"zona": "A", "proposito": "Alta demanda e acesso rápido", "bays_atribuidos": [1,2], "capacidade_total": number },
{"zona": "B", "proposito": "Demanda média", "bays_atribuidos": [3,4,5], "capacidade_total": number },
{"zona": "C", "proposito": "Baixa demanda/arquivo", "bays_atribuidos": [6,7,8,9,10], "capacidade_total": number }
],
"alocacao_categorias": [
{"categoria": string, "zona": "A"|"B"|"C", "racional": string}
],
"posicionamento_livros": [
{"livro_id": string, "zona": "A"|"B"|"C", "bay": number, "prateleira": number, "face_out": true/false}
],
"sinalizacao": {
"placas_zona": [{"zona": "A", "texto": "Recomendados e mais emprestados"}],
"rotulos_prateleira": [{"categoria": string, "cor": string, "icone": string}]
},
"realocacoes_sugeridas": [
{"livro_id": string, "de": {"bay": number, "prateleira": number}, "para": {"bay": number, "prateleira": number}, "motivo": string}
],
"revisao_periodica": {"frequencia": "mensal", "criterio_rebalanceamento": "se desvio de demanda > 15%"}
} 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 a saída completa do Agente de Análise de Dados de Uso do Acervo e parâmetros de espaço em JSON.
-
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 arquivo no formato JSON detalhando o plano de organização do acervo, incluindo zonificação, alocação de categorias, posicionamento de livros e recomendações de sinalização.
-
Exemplo de Estrutura de Output:
{ "zonificacao": [ {"zona": "A", "proposito": "Alta demanda e acesso rápido", "bays_atribuidos": [1,2], "capacidade_total": number }, {"zona": "B", "proposito": "Demanda média", "bays_atribuidos": [3,4,5], "capacidade_total": number }, {"zona": "C", "proposito": "Baixa demanda/arquivo", "bays_atribuidos": [6,7,8,9,10], "capacidade_total": number } ], "alocacao_categorias": [ {"categoria": string, "zona": "A"|"B"|"C", "racional": string} ], "posicionamento_livros": [ {"livro_id": string, "zona": "A"|"B"|"C", "bay": number, "prateleira": number, "face_out": true/false} ], "sinalizacao": { "placas_zona": [{"zona": "A", "texto": "Recomendados e mais emprestados"}], "rotulos_prateleira": [{"categoria": string, "cor": string, "icone": string}] }, "realocacoes_sugeridas": [ {"livro_id": string, "de": {"bay": number, "prateleira": number}, "para": {"bay": number, "prateleira": number}, "motivo": string} ], "revisao_periodica": {"frequencia": "mensal", "criterio_rebalanceamento": "se desvio de demanda > 15%"} } - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado 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: Utiliza lógica interna para otimizar a organização do acervo.
- 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 completa o fluxo e é o produto final a ser utilizado para reorganizar o acervo.
2.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo e o plano de organização gerado deve ser implementado pela equipe da biblioteca.