Este artículo es especial: marca el final de un ciclo que culminó con mi graduación en junio de 2025. No solo es el último que escribo para la revista, sino también el cierre de una etapa universitaria que me ha permitido reenfocar mi vida profesional hacia lo que realmente me apasiona.
LangQuery, mi proyecto de fin de grado, condensa todo lo aprendido —y lo elegido— durante estos años. Esta herramienta une inteligencia artificial, bases de datos y visualización, pero también es la prueba de que la tecnología puede construirse con propósito, aplicando lo que sabemos para que otros lo entiendan sin tener que saberlo todo.
Aprendiendo a emprender con sentido
Uno de los momentos más enriquecedores de estos años fue mi participación en la incubadora de proyectos de la MSMK University en colaboración con el INCIBE. Allí desarrollé LSEntiende, una aplicación que utiliza inteligencia artificial para traducir la lengua de signos española a texto en tiempo real, facilitando la comunicación entre personas sordas, personas con dificultades del habla y personas oyentes. No era un ejercicio de clase ni una idea genérica: era la oportunidad real de usar la IA para mejorar vidas. Aquel proyecto me empujó a pensar en soluciones simples a problemas reales y ese enfoque ha estado muy presente también en LangQuery. Mucho de lo aprendido —desde diseño y validación técnica hasta habilidades de comunicación y pensamiento centrado en el usuario— fue decisivo a la hora de enfrentar los retos de este último proyecto.
Del box al backend: cómo nació LangQuery
La idea surgió de una reflexión: hoy en día almacenamos más datos que nunca, pero acceder a ellos sigue estando limitado a quienes dominan SQL u otras herramientas técnicas. Quería construir un puente entre ese conocimiento y cualquier persona. Así nació LangQuery: una interfaz conversacional que permite explorar bases de datos complejas mediante preguntas en lenguaje natural. Elegí como caso de uso una base de datos histórica de Fórmula 1 no solo por su riqueza técnica (múltiples tablas, relaciones complejas, variedad de tipos de datos), sino porque también es un mundo que me apasiona. Fusionar tecnología y aficiones es sin duda una de las formas más estimulantes de aprender y crear.
Así funciona LangQuery
LangQuery interpreta preguntas formuladas en lenguaje natural —por ejemplo, “¿Qué circuitos han acogido más de 10 carreras desde el año 2000 y quiénes fueron los ganadores en esas ocasiones?”— y las traduce en tiempo real a sentencias SQL ejecutables. Esto se logra mediante un modelo T5 (Text-To-Text Transfer Transformer), una arquitectura de inteligencia artificial que convierte texto en otro texto con una lógica interna basada en atención contextual. En este caso, convierte texto en lenguaje natural en sentencias SQL listas para ejecutarse.
El sistema cuenta con una capa de posprocesado heurístico, es decir, una serie de reglas programadas que corrigen automáticamente errores comunes del modelo, como la ausencia de cláusulas GROUP BY (necesarias para agrupar datos) o errores en JOINs (combinaciones entre tablas). Gracias a estas correcciones, LangQuery puede ejecutar consultas en PostgreSQL, un sistema gestor de bases de datos relacional ampliamente utilizado en entornos profesionales.
Una vez ejecutada la consulta, los resultados se visualizan automáticamente: si el sistema detecta datos numéricos categóricos, se genera un gráfico de barras; si identifica series temporales, se construyen líneas de evolución; y si hay datos geográficos (como latitud y longitud de circuitos), se produce un mapa interactivo utilizando Folium, una librería de Python que integra visualización geoespacial sobre mapas reales. Todo esto se presenta dentro de una interfaz tipo chatbot web, desarrollada con Streamlit, que permite al usuario mantener una conversación fluida con la base de datos, sin necesidad de conocimientos técnicos.
Entre desafíos técnicos y soluciones prácticas
Uno de los retos más persistentes fue garantizar la solidez del sistema ante consultas mal formuladas, ambiguas o incompletas. A menudo, los modelos de lenguaje pueden generar sentencias SQL válidas en apariencia, pero que fallan al ejecutarse por detalles como nombres de columnas incorrectos o estructuras gramaticales erróneas. Para solucionarlo, diseñé un parser personalizado que inspecciona dinámicamente el esquema de la base de datos y adapta las sentencias para asegurar que todas las columnas referenciadas existan y estén correctamente enlazadas.
Otra dificultad clave fue lograr que el sistema se adaptara al contexto de la pregunta. Por ejemplo, consultas como “¿quién es el piloto más joven?” requieren reconocer que “más joven” implica ordenar por fecha de nacimiento en orden descendente y limitar el resultado a uno. Este tipo de razonamiento semántico se incorporó mediante un módulo ontológico que traduce superlativos y comparativos comunes en operaciones lógicas específicas.
Una conversación más allá de la tecnología
Ver cómo LangQuery es capaz de generar una visualización clara a partir de una consulta compleja resulta gratificante. Pero más allá del resultado visual, lo que más valoro es que el sistema promueve una forma de interacción natural con los datos. No se trata de sustituir al analista experto, sino de permitir que cualquier persona pueda consultar información con la misma facilidad con la que hace una pregunta a otra persona. Esa democratización del acceso es, creo, uno de los mayores aportes que la tecnología puede hacer hoy.
Una etapa que también se ha vivido fuera del aula
Durante el desarrollo de LangQuery, compaginaba el proyecto y los estudios con mi trabajo en KPMG, en el área de Gestión de Identidades y Accesos (GIA) – Riesgos Tecnológicos. Esta experiencia profesional, que suma ya casi un año y medio, ha convivido con mi formación y ha sido un complemento valioso en muchos sentidos. El contacto directo con problemas reales de seguridad, sistemas y personas me ha dado una visión más amplia y práctica de la tecnología. Y, aunque LangQuery sea un proyecto académico, muchas de las decisiones que tomé al desarrollarlo estuvieron influidas por ese contexto real: buscar claridad, robustez y utilidad desde el primer diseño.
LangQuery y lo que significa
LangQuery no es solo mi proyecto de fin de grado. Es la síntesis de muchas decisiones, aprendizajes y elecciones conscientes. Es un proyecto técnico, sí, pero también un mensaje: la tecnología puede ser cercana, comprensible y útil. Cuando realmente aporta valor es al ayudar a comprender lo que antes era inaccesible. Cierro esta etapa universitaria con la satisfacción de haber construido algo que refleja mi manera de crecer en este mundo: aprendiendo, compartiendo y con ganas de seguir preguntando.
Con estas líneas me despido de la revista; cierro sesión, pero seguiré compilando ideas allá donde vaya.
Gracias.
Autor: Ángel Borrego





