Skip to content

MxguelS/dashboard-sql-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C.B.D.R-Q.A (dashboard-sql-ai)

Consultas Basadas en Datos con Respuestas Automáticas

Chatbot que convierte preguntas en lenguaje natural a consultas SQL usando modelos locales de LM Studio. Escribe lo que necesitas saber y obtén resultados directamente desde tu base de datos MySQL.

Python Streamlit MySQL LM Studio


🎯 ¿Qué hace?

  1. Recibe una pregunta en español ("Muéstrame los clientes que más compraron")
  2. Extrae automáticamente el esquema de tu base de datos
  3. Usa un modelo de LM Studio (Qwen/OneSQL) para generar SQL
  4. Ejecuta la consulta de forma segura
  5. Muestra los resultados en una tabla interactiva

Todo corre localmente — sin enviar datos a APIs externas.


🚀 Inicio rápido

Requisitos

  • Python 3.9+
  • MySQL Server
  • LM Studio con un modelo descargado (ej: Qwen2.5-Coder-7B)

Instalación

git clone https://github.com/MxguelS/dashboard-sql-ai.git
cd cbdr-qa
pip install -r requirements.txt

Configuración

  1. Abre modules/config.py y completa:
LM_STUDIO_API_URL = "El host local que te da LM"
LM_STUDIO_MODEL   = "Qwen2.5-Coder-7B-Instruct" #Modelo que utilice yo
  1. En LM Studio: carga el modelo y activa el servidor local (Settings → Enable Local Inference Server)

  2. Ejecuta la app:

streamlit run app.py

📸 Preview

App Screenshot

Uso

  1. Conecta tu base de datos MySQL (host, usuario, contraseña)
  2. Conecta LM Studio (botón "Probar conexión")
  3. Empieza a preguntar

🔒 Seguridad

  • Por defecto solo permite consultas SELECT
  • Bloquea palabras peligrosas (DROP, TRUNCATE, EXEC)
  • Puedes habilitar INSERT o ALTER manualmente desde la interfaz

📁 Estructura

dashboard-sql-ai/
├── app.py                 # Punto de entrada
├── modules/
│   ├── database.py        # Conexión MySQL
│   ├── lm_estudio.py      # Generación de SQL con IA
│   ├── esquema_extraccion.py  # Extrae estructura de la DB
│   ├── sql_validator.py   # Seguridad
│   └── config.py          # Configuración
└── ui/
    ├── barra_lateral.py   # Panel de conexiones
    └── main_panel.py      # Chat principal

🛠️ Tecnologías

  • Frontend: Streamlit
  • Backend: Python
  • Base de datos: MySQL
  • IA Local: LM Studio + Qwen

📄 Licencia

MIT


Support

If you like this project, consider giving it a star :)

About

Chatbot for performing MySQL queries powered by AI using LM Studio as a local API

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages