Contexto
A Bonsae atende o setor educacional. Cada curso de uma faculdade tem o seu , o Projeto Pedagógico do Curso: o documento que define objetivos, matriz curricular, disciplinas e competências esperadas. A ideia da plataforma era usar o PPC de um curso específico, de uma faculdade específica, para gerar atividades e conteúdo acadêmico alinhados a ele.
Fiquei cerca de dois meses no projeto e entreguei a .
O problema
Um PPC é longo e não cabe inteiro num prompt. E uma atividade gerada "de memória" pelo modelo sai genérica: pode cobrar o que o curso não ensina ou ignorar o que o PPC exige.
A atividade precisava sair do PPC daquele curso, e não de uma ideia geral do que um curso parecido costuma ter.
A decisão: recuperar antes de gerar
A API segue o padrão . O texto dos PPCs é extraído e dividido em trechos, os trechos viram no , e cada pedido busca primeiro os trechos do PPC mais próximos do que foi pedido para só então gerar a atividade a partir deles.
A saída é estruturada, para a plataforma receber a atividade num formato previsível em vez de texto livre.
Deploy
Django REST Framework com Gunicorn atrás do Nginx, em , numa da DigitalOcean com HTTPS.
O que ficou de fora
Gerar só a partir dos trechos recuperados reduz o risco de o modelo inventar, mas não elimina. E a atividade nunca é melhor que a busca: se o trecho certo do PPC não vem, ela sai incompleta.
Resultado
A API foi entregue em produção. O código não é público.