DataLitics
Plataforma de analítica empresarial donde cualquier persona pregunta en lenguaje natural y recibe la consulta SQL, los datos y el análisis. Multi-tenant, con una capa de seguridad que bloquea los intentos de inyección antes de que toquen la base de datos.
DataLitics — recorrido completo por la plataforma — subí el volumen para escuchar la narración
> Sobre el proyecto
DataLitics salió de una situación que se repite en toda empresa: los datos están en la base de datos y las preguntas están en la cabeza de gente que no sabe SQL. Entre las dos cosas siempre hay alguien haciendo de traductor, y ese alguien se vuelve un cuello de botella. La plataforma saca ese intermedio del camino: escribís tu pregunta como se la harías a un compañero y recibís la consulta generada, los datos y el análisis de lo que significan.
Lo que se ve en este recorrido es el modelo base sobre el que se construyó todo — la arquitectura, el pipeline de agentes y la capa de seguridad tal como quedaron definidos. El producto está en producción y siguió evolucionando desde ahí, pero esta es la base que sostiene todo lo demás, y es la parte que puedo mostrar completa.
Por dentro no es un modelo respondiendo solo: son seis agentes encadenados, cada uno con una única responsabilidad. El de intención lee la pregunta y determina qué tablas, métricas y período hacen falta. El de SQL arma la consulta con un grafo de LangGraph que la genera, la valida sintácticamente, la pasa por los controles de seguridad y recién entonces la aprueba. El de ejecución la corre contra la base del cliente. El de insights lee los resultados y escribe los hallazgos junto con el tipo de gráfico que mejor los representa. Se suman uno de clarificación, que ante una pregunta ambigua devuelve preguntas en lugar de adivinar, y uno de analítica que responde sobre los datos de auditoría de la propia plataforma.
La parte que más trabajo me dio, y de la que más conforme quedé, es la seguridad. Cada consulta atraviesa tres controles: Prompt Shields de Azure AI Content Safety, que detecta intentos de inyección y jailbreak; un filtro de contexto que corta cualquier consulta que toque tablas o columnas fuera del rol de quien pregunta; y un clasificador que le asigna un nivel de riesgo. Si alguien intenta que el sistema borre una tabla o se lleve datos que no le corresponden, la consulta queda bloqueada antes de llegar a la base y el intento aparece registrado en el panel del administrador con su tipo de bloqueo y su nivel de riesgo.
Es multi-tenant de verdad: cada empresa tiene su identificador, su configuración de acceso y sus datos aislados del resto. El administrador conecta su base desde un asistente que prueba la conexión, inspecciona el esquema y genera la configuración de acceso sola, y desde ahí decide qué tablas ve cada rol y suma a su equipo con códigos de invitación que él mismo aprueba.
Funcionalidades
- ▸Preguntas en lenguaje natural que devuelven el SQL, los datos y el análisis con su gráfico
- ▸Pipeline de seis agentes: intención, SQL, ejecución, insights, clarificación y analítica
- ▸Modo extendido: ante una pregunta ambigua devuelve preguntas de aclaración en vez de adivinar
- ▸Detección de inyección de prompts y jailbreak con Azure AI Content Safety
- ▸Filtro de contexto que bloquea toda consulta fuera de las tablas autorizadas del rol
- ▸Clasificación automática de riesgo de cada consulta en bajo, medio y alto
- ▸Auditoría completa: historial de consultas, bloqueos, motivo y exportación a CSV
- ▸Panel de seguridad con métricas de amenazas y desglose por tipo de ataque
- ▸Arquitectura multi-tenant con aislamiento total de datos entre empresas
- ▸Onboarding que prueba la conexión, inspecciona el esquema y genera la configuración de acceso
- ▸Control de acceso por tabla y por rol desde el panel de administración
- ▸Gestión de equipo con códigos de invitación y aprobación del administrador
- ▸Inventario de habilidades de los agentes, con asistente para proponer nuevas
- ▸Protección ante caídas del servicio de datos con patrón circuit breaker
Stack técnico
Frontend
Backend
IA y agentes
Seguridad
Datos
Despliegue
Organización
Metodología
Equipo con Scrum
Equipo
5 personas
Duración sprint
1 semana
Control de versiones
GitHub
Desarrollado en equipo. Partimos el producto en módulos y cada uno se trabajó como un issue independiente con su criterio de aceptación, lo que nos permitió avanzar en paralelo sin pisarnos: agentes, seguridad, capa de datos y frontend se movían al mismo tiempo. Ramas por feature, revisión por pull request antes de integrar y una demo funcional al cierre de cada iteración.