Passa contexto da Minha Turma (inclusive Educação Especial) para IA nas observações
This commit is contained in:
+2
-1
@@ -2657,10 +2657,11 @@ const initApp = () => {
|
||||
showRecordState('processing');
|
||||
|
||||
try {
|
||||
const turmaData = localStorage.getItem('camila_turma') || '[]';
|
||||
const res = await fetch('/api/observacao/analisar', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ transcribedText: text })
|
||||
body: JSON.stringify({ transcribedText: text, turmaContext: JSON.parse(turmaData) })
|
||||
});
|
||||
|
||||
if (!res.ok) {
|
||||
|
||||
@@ -2068,7 +2068,7 @@ app.post('/api/observacao/transcrever', requireAuth, multerUpload.single('audio'
|
||||
|
||||
// Rota: POST /api/observacao/analisar — recebe texto transcrito e gera relatório pedagógico
|
||||
app.post('/api/observacao/analisar', requireAuth, async (req, res) => {
|
||||
const { transcribedText } = req.body;
|
||||
const { transcribedText, turmaContext } = req.body;
|
||||
if (!transcribedText || transcribedText.trim().length < 5) {
|
||||
return res.status(400).json({ error: 'Texto muito curto ou inexistente para análise.' });
|
||||
}
|
||||
@@ -2077,9 +2077,20 @@ app.post('/api/observacao/analisar', requireAuth, async (req, res) => {
|
||||
const agentConfig = readAgentConfig();
|
||||
const agentName = agentConfig.agentName || "Kemily";
|
||||
|
||||
const reportPrompt = `Você é a ${agentName}, assistente pedagógica da professora Camila Martella Gasparini Reifonas.
|
||||
let contextStr = '';
|
||||
if (turmaContext && Array.isArray(turmaContext) && turmaContext.length > 0) {
|
||||
contextStr = `\nCONTEXTO DA TURMA DA PROFESSORA (IMPORTANTE):\nEsta é a lista atualizada das crianças cadastradas na "Minha Turma".\nATENÇÃO: Se algum nome no áudio corresponder a uma criança listada abaixo, você DEVE incorporar as necessidades ou condições relatadas nela para enriquecer o relatório, especialmente se a criança tiver "especial": true (Educação Especial). Se a criança for especial, a análise da observação deve ser orientada por essa condição e pelo diagnóstico associado.\nLista de Crianças:\n`;
|
||||
contextStr += JSON.stringify(turmaContext.map(c => ({
|
||||
nome: c.nome,
|
||||
apelido: c.apelido,
|
||||
especial: c.especial,
|
||||
diagnostico_observacoes: c.especialDetalhes
|
||||
})), null, 2);
|
||||
contextStr += `\n\n`;
|
||||
}
|
||||
|
||||
Ela acabou de registrar uma observação sobre seus alunos da educação infantil. Sua tarefa é ANALISAR o texto e retornar UM OBJETO JSON (sem markdown, sem código, apenas o JSON puro) com:
|
||||
const reportPrompt = `Você é a ${agentName}, assistente pedagógica da professora Camila Martella Gasparini Reifonas.
|
||||
${contextStr}Ela acabou de registrar uma observação sobre seus alunos da educação infantil. Sua tarefa é ANALISAR o texto e retornar UM OBJETO JSON (sem markdown, sem código, apenas o JSON puro) com:
|
||||
|
||||
{
|
||||
"criancas": ["lista de nomes de crianças mencionadas ou 'null' se não identificar nenhuma"],
|
||||
|
||||
Reference in New Issue
Block a user