Crear una solución de texto a SQL utilizando Amazon Bedrock puede aliviar uno de los cuellos de botella más persistentes en las organizaciones basadas en datos: la demora entre formular una pregunta comercial y obtener una respuesta clara respaldada por datos. Es posible que esté familiarizado con el desafío de navegar por prioridades en competencia cuando su pregunta única está esperando en la cola detrás de un trabajo de mayor impacto. Una solución de texto a SQL aumenta su equipo existente: los usuarios empresariales responden por sí mismos preguntas analíticas de rutina, liberando capacidad técnica en toda la organización para iniciativas complejas y de alto valor. Preguntas como "¿Cuál es el crecimiento de nuestros ingresos año tras año por segmento de clientes?" sean accesibles para todos, sin crear una carga de trabajo adicional para los equipos técnicos.
Muchas organizaciones descubren que el acceso a información valiosa sobre los datos sigue siendo un obstáculo importante en los procesos de toma de decisiones empresariales. El enfoque tradicional requiere aprender la sintaxis SQL, esperar recursos técnicos o conformarse con paneles prediseñados que podrían no responder a sus preguntas específicas.
En esta publicación, le mostramos cómo crear una solución natural de texto a SQL utilizando Amazon Bedrock que transforma las preguntas comerciales en consultas de bases de datos y proporciona respuestas prácticas. El modelo devuelve no sólo SQL sin procesar, sino también resultados ejecutados sintetizados en narrativas claras y en lenguaje natural en segundos en lugar de horas. Lo guiamos a través de la arquitectura, las estrategias de implementación y las lecciones aprendidas al implementar esta solución a escala. Al final, comprenderá cómo crear su propio sistema de texto a SQL que cierre la brecha entre las preguntas comerciales y la accesibilidad a los datos.
Por qué la inteligencia empresarial tradicional se queda corta
Vale la pena señalar que herramientas como Amazon Quick ya abordan muchas necesidades de análisis de autoservicio de manera efectiva, incluidas las consultas en lenguaje natural de paneles y la generación automatizada de información. Estas herramientas son una excelente opción cuando sus requisitos de análisis se alinean con paneles estructurados, conjuntos de datos seleccionados y flujos de trabajo de informes gobernados. Una solución personalizada de texto a SQL se vuelve valiosa cuando los usuarios deben realizar consultas a través de esquemas complejos de múltiples tablas con una lógica empresarial organizacional profunda, terminología específica del dominio y preguntas únicas más allá de lo que admiten los conjuntos de datos de paneles preconfigurados.
La creación de una solución de texto a SQL plantea tres desafíos fundamentales que impulsan la necesidad de ir más allá de las herramientas tradicionales de Business Intelligence (BI):
La barrera de la experiencia en SQL bloquea el análisis rápido. La mayoría de los usuarios empresariales carecen del conocimiento técnico de SQL necesario para acceder a datos complejos. Las preguntas simples a menudo requieren uniones de varias tablas, cálculos temporales y agregaciones jerárquicas. Esta dependencia crea cuellos de botella donde los usuarios empresariales esperan períodos prolongados para obtener informes personalizados, mientras que los analistas dedican tiempo valioso a solicitudes de consultas repetitivas en lugar de análisis estratégicos. Incluso los sistemas de BI modernos tienen límites de flexibilidad. Las herramientas de BI modernas han logrado avances significativos en las consultas en lenguaje natural y el análisis de autoservicio. Sin embargo, estas capacidades normalmente funcionan mejor dentro de capas semánticas previamente seleccionadas, conjuntos de datos gobernados o paneles de control previamente modelados. Cuando los usuarios empresariales necesitan explorar más allá de los límites seleccionados, las uniones únicas, los cálculos específicos de la organización sobre la marcha o consultar tablas de almacén sin procesar fuera de la capa semántica, aún enfrentan limitaciones que requieren intervención técnica. Una solución personalizada de texto a SQL llena este vacío operando directamente contra su esquema de almacén de datos con un contexto empresarial recuperado dinámicamente, en lugar de depender de modelos semánticos preconfigurados. El contexto y la comprensión semántica crean lagunas en la traducción. Incluso con acceso SQL, traducir la terminología empresarial en consultas correctas a la base de datos resulta un desafío. Términos como logro, canalización y pronóstico tienen cada uno una lógica de cálculo única, requisitos de fuente de datos específicos y reglas comerciales que varían según la organización. Comprender a qué tablas unirse, cómo se definen las métricas y qué filtros aplicar requiere un conocimiento institucional profundo al que no es fácilmente accesible para la mayoría de los usuarios.
Al crear su propia solución, considere cómo su sistema codificará este contexto empresarial profundo (principios estratégicos, reglas de segmentación de clientes y procesos operativos), para que los usuarios puedan tomar decisiones más rápidas basadas en datos sin comprender esquemas complejos de bases de datos o sintaxis SQL.
Cómo funciona: la experiencia
Antes de sumergirnos en la arquitectura, así es como se ve la experiencia desde la perspectiva del usuario.
Un usuario empresarial ingresa una pregunta en una interfaz conversacional que plantea algo como: "¿Cuál es la tendencia de los ingresos este año en comparación con el año pasado en nuestros principales segmentos de clientes?" Detrás de escena, el sistema hace lo siguiente en cuestión de segundos:
Entiende la pregunta. Determina si se trata de una búsqueda de un solo paso o de una pregunta compleja que debe dividirse en partes. En este caso, reconoce que las “tendencias de ingresos”, la “comparación año tras año” y los “segmentos de clientes principales” requieren pasos distintos de recuperación de datos. Recupera el contexto empresarial. El sistema busca un gráfico de conocimiento que codifica las definiciones de métricas, terminología empresarial, relaciones de tablas y reglas de datos específicas de su organización. Sabe qué significan los ingresos en su entorno, qué tablas los contienen y cómo se define el segmento de clientes. Genera y valida SQL. El sistema produce una consulta SQL estructurada, la valida para determinar su exactitud y seguridad mediante comprobaciones deterministas y la ejecuta en su almacén de datos. Si la validación detecta un problema, lo revisa y vuelve a intentar automáticamente sin requerir intervención humana. Sintetiza la respuesta. Los resultados de las consultas sin procesar se traducen nuevamente a una narrativa en lenguaje natural con datos de respaldo, lo que brinda a los usuarios la información y la transparencia para confiar en ellos.
El resultado es que los usuarios empresariales obtienen respuestas a preguntas analíticas complejas en cuestión de segundos o minutos, con visibilidad total de la lógica subyacente. Los analistas se liberan del trabajo de consultas repetitivas para centrarse en análisis estratégicos de mayor valor.
Descripción general de la solución
Para ofrecer esta experiencia, la solución combina tres capacidades principales:
Modelos básicos (FM) en Amazon Bedrock para la comprensión del lenguaje natural y la generación de SQL. Generación aumentada de recuperación de gráficos (GraphRAG) para la recuperación de contexto empresarial. Almacenes de datos de alto rendimiento para una ejecución rápida de consultas.
Amazon Bedrock desempeña un papel central en esta arquitectura al proporcionar tanto la capa de inferencia del modelo de lenguaje grande (LLM) como el tiempo de ejecución de orquestación del agente. Amazon Bedrock ofrece acceso a una amplia selección de FM, para que los equipos puedan elegir e intercambiar modelos según los requisitos cambiantes de rendimiento, costo y latencia sin tener que volver a diseñar el sistema.
Como se muestra en el diagrama de arquitectura,
Amazon Bedrock AgentCore Runtime actúa como capa de orquestación central y aloja un agente supervisor que coordina el flujo de trabajo de un extremo a otro. Enruta las preguntas de los usuarios, invoca la herramienta de búsqueda GraphRAG para la recuperación de contexto, aplica la seguridad a nivel de fila, activa la generación y validación de SQL y ejecuta consultas en una base de datos (Amazon Redshift). El tiempo de ejecución admite múltiples puntos de entrada, incluidos los protocolos MCP y HTTP, lo que permite la integración con superficies de análisis integradas como AWS Quick Sight e interfaces web personalizadas. Amazon Bedrock AgentCore también proporciona observabilidad integrada, alimentando seguimientos de ejecución de agentes y métricas de rendimiento en Amazon CloudWatch para monitoreo, depuración y optimización continua. Este tiempo de ejecución administrado alivia el trabajo pesado e indiferenciado de crear una infraestructura de agentes personalizada, de modo que los equipos puedan centrarse en la lógica empresarial, el ajuste rápido y el enriquecimiento del conocimiento del dominio.
El siguiente diagrama ilustra cómo funciona este flujo de trabajo:
La arquitectura opera como un sistema multiagente orquestado con cinco etapas clave:
Etapa 1: Análisis y descomposición de preguntas.
Cuando llega una pregunta, el procesador de preguntas primero la clasifica. Preguntas sencillas, atómicas y basadas en hechos como "¿Cuáles fueron los ingresos totales en el cuarto trimestre?", se dirigen directamente al proceso de recuperación de datos. Las preguntas complejas o de varias partes se descomponen en subpreguntas independientes y autónomas que pueden ser procesadas en paralelo por equipos de agentes separados. Este paso de descomposición es lo que permite al sistema manejar preguntas analíticas sofisticadas que abarcan múltiples dominios de datos, períodos de tiempo o dimensiones comerciales.
Etapa 2: gráfico de conocimiento y recuperación de contexto GraphRAG
Aquí es donde el sistema resuelve la barrera del contexto y es el diferenciador más crítico de los enfoques ingenuos de texto a SQL.
Un gráfico de conocimiento creado en Amazon Neptune y Amazon OpenSearch Service sirve como base semántica. Almacena la ontología de tablas de su organización y captura las relaciones entre entidades comerciales, métricas, terminología y jerarquías organizativas. Fundamentalmente, este gráfico se enriquece con el conocimiento del dominio de los propietarios de tablas y expertos en la materia para descripciones específicas de negocios, definiciones de métricas, asignaciones de terminología y etiquetas de clasificación cargadas desde archivos de configuración estructurados.
Cuando el sistema procesa una pregunta, realiza una búsqueda GraphRAG ligera que funciona en tres fases:
Búsqueda vectorial (mediante Amazon OpenSearch Service): busca valores de columnas, nombres de columnas y descripciones de tablas semánticamente relevantes que coincidan con los conceptos de la pregunta del usuario. Recorrido de gráficos (con Amazon Neptune): sigue las relaciones en el gráfico de conocimiento, desde los valores coincidentes hasta sus columnas principales y sus tablas principales, para crear una imagen completa de qué activos de datos son relevantes y cómo se conectan. Puntuación y filtrado de relevancia: clasifica y estructura el contexto recuperado para que el generador SQL reciba precisamente la información que necesita, las tablas correctas, las columnas correctas, las rutas de unión correctas y la lógica de negocios correcta.
El gráfico de conocimiento y sus datos asociados se actualizan periódicamente para reflejar cambios de esquema, nuevas tablas y definiciones comerciales en evolución. Cuanto más rica sea esta capa contextual, más precisa será la generación de SQL posterior.
Etapa 3: generación y validación de SQL estructurado
El sistema utiliza las capacidades de llamada de funciones de Amazon Bedrock para generar consultas SQL como datos estructurados. Esto impone formatos de salida estrictos, alivia la necesidad de un posprocesamiento frágil o expresiones regulares complejas y mejora significativamente la confiabilidad.
Las consultas generadas luego pasan a través de validadores SQL deterministas que operan en el nivel del árbol de sintaxis abstracta (AST). Estos validadores señalan de forma proactiva operaciones potencialmente riesgosas, consultas que son sintácticamente correctas pero semánticamente peligrosas (por ejemplo, análisis ilimitados, filtros faltantes, lógica de agregación incorrecta). Cuando un validador señala un problema, devuelve comentarios detallados que explican el problema y sugieren una revisión.
Para mejorar aún más la solidez, todo el ciclo está incluido en un agente de generación de SQL liviano que se itera automáticamente hasta que produce una consulta ejecutable válida o agota un límite de reintentos configurable. Este enfoque tiene como objetivo ofrecer una confiabilidad significativamente mayor que la ingeniería rápida por sí sola.
Etapa 4: Computación paralela en tiempo de prueba
Para preguntas ambiguas o complejas, el sistema puede generar múltiples respuestas potenciales o rutas de razonamiento simultáneamente al enviar la misma pregunta a agentes paralelos. Los resultados se sintetizan mediante votación mayoritaria, seleccionando el resultado más fiable. Esto es particularmente valioso para preguntas que pueden interpretarse de múltiples maneras y mejora significativamente tanto la precisión como la solidez.
Etapa 5: Síntesis de respuesta
Finalmente, los resultados de las consultas sin procesar, incluidos números, marcos de datos y registros de ejecución, se sintetizan en narrativas en lenguaje natural que los usuarios reciben como respuestas procesables. Se mantiene la transparencia total de las consultas: los usuarios pueden inspeccionar el SQL generado y los datos subyacentes en cualquier momento, generando confianza en los resultados del sistema.
Estrategias clave para resultados de calidad de producción
La arquitectura por sí sola no es suficiente. Las siguientes estrategias, aprendidas al implementar esta solución a escala, son esenciales para lograr la precisión, seguridad y capacidad de respuesta que exige el uso de producción.
Deje que los usuarios finales den forma a las indicaciones
Incluso entre los usuarios experimentados, los individuos suelen tener diferentes interpretaciones predeterminadas de términos ambiguos y diferentes expectativas con respecto a las respuestas a preguntas vagas. Recomendamos crear una interfaz de personalización, como una aplicación web, para que los propietarios de mesas y los usuarios avanzados designados puedan personalizar las indicaciones dentro de los límites gobernados. Las personalizaciones deben pasar por barreras de validación que hagan cumplir las políticas de contenido, restrinjan los intentos de inyección rápida y garanticen que las modificaciones se mantengan dentro de las plantillas y parámetros aprobados. Esto ayuda a evitar modificaciones de texto libre sin restricciones y al mismo tiempo incorpora el conocimiento y las preferencias del dominio en el sistema. Esta capacidad de personalización resulta esencial para lograr la comprensión matizada que requieren los diferentes dominios empresariales. Su solución debe adaptarse a estas variaciones en lugar de imponer un enfoque único para todos.
Trate la validación de SQL como una capa crítica para la seguridad
La ingeniería rápida por sí sola no puede eliminar los errores que producen SQL sintácticamente válido pero semánticamente incorrecto. Estos errores son particularmente peligrosos porque arrojan resultados aparentemente plausibles que pueden erosionar silenciosamente la confianza del usuario o impulsar decisiones incorrectas. Debido a que SQL es un lenguaje bien definido, los validadores deterministas pueden detectar una amplia clase de estos errores antes de que la consulta llegue a su base de datos. En las pruebas internas, esta capa de validación evitó efectivamente errores graves en las consultas generadas. Priorizarlo como mecanismo de seguridad innegociable.
Optimice agresivamente la latencia
Los usuarios acostumbrados a la IA conversacional esperan respuestas casi instantáneas. Si bien recuperar datos en vivo y realizar cálculos lleva inherentemente más tiempo que responder desde una base de conocimiento estática, la latencia aún debe gestionarse activamente como una preocupación de primera clase en la experiencia del usuario. El análisis de rendimiento revela que el flujo de trabajo implica varios pasos y el tiempo acumulado en esos pasos representa la mayor oportunidad en relación con el tiempo de ejecución de SQL únicamente.
Para optimizar, concéntrese en:
Ejecución paralela de agentes: procese preguntas de varias partes de forma simultánea en lugar de secuencial. Esto puede reducir drásticamente el tiempo total para consultas complejas. Almacenamiento analítico de alto rendimiento: utilice bases de datos orientadas a columnas que sobresalgan en las cargas de trabajo con mucha agregación típicas de la inteligencia empresarial. Optimización de tokens: minimice los tokens de entrada y salida por interacción del agente mediante la optimización rápida y la estandarización del formato de respuesta. Reduzca la dependencia de marcos agentes de llamadas de herramientas donde cada llamada obliga al agente a reingerir un contexto en crecimiento.
Con estas optimizaciones, en nuestra implementación, las consultas SQL simples generalmente se generan en aproximadamente 3 a 5 segundos. Los tiempos de respuesta reales variarán según factores como el rendimiento del almacén de datos, la complejidad de las consultas, la selección de modelos y el tamaño del gráfico de conocimiento. Recomendamos realizar evaluaciones comparativas con su propio entorno para establecer objetivos de latencia realistas para el análisis empresarial interactivo.
Construya seguridad y gobernanza desde el principio
Implemente la integración de seguridad a nivel de fila (RLS) para que los usuarios solo vean los datos a los que están autorizados a acceder. El sistema mantiene tablas de derechos compuestas que aplican políticas de control de acceso desde sus sistemas organizativos existentes. Cuando un usuario envía una consulta, los filtros RLS apropiados se inyectan automáticamente en el SQL generado antes de la ejecución. Son transparentes para el usuario, pero rigurosos en su aplicación. Diseñe esta capa para mantener estrictos estándares de gobernanza de datos sin agregar fricción a la experiencia del usuario.
Resultados e impacto de la implementación
Después de seguir la arquitectura y las estrategias descritas en esta publicación, una solución de texto a SQL puede ofrecer mejoras significativas en la accesibilidad de los datos y la productividad analítica:
Las mejoras en la velocidad brindan respuestas a preguntas comerciales complejas en minutos, en comparación con horas o días con los enfoques tradicionales. Las preguntas que requieren uniones de varias tablas, cálculos temporales y agregaciones jerárquicas que antes requerían un desarrollo SQL personalizado ahora son accesibles a través del lenguaje natural. La democratización analítica ayuda a los usuarios empresariales no técnicos en operaciones de ventas, planificación financiera y liderazgo ejecutivo a realizar análisis de datos sofisticados sin experiencia en SQL. Por lo general, esto reduce la carga de trabajo analítico en los equipos de ingeniería de datos, lo que les permite centrarse en iniciativas estratégicas en lugar de solicitudes de consultas repetitivas. El manejo de consultas complejas admite el análisis de ingresos multidimensional con las siguientes capacidades: segmentación automática tendencias año tras año y mes tras mes con explicaciones de variación inteligencia del cliente a niveles granulares con patrones de uso análisis de variación de pronóstico con comparaciones de objetivos evaluación comparativa interfuncional entre períodos de tiempo y unidades de negocios
Pensando en el futuro
Las soluciones de texto a SQL impulsadas por Amazon Bedrock representan un importante paso adelante para hacer que el análisis de datos sea accesible para los usuarios empresariales. La arquitectura de múltiples agentes que utiliza Amazon Bedrock Agents admite la descomposición de consultas complejas y el procesamiento paralelo, mientras que los gráficos de conocimiento brindan contexto empresarial y comprensión semántica. Juntos, estos componentes ofrecen análisis precisos, rápidos y accesibles que permiten a los usuarios empresariales tomar decisiones basadas en datos sin barreras técnicas.
A medida que crea su propia solución, considere ampliar la cobertura del gráfico de conocimiento a dominios comerciales adicionales, optimizar la latencia de respuesta a través de estrategias avanzadas de almacenamiento en caché e integrarse con más fuentes de datos empresariales. Amazon Bedrock Guardrails ofrece capacidades de seguridad y validación de salida mejoradas que vale la pena explorar, mientras que Amazon Bedrock Flows proporciona patrones de orquestación sofisticados para flujos de trabajo agentes.
La flexibilidad de FM, las capacidades de orquestación de agentes y la integración de la base de conocimientos disponibles a través de Amazon Bedrock continúan evolucionando, lo que hace que el análisis de datos sea cada vez más intuitivo y potente para los usuarios empresariales de todas las organizaciones.
Para crear su propia solución de texto a SQL, explore la Guía del usuario de Amazon Bedrock, participe en un taller de Amazon Bedrock y revise nuestra guía sobre Creación de agentes de IA generativa con Amazon Bedrock. Para conocer los últimos desarrollos, consulte Novedades de AWS.
Expresiones de gratitud
Extendemos nuestro más sincero agradecimiento a nuestros patrocinadores y mentores ejecutivos cuya visión y orientación hicieron posible esta iniciativa: Aizaz Manzar, Director de Ventas Globales de AWS; Ali Imam, jefe del segmento de startups; y Akhand Singh, jefe de ingeniería de datos.