1. Propósito e Escopo
Este documento define todos os prompts, configurações de memória, transição entre estados, ferramentas como chamadas a sistemas externos e demais requisitos funcionais para o agente de IA "Recomendações de Leitura Personalizadas para Alunos". 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 é analisar o histórico de leitura dos alunos e recomendar livros que correspondam aos seus interesses e nível de leitura, garantindo sugestões personalizadas e motivadoras.
2. Contexto e Problema
Cenário Atual
As escolas enfrentam dificuldades em oferecer recomendações de leitura personalizadas para cada aluno devido à falta de tempo dos bibliotecários para analisar individualmente o histórico de leitura. Além disso, manter os alunos engajados na leitura com sugestões relevantes e motivadoras é um desafio constante.
Problemas Identificados
- Dificuldade em personalização: Alunos não recebem recomendações de leitura que atendam aos seus interesses específicos.
- Tempo insuficiente: Bibliotecários não conseguem dedicar tempo suficiente para analisar o histórico de leitura de cada aluno individualmente.
- Engajamento baixo: Sugestões de leitura não são suficientemente relevantes para manter os alunos motivados e interessados.
3. Impactos Esperados
A implementação deste agente de IA visa alcançar os seguintes resultados:
- Aumentar o engajamento dos alunos através de recomendações de leitura mais relevantes e personalizadas.
- Otimizar o tempo dos bibliotecários, automatizando a análise dos históricos de leitura dos alunos.
- Melhorar as habilidades de leitura dos alunos, oferecendo livros que desafiem adequadamente seus níveis de leitura.
4. Visão Geral da Solução
O agente de IA para recomendações de leitura personalizadas analisa o histórico de leitura dos alunos, identifica padrões de preferência e utiliza algoritmos de recomendação para sugerir livros que correspondam ao nível de leitura e interesses dos alunos. 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 recomendação de leituras personalizadas.
A solução consiste em um fluxo de automação composto por 3 agentes de IA. O processo inicia com a análise do histórico de leitura e termina com a geração de uma lista de recomendações personalizadas.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Análise do Histórico de Leitura (RF 1)
| Transformar o histórico de leitura do aluno em um perfil legível por máquina. |
Agente de Execução de Chamada à API do Catálogo (RF 2)
| Realizar a chamada à API do sistema de catálogo de livros para recuperar candidatos de recomendação. |
Agente de Recomendação de Livros (RF 3)
| Gerar lista ordenada de recomendações por aluno. |
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 aluno receberá. Explore os links abaixo para entender melhor a solução em ação.
6. Requisitos Funcionais
RF 1. Agente de Análise do Histórico de Leitura
1.1 Tarefa do Agente
Transformar o histórico bruto de leitura do aluno em um perfil legível por máquina, com preferências, nível de leitura e filtros prontos para consulta ao catálogo.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON com o histórico de leitura do aluno. Este JSON contém informações sobre os livros lidos, como títulos, autores, gêneros e avaliações.
# 2. Objetivo
Transformar o histórico bruto de leitura do aluno em um perfil legível por máquina, com preferências, nível de leitura e filtros prontos para consulta ao catálogo.
# 3. Regras que você deve seguir para gerar sua resposta
- Analise o histórico de leitura para identificar padrões de preferência e interesses.
- Calcule os gêneros e autores preferidos com base em frequência e avaliações.
- Determine o nível de leitura do aluno com base na dificuldade dos livros lidos.
- Crie um perfil detalhado que inclua gêneros, autores, idioma alvo, faixa etária alvo, nível de leitura, entre outros.
# 4. Exemplo de Output que você deve produzir
{
"alunos": [
{
"aluno_id": "12345",
"perfil": {
"generos_preferidos": ["Fantasia", "Ciência Ficcional"],
"autores_preferidos": ["J.K. Rowling", "Isaac Asimov"],
"idioma_alvo": "pt-BR",
"faixa_etaria_alvo": "12-14",
"nivel_leitura": { "escala": "lexile", "faixa": [850, 1050] },
"tamanho_preferido": { "paginas_min": 200, "paginas_max": 400 },
"tolerancia_dificuldade": "moderada",
"penalizar_ja_lidos": true,
"diversidade_minima": { "genero": 0.2, "autor": 0.2 },
"incluir_novidades": true,
"limiar_avaliacao_min": 3.5
}
}
]
} 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 histórico de leitura dos alunos 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 é um JSON estruturado contendo o histórico de leitura dos alunos.
-
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é 50.000 caracteres.
1.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com o perfil de leitura detalhado para cada aluno.
-
Exemplo de Estrutura de Output:
{ "alunos": [ { "aluno_id": "12345", "perfil": { "generos_preferidos": ["Fantasia", "Ciência Ficcional"], "autores_preferidos": ["J.K. Rowling", "Isaac Asimov"], "idioma_alvo": "pt-BR", "faixa_etaria_alvo": "12-14", "nivel_leitura": { "escala": "lexile", "faixa": [850, 1050] }, "tamanho_preferido": { "paginas_min": 200, "paginas_max": 400 }, "tolerancia_dificuldade": "moderada", "penalizar_ja_lidos": true, "diversidade_minima": { "genero": 0.2, "autor": 0.2 }, "incluir_novidades": true, "limiar_avaliacao_min": 3.5 } } ] } - 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 Execução de Chamada à API do Catálogo (RF 2).
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 do Catálogo (RF 2).
RF 2. Agente de Execução de Chamada à API do Catálogo
2.1 Tarefa do Agente
Realizar a chamada à API do sistema de catálogo de livros para recuperar candidatos de recomendação conforme os parâmetros prontos do aluno.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON com os perfis dos alunos, incluindo parâmetros prontos para consulta ao catálogo.
# 2. Objetivo
Realizar a chamada à API do sistema de catálogo de livros para recuperar candidatos de recomendação conforme os parâmetros prontos do aluno.
# 3. Regras que você deve seguir para gerar sua resposta
- Utilize o endpoint e os parâmetros fornecidos no JSON para realizar a chamada à API do catálogo.
- Retorne os resultados obtidos diretamente, sem aplicar transformação ou análise.
# 4. Exemplo de Output que você deve produzir
{
"alunos": [
{
"aluno_id": "12345",
"catalogo": {
"itens": [
{
"livro_id": "67890",
"titulo": "O Guia do Mochileiro das Galáxias",
"autor": "Douglas Adams",
"genero": "Ficção Científica"
}
]
}
}
]
} 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 contendo os perfis dos alunos com os parâmetros prontos para consulta ao catálogo.
-
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.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com os resultados do catálogo por aluno.
-
Exemplo de Estrutura de Output:
{ "alunos": [ { "aluno_id": "12345", "catalogo": { "itens": [ { "livro_id": "67890", "titulo": "O Guia do Mochileiro das Galáxias", "autor": "Douglas Adams", "genero": "Ficção Científica" } ] } } ] } - 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 documentos externos.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Conecta-se ao sistema de catálogo de livros via API.
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 Recomendação de Livros (RF 3).
2.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Recomendação de Livros (RF 3).
RF 3. Agente de Recomendação de Livros
3.1 Tarefa do Agente
Gerar lista ordenada de recomendações por aluno combinando o perfil calculado com os itens retornados do catálogo, aplicando critérios de relevância, adequação pedagógica e diversidade.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo um JSON mesclado com perfis de alunos e resultados do catálogo retornados pelo agente anterior.
# 2. Objetivo
Gerar uma lista ordenada de recomendações por aluno, combinando o perfil calculado com os itens retornados do catálogo.
# 3. Regras que você deve seguir para gerar sua resposta
- Calcule um score base normalizado (0-1) por item como média ponderada de gênero, autor, nível, idioma, popularidade e novidade.
- Exclua itens que não atendam aos critérios de disponibilidade ou compatibilidade com a faixa etária alvo.
- Aplique um limiar de corte para descartar itens com score abaixo de 0.45, exceto para cumprir cotas de diversidade.
- Construa lista final com no mínimo 10 e no máximo 20 itens, garantindo diversidade mínima de gênero e autor.
# 4. Exemplo de Output que você deve produzir
{
"alunos": [
{
"aluno_id": "12345",
"recomendacoes": [
{
"rank": 1,
"livro_id": "67890",
"titulo": "O Guia do Mochileiro das Galáxias",
"autor": "Douglas Adams",
"genero": "Ficção Científica"
}
]
}
]
} 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 um JSON mesclado contendo perfis de alunos e resultados do catálogo.
-
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é 15.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um JSON com a lista de recomendações por aluno.
-
Exemplo de Estrutura de Output:
{ "alunos": [ { "aluno_id": "12345", "recomendacoes": [ { "rank": 1, "livro_id": "67890", "titulo": "O Guia do Mochileiro das Galáxias", "autor": "Douglas Adams", "genero": "Ficção Científica" } ] } ] } - 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: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: Não se conecta a sistemas externos.
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 (JSON de recomendações) é o entregável 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 JSON de recomendações gerado é o resultado que deve ser disponibilizado ao usuário.