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 "Recomendação de Leituras para Estudantes", uma solução de automação projetada para analisar o histórico de leitura dos alunos e recomendar livros que se alinham com seus interesses e níveis de leitura. 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 é identificar padrões de interesse no histórico de leitura dos alunos e oferecer recomendações de livros personalizadas, incentivando a leitura.
2. Contexto e Problema
Problemas Específicos
Os estudantes enfrentam dificuldades em encontrar livros que se alinhem com seus interesses e níveis de leitura. Isso resulta em falta de incentivo à leitura, o que pode impactar negativamente no aprendizado e desenvolvimento pessoal dos alunos.
- Dificuldade em identificar livros que se alinham com os interesses e níveis de leitura dos alunos.
- Necessidade de incentivar a leitura entre os estudantes por meio de recomendações personalizadas.
Atualmente, as recomendações são feitas de forma genérica e não consideram o histórico de leitura individual dos alunos, o que limita a eficácia das sugestões de leitura.
3. Impactos Esperados
A implementação deste fluxo de automação visa alcançar os seguintes resultados:
- Aumentar o engajamento dos alunos com a leitura através de recomendações personalizadas.
- Melhorar a eficácia das recomendações de leitura através da análise detalhada do histórico de leitura dos alunos.
- Incentivar o hábito da leitura entre os estudantes, promovendo um aprendizado contínuo e prazeroso.
4. Visão Geral da Solução
O agente de IA para recomendação de leituras analisa o histórico de leitura dos alunos, identifica padrões de interesse e sugere livros adequados ao perfil de cada aluno, com base em seus interesses e nível de leitura. 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 5 agentes de IA. O processo inicia com a consolidação do histórico de leitura do aluno e termina com a atualização do perfil de leitura com base em feedbacks recentes.
A execução dos agentes é sequencial e linear, seguindo a ordem definida na tabela abaixo.
| Agentes | Função Principal |
|---|---|
Agente de Preparação e Perfil de Leitura (RF 1)
| Consolidar o histórico de leitura e derivar um perfil quantificado de interesses e nível de leitura. |
Agente Gerador de Parâmetros de Busca de Catálogo (RF 2)
| Converter o perfil do leitor em filtros e parâmetros estruturados para recuperar candidatos do catálogo de livros. |
Agente de Execução de Chamada à API (RF 3)
| Realizar chamada à API do Sistema de Catálogo para obter a lista de livros candidatos conforme parâmetros de busca. |
Agente Ranqueador e Recomendador de Livros (RF 4)
| Ranquear candidatos e gerar recomendações personalizadas alinhadas ao perfil e às restrições pedagógicas. |
Agente de Atualização por Feedback de Leitura (RF 5)
| Incorporar novos eventos de leitura e feedback do aluno para atualizar o perfil e ajustar pesos de interesse para próximas recomendações. |
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 Preparação e Perfil de Leitura
1.1 Tarefa do Agente
Consolidar o histórico de leitura do aluno e derivar um perfil quantificado de interesses e nível de leitura.
1.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais
Você está recebendo o histórico de leitura de um aluno contendo informações sobre títulos lidos, gêneros, temas, datas de leitura, páginas lidas, status de conclusão, avaliações, idade/série, idioma preferido e formatos preferidos.
# 2. Objetivo
Analisar o histórico de leitura para consolidar um perfil de leitura que inclua interesses, nível de leitura e preferências do aluno.
# 3. Regras que você deve seguir para gerar sua resposta
- Normalize campos como datas para o formato ISO-8601 e status em {"concluído", "em andamento", "abandonado"}.
- Aplique decaimento exponencial com meia-vida de 90 dias para ponderar interações por recência.
- Calcule pesos por gênero e tópico com base em eventos de leitura, conclusão e avaliação.
- Estime o nível de leitura com base na média dos níveis dos livros concluídos.
- Defina a tolerância à novidade e preferências por séries.
- Identifique autores favoritos e a evitar com base em avaliações e abandonos.
- Produza o JSON do perfil de leitura conforme o formato esperado. 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 do histórico de leitura do aluno 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 na interface da Prototipe AI, para acelerar o processo de validação.
- Tipo do input: O input inicial para o fluxo é um conjunto de dados estruturados sobre o histórico de leitura do aluno.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs nos formatos:
.csv,.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 objeto JSON estruturado contendo o perfil de leitura do aluno.
-
Exemplo de Estrutura de Output:
{"perfil_leitor": {"generos_interesse": [{"genero": "Ficção Científica", "peso": 0.34}], "topicos_interesse": [{"topico": "espaço", "peso": 0.22}], "nivel_leitura_est": {"escala": "equivalente_ano_escolar", "valor": 7, "faixa": [6,8]}, "idioma_preferido": "pt-BR", "formatos_preferidos": ["impresso", "ebook"], "tolerancia_novidade": 0.2, "preferencia_series": true, "autores_favoritos": ["Autor X"], "autores_evitar": ["Autor Y"], "conteudos_sensiveis": ["violencia_grafica"], "janela_recencia_dias": 180, "cold_start": false, "sinais_comportamentais": {"taxa_conclusao": 0.76, "tempo_medio_leitura_min": 42, "media_avaliacoes": 4.2}}} - Número de caracteres esperado: O JSON gerado deve ser conciso e informativo, com um tamanho estimado em torno de 3.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 Gerador de Parâmetros de Busca de Catálogo (RF 2).
1.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente Gerador de Parâmetros de Busca de Catálogo (RF 2).
RF 2. Agente Gerador de Parâmetros de Busca de Catálogo
2.1 Tarefa do Agente
Converter o perfil do leitor em filtros e parâmetros estruturados para recuperar candidatos do catálogo de livros.
2.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo um perfil de leitura consolidado de um aluno, contendo informações sobre interesses, nível de leitura, e preferências. # 2. Objetivo Converter o perfil do leitor em filtros e parâmetros estruturados para recuperar candidatos do catálogo de livros. # 3. Regras que você deve seguir para gerar sua resposta - Converta generos_interesse em quotas de busca. - Defina faixa_nivel com base no nível de leitura estimado. - Inclua filtros de idioma e formatos preferidos. - Aplique filtros de conteúdo sensível e período de publicação. - Produza o JSON dos parâmetros de busca conforme o formato esperado.
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 objeto JSON estruturado que representa o perfil de leitura do aluno.
-
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é 5.000 caracteres.
2.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON estruturado contendo os parâmetros de busca para o catálogo de livros.
-
Exemplo de Estrutura de Output:
{"parametros_busca": {"generos_priorizados": [{"genero":"Ficção Científica","quota":0.6},{"genero":"Aventura","quota":0.3},{"genero":"Exploração","quota":0.1}], "faixa_nivel": [6,8], "idioma": "pt-BR", "formatos": ["impresso","ebook"], "filtro_conteudo": {"excluir": ["violencia_grafica","erotico"]}, "periodo_publicacao": {"inicio": 2015, "fim": 2025}, "series_preferidas": true, "diversidade": {"autor_max_por_lista": 2, "series_max_um": true}, "limite": 100, "ordenacao_inicial": "popularidade_desc"}} - Número de caracteres esperado: O JSON gerado deve ser claro e direto, com um tamanho estimado em 2.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 (JSON dos parâmetros de busca) deve ser visível para o Agente de Execução de Chamada à API (RF 3).
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 (RF 3).
RF 3. Agente de Execução de Chamada à API
3.1 Tarefa do Agente
Realizar chamada à API do Sistema de Catálogo para obter a lista de livros candidatos conforme parâmetros de busca.
3.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo parâmetros de busca estruturados para realizar uma chamada à API do Sistema de Catálogo de Livros. # 2. Objetivo Realizar a chamada à API utilizando os parâmetros de busca recebidos e retornar a lista de livros candidatos. # 3. Regras que você deve seguir para gerar sua resposta - Execute a chamada à API com os parâmetros fornecidos. - Retorne os dados recebidos do sistema externo sem transformações. - Produza o JSON dos candidatos conforme o formato esperado.
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 objeto JSON estruturado que representa os parâmetros de busca.
-
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é 2.000 caracteres.
3.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON estruturado contendo a lista de livros candidatos.
-
Exemplo de Estrutura de Output:
{"candidatos": [{"id":"BK123","titulo":"Exemplo","autor":"Autora Z","generos":["Ficção Científica"],"topicos":["espaço"],"nivel":7,"idioma":"pt-BR","serie":"Saga X","volume":2,"avaliacao_media":4.6,"popularidade":0.85,"ano_publicacao":2021,"indicadores_conteudo":["violencia_leve"]}]} - Número de caracteres esperado: O JSON gerado terá um tamanho aproximado de 3.000 caracteres, dependendo do número de candidatos retornados pela API.
3.3.3 Parâmetros de Geração
- Modelo: GPT-5
- Temperatura: Não se aplica (uso de ferramenta)
3.3.4 Ferramentas do Agente
- Documentos: Não consulta.
- Calculadora: Não utiliza.
- Busca Online: Não utiliza.
- Sistemas Externos: O agente deverá enviar os parâmetros de busca para a API externa e retornar os dados recebidos como resposta.
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 dos candidatos) deve ser visível para o Agente Ranqueador e Recomendador de Livros (RF 4).
3.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente Ranqueador e Recomendador de Livros (RF 4).
RF 4. Agente Ranqueador e Recomendador de Livros
4.1 Tarefa do Agente
Ranquear candidatos e gerar recomendações personalizadas alinhadas ao perfil e às restrições pedagógicas.
4.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo o perfil de leitura de um aluno e uma lista de livros candidatos para ranqueamento e recomendação. # 2. Objetivo Ranquear os livros candidatos e gerar uma lista de recomendações personalizadas para o aluno. # 3. Regras que você deve seguir para gerar sua resposta - Calcule o score final dos candidatos com base em alinhamento de gênero, compatibilidade de nível, popularidade e preferências específicas. - Aplique filtros rígidos para excluir candidatos com conteúdo sensível ou idioma diferente do preferido. - Produza o JSON das recomendações conforme o formato esperado.
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 dois artefatos como input: o perfil de leitura do aluno e a lista de candidatos obtida da API.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs nos formatos:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input combinado de até 10.000 caracteres.
4.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON estruturado contendo as recomendações personalizadas de livros.
-
Exemplo de Estrutura de Output:
{"recomendacoes": [{"id":"BK123","titulo":"Exemplo","autor":"Autora Z","justificativa":"Alinha-se ao gênero principal (0.34), nível 7 compatível com faixa 6-8, próximo volume da série já iniciada.","score":0.86,"adequacao_idade":true,"nivel_match":"perfeito","diversidade_grupo":"principal"}], "metricas": {"cobertura_generos": {"principal":0.6,"adjacente":0.3,"exploracao":0.1}, "distribuicao_autores": {"Autora Z":1}, "taxa_compatibilidade_nivel": 0.9}, "diagnosticos": {"motivos_exclusao": [{"id":"BK999","motivo":"conteúdo sensível: erotico"}]}} - Número de caracteres esperado: O JSON de output terá um tamanho aproximado de 5.000 caracteres, dependendo do número de recomendações geradas.
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 (JSON das recomendações) deve ser visível para o Agente de Atualização por Feedback de Leitura (RF 5).
4.3.6 Regras de Orquestração e Transição
Ao concluir sua execução, esse agente aciona o Agente de Atualização por Feedback de Leitura (RF 5).
RF 5. Agente de Atualização por Feedback de Leitura
5.1 Tarefa do Agente
Incorporar novos eventos de leitura e feedback do aluno para atualizar o perfil e ajustar pesos de interesse para próximas recomendações.
5.2 Prompt ou Instruções do Agente
# 1. Contexto e explicações sobre inputs iniciais Você está recebendo o perfil de leitura atual de um aluno e novos eventos de leitura para atualizar o perfil. # 2. Objetivo Atualizar o perfil de leitura do aluno incorporando novos eventos e ajustando pesos de interesse. # 3. Regras que você deve seguir para gerar sua resposta - Reaplique o esquema de ponderação de recência aos novos eventos. - Ajuste os pesos de interesse com base em conclusões e abandonos recentes. - Atualize autores favoritos e a evitar conforme novos dados. - Produza o JSON do perfil atualizado conforme o formato esperado.
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 dois artefatos como input: o perfil de leitura atual do aluno e os novos eventos de leitura.
-
Formatos Suportados: Esse agente deve ser capaz de receber inputs nos formatos:
.json. - Número de caracteres esperado: Este agente deve ter capacidade para processar um input combinado de até 7.000 caracteres.
5.3.2 Especificação do Output
- Formato de output: O output deve ser um objeto JSON estruturado contendo o perfil de leitura atualizado do aluno.
-
Exemplo de Estrutura de Output:
{"perfil_leitor_atualizado": {"generos_interesse": [...], "nivel_leitura_est": {...}, "tolerancia_novidade": 0.25, "autores_favoritos": [...], "cold_start": false}, "alteracoes": [{"campo":"generos_interesse","antes":[...],"depois":[...]}]} - Número de caracteres esperado: O JSON gerado deve ser conciso e informativo, com um tamanho estimado em torno de 4.000 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 (JSON do perfil atualizado) é o entregável final e não é passada para outros agentes internos.
5.3.6 Regras de Orquestração e Transição
A execução deste agente finaliza o fluxo. O JSON gerado é o resultado que deve ser disponibilizado para futuras análises e ajustes de recomendação.