Arquitectura técnica
Backend en Go sobre un router chi, multi-tenant a nivel de fila en PostgreSQL con pgvector, desplegado stateless en Cloud Run. Cuatro decisiones tecnológicas que, juntas, son poco comunes de encontrar en un mismo sistema educativo.
Arquitectura general
Cada capa resuelve una responsabilidad concreta del flujo de una conversación.
Los agentes de IA
Todo el conocimiento indexado de su plataforma.
Plantillas atadas en runtime a un curso o microcredencial, con RAG estricto a ese recurso.
Buscador de recursos institucionales.
Noticias relevantes bajo demanda, con caché por usuario.
Pipeline de indexación
12 tipos de fuente soportados: cursos, microcredenciales, carreras, materias, documentos, clases grabadas, conferencias, podcasts, talleres, diseño instruccional, Temas Selectos y conocimiento libre.
El indexador procesa por goroutines, sin bloquear la respuesta al cliente.
Micro-servicio remoto (PyMuPDF + markitdown) con fallback local, y visión para imágenes.
2048 dimensiones (halfvec), indexadas con HNSW para similitud coseno en milisegundos.
Búsqueda scopeada por plataforma, con re-ranking por peso de fuente y feedback de usuarios.
Seguridad y control de acceso
Todo sale de las claims verificadas del token o del JWT — tres superficies de autenticación, cada una con su propósito.
| Superficie | Uso | Identidad |
|---|---|---|
| Token de API | Server-to-server, por plataforma | Atada al token, inyecta platform_id |
| JWT de usuario | Cliente final (chat, catálogo, noticias) | Claims: user_id, platform_id, perfil |
| Login admin | Panel humano de gestión | Usuario/contraseña + JWT con roles |
Infraestructura y despliegue
Backend en Go stateless, escala a demanda, ideal para el flujo alto e irregular de una universidad.
Migraciones embebidas en el binario, aplicadas automáticamente al arrancar; respaldo automático diario.
En síntesis