Machine Learning + LLM em Node.js

Trilhas de estudo personalizadas por duas IAs

Um modelo de Machine Learning próprio classifica o perfil do aluno. Uma LLM limitada monta a trilha a partir de um catálogo fechado, sem inventar cursos.

Testar o simulador Ver demonstração Código no GitHub

Veja funcionando

O aluno preenche o perfil, o classificador recomenda o plano e a LLM gera a trilha.

Gravação da aplicação real. O trecho de espera pela resposta da LLM foi encurtado.

O problema

Catálogos grandes, alunos perdidos

Plataformas de ensino têm dezenas de cursos. Sem orientação, o aluno escolhe por tentativa, desanima e abandona.

LLMs inventam

Pedir uma trilha a uma LLM sem limites gera cursos que não existem, em ordens que ignoram pré-requisitos.

Como funciona

Cada IA faz o que sabe fazer melhor.

  1. 1

    Perfil do aluno

    Horas semanais, senioridade, linguagem e área, validados por JSON Schema.

  2. 2

    Classificador de ML

    Rede neural em TensorFlow.js recomenda o plano Basic ou Pro, com a confiança.

  3. 3

    LLM limitada

    A Gemini escolhe e ordena módulos de um catálogo filtrado, e justifica cada escolha.

  4. 4

    Validação

    Módulos, ordem e pré-requisitos são conferidos. Se algo falhar, entra a trilha padrão.

Decisões técnicas

Catálogo fechado e filtrado

69 módulos em 2 linguagens e 21 áreas. A LLM recebe só os 6 a 8 relevantes para o aluno.

JSON Schema nas duas pontas

Valida a entrada no Fastify e define a saída da LLM, com enum que impede IDs inventados.

Defesa em camadas

Mesmo com o schema, o sistema rejeita módulos repetidos, fora de ordem ou trilhas vazias.

Plano B sempre pronto

Uma trilha padrão, montada por ordenação topológica dos pré-requisitos, quando a LLM falha.

Resiliência e prazo

Novas tentativas com backoff, troca automática de modelo e no máximo 30 segundos de espera.

Privacidade e segurança

Nenhum dado pessoal chega à LLM, e o texto gerado nunca é interpretado como HTML.

Tecnologias