Inspiration

La motivación detrás de HackUDC fue facilitar la interacción con la plataforma de Denodo mediante un bot de Telegram. El objetivo era permitir que los usuarios pudieran hacer preguntas en lenguaje natural y obtener respuestas basadas en datos adjuntados en CSV utilizando modelos de IA

Además, buscamos resolver el problema de Gradiant integrando su caso con el bot desarrollado ya que observamos que podrían ser propuestas complementarias.

What it does

El bot permite a los usuarios enviar preguntas en lenguaje natural a través de Telegram. Estas preguntas son procesadas por la API de Denodo, que utiliza modelos de IA (como Gemini-2.0-flash) para generar consultas SQL y recuperar información relevante. El bot luego responde con la información obtenida.

Con respecto a Gradiant, se puede adjuntar un fichero CSV con datos ficticios generados acerca de sus empleados. Una vez realizado esto, se pueden realizar queries como se especifica en el fichero readme.

How we built it

Se utilizó Python para desarrollar el bot de Telegram.
La API de Denodo maneja la conversión de lenguaje natural a SQL.
Se usó requests para la comunicación con la API y asyncio para gestionar peticiones concurrentes.
Selenium fue utilizado para actualizar datos en la plataforma de Denodo.
Mucho más

Challenges we ran into

La latencia en las respuestas de la API de Denodo resultó en tiempos de espera largos.
Manejo de errores y respuestas inesperadas de la API.
Integración de distintos servicios de IA con la API de Denodo.
Configuración y despliegue del bot en un entorno controlado.

Accomplishments that we're proud of

Conseguimos que el bot pueda responder preguntas en lenguaje natural.
Logramos integrar múltiples servicios de IA y bases de datos en un solo flujo de trabajo.
Desarrollamos un sistema robusto que maneja errores de API y latencias de red.
Mejoramos la accesibilidad de los datos en Denodo mediante una interfaz simple en Telegram.

What we learned

Cómo integrar Denodo con modelos de IA para mejorar la interacción con bases de datos.
Estrategias para manejar errores en APIs con tiempos de respuesta impredecibles.
El uso de Selenium para automatizar interacciones con interfaces web.
Mejores prácticas en el desarrollo de bots de Telegram.

What's next for HackUDC

Optimizar la latencia de respuesta del bot.
Ampliar la compatibilidad con más fuentes de datos y bases de datos externas.
Integrar capacidades de respuesta en múltiples idiomas.
Mejorar la gestión de errores.
Mejorar la configuración de parámetros.
Completar TODOs
Mejorar la interfaz de usuario con respuestas enriquecidas en Telegram.

Built With

Share this project:

Updates