U9 · Secundários

RAG sobre aulas em vídeo

Plataforma de cursos para uma escola online em que o aluno pergunta sobre a aula e recebe respostas com citações clicáveis que pulam o vídeo para o minuto certo. A busca combina HyDE, busca híbrida (vetor + texto) e rerank.

privado

Decisões técnicas

  • Ingestão assíncrona: o upload entra numa fila BullMQ e um worker em container separado extrai o áudio com ffmpeg, transcreve com Deepgram e gera embeddings. PDFs seguem o mesmo caminho.
  • Chunks de cerca de 500 tokens com sobreposição de 50, guardando o tempo de início de cada trecho para a citação.
  • Busca em etapas: HyDE gera uma resposta hipotética e usa o embedding dela; busca vetorial (HNSW) e full-text (tsvector) são unidas por Reciprocal Rank Fusion; o Cohere reranqueia os 20 melhores e ficam 5.
  • Citações no formato [Título, MM:SS] viram botões que levam o player ao ponto exato da aula.
  • Quando a melhor pontuação fica abaixo de 0,65, a resposta sai com aviso de baixa confiança. Respostas repetidas vêm de um cache no Redis por 24h.
  • Cada etapa (HyDE, busca, rerank, transcrição) é registrada como span no Langfuse.

Stack

Next.js 16TypeScriptPostgreSQLpgvectorDrizzle ORMBullMQRedisOpenAICohere RerankDeepgram

O que mostra

Escolas e cursos online com muito conteúdo em vídeo que querem que o aluno tire dúvidas sobre a aula sem sair do player.