Skip to content
Leon Achata
Todos los proyectos
Datos

SQL Agent

Hazle preguntas a cualquier base de datos SQL en lenguaje natural. Cada consulta pasa por un parser antes de ejecutarse, en solo lectura.

El problema

Los equipos de negocio esperan a un analista por cada número de la base de datos. La mayoría de demos de texto a SQL pegan un esquema fijo en el prompt y ejecutan lo que devuelva el modelo, algo que nadie debería poner frente a datos de producción.

Cómo funciona

El agente introspecciona cualquier esquema con SQLAlchemy, elige las tablas relevantes en bases grandes y escribe SQL correcto para cada dialecto con Claude. Cada consulta pasa por un guard sobre el AST con sqlglot (una sola sentencia de lectura, solo tablas conocidas, sin funciones peligrosas, límite de filas) y luego corre en una transacción de solo lectura con timeout. Los errores vuelven al modelo para que repare su propia consulta, y cada paso se transmite en vivo a una interfaz en Next.js.

Pipeline

  1. 01Planificar
  2. 02Elegir tablas
  3. 03Escribir SQL
  4. 04Guard AST
  5. 05Ejecutar (lectura)
  6. 06Respuesta + gráfico

Dónde se usa

  • Analítica de autoservicio para equipos de ventas, finanzas y operaciones
  • Dashboards internos donde se repregunta en lenguaje natural
  • Acceso seguro a bases de producción para personal no técnico

Puntos clave

  • Funciona con PostgreSQL, MySQL y SQLite sin esquemas escritos a mano
  • Defensa en profundidad: guard sobre el AST, ejecución de solo lectura, rol de mínimo privilegio, enmascarado de datos personales
  • Pregunta antes de adivinar cuando el pedido es ambiguo
  • Benchmark de exactitud de ejecución contra SQL de referencia; mypy --strict y más de 40 tests

Stack

LangGraphClaudesqlglotSQLAlchemyFastAPINext.js

¿Quieres algo así para tu empresa?

Construyo versiones de producción de estos sistemas sobre tus datos y tu infraestructura.

Servicio relacionado: Habla con tus datos

Contáctame