¿Te imaginas preguntar a tu base de datos "¿Cuántos pedidos tenemos para mañana?" y obtener la respuesta sin escribir una sola línea de SQL?
Esto ya es posible combinando Laravel con la API de OpenAI. En este artículo te explico el concepto y cómo funciona a alto nivel.
¿Qué problema resuelve?
Escribir consultas SQL requiere conocer la estructura de la base de datos, dominar la sintaxis SQL y entender JOINs, agregaciones, funciones de fecha...
Con un asistente de lenguaje natural, cualquier persona del equipo puede obtener datos sin depender de un desarrollador para cada consulta.
¿Cómo funciona?
El flujo es simple:
El usuario hace una pregunta en español: "¿Cuántos usuarios se registraron este mes?"
El sistema lee el esquema de la base de datos automáticamente (tablas, columnas, relaciones)
OpenAI genera la consulta SQL basándose en el esquema y la pregunta
Laravel ejecuta la consulta y devuelve los resultados
Pregunta: "¿Cuántos pedidos tenemos programados para mañana?"
↓
SQL generado: SELECT COUNT(*) FROM orders WHERE delivery_date = CURDATE() + INTERVAL 1 DAY
↓
Resultado: 47Ejemplo real de uso
Con un comando Artisan personalizado:
php artisan db:ask "¿Quién es el usuario que más pedidos ha realizado?"Salida:
Consulta SQL generada:
SELECT users.name, COUNT(orders.id) as order_count
FROM users
JOIN orders ON users.id = orders.user_id
GROUP BY users.id
ORDER BY order_count DESC
LIMIT 1
Resultado:
{
"name": "María García",
"order_count": 156
}
Consulta ejecutada en 0.34 segundosComponentes clave de la arquitectura
Para construir este sistema necesitas tres piezas fundamentales.
1. Lector de esquema dinámico
Un servicio que extraiga automáticamente la estructura de tu base de datos: nombres de tablas, columnas con sus tipos, y claves foráneas. Esto permite que el asistente funcione con cualquier base de datos sin configuración manual.
2. Prompt engineering específico para SQL
No basta con enviar la pregunta a OpenAI. Necesitas un prompt que incluya el esquema completo de la base de datos, especifique el motor SQL (MySQL, PostgreSQL...), proporcione ejemplos de preguntas y sus consultas correspondientes, y restrinja funciones incompatibles con tu motor.
3. Ejecución segura
La consulta generada debe ejecutarse de forma controlada, evitando operaciones destructivas (INSERT, UPDATE, DELETE) a menos que se permitan explícitamente.
Casos de uso prácticos
Este patrón es especialmente útil para equipos de operaciones que necesitan datos sin molestar a desarrollo, dashboards internos con consultas dinámicas, reportes ad-hoc que cambian frecuentemente, y prototipado rápido de funcionalidades de análisis.
Consideraciones importantes
¿Qué modelo usar?
En enero de 2026, OpenAI ofrece varias opciones interesantes para este caso de uso:
GPT-5 es el modelo flagship actual con un coste de $1.25 por millón de tokens de entrada y $10 por millón de tokens de salida. Ofrece mejor precisión en generación de SQL y menor tasa de errores que sus predecesores.
GPT-5-mini es una alternativa más económica que funciona bien para consultas SQL simples y medianas, ideal si el volumen de consultas es alto.
GPT-4o sigue disponible a $2.50/$10 por millón de tokens (entrada/salida). Curiosamente, GPT-5 tiene el input más barato, por lo que para nuevos proyectos tiene más sentido usar GPT-5 directamente.
Para este caso de uso específico, donde el prompt incluye el esquema de la base de datos (muchos tokens de entrada) y la respuesta es una consulta SQL corta (pocos tokens de salida), GPT-5 resulta más económico que GPT-4o.
Costes reales
Una consulta típica consume aproximadamente 1,500-3,000 tokens de entrada (esquema + pregunta + ejemplos) y 50-200 tokens de salida (la consulta SQL). Con GPT-5, esto supone entre $0.002 y $0.005 por consulta. Para uso interno ocasional es prácticamente gratuito.
Precisión
GPT-5 genera consultas muy precisas, pero no es infalible. Para consultas críticas, siempre revisa el SQL generado antes de confiar en los resultados.
Seguridad
Nunca expongas este tipo de sistema a usuarios no autenticados. El asistente tiene acceso de lectura a toda la base de datos.
¿Quieres implementarlo paso a paso?
En mi curso Laravel Ask Database construimos este sistema completo desde cero: el servicio que lee el esquema dinámicamente, el prompt engineering optimizado para MySQL, el comando Artisan personalizado, técnicas para mejorar la precisión de las consultas, y manejo de errores y casos edge.
La combinación de Laravel con inteligencia artificial abre posibilidades que hace unos años parecían ciencia ficción. Este es solo el principio.
Curso Laravel 12
Completo 2026
El único curso 100% actualizado que incluye Laravel 12, Livewire 3, Vue 3, React 19 e Inertia 2. Aprende con proyectos reales y las últimas funcionalidades.
star Incluido en cualquier suscripción