Optimización de la Generación de SQL con Twilio a través de Modelado de Datos en Looker Potenciado por Amazon Bedrock

Las principales empresas de hoy en día confían en la Plataforma de Compromiso con el Cliente (CEP) de Twilio para construir relaciones directas y personalizadas con sus clientes en todo el mundo. Twilio permite a las compañías utilizar comunicaciones y datos para añadir inteligencia y seguridad en cada paso del viaje del cliente, desde ventas y marketing hasta crecimiento, servicio al cliente y muchos más casos de uso de compromiso, de manera flexible y programática. A lo largo de 180 países, millones de desarrolladores y cientos de miles de empresas usan Twilio para crear experiencias personalizadas para sus clientes.

Como uno de los mayores clientes de AWS, Twilio utiliza servicios de datos, inteligencia artificial (IA) y aprendizaje automático (ML) para manejar sus cargas diarias de trabajo. Los datos son una capa fundamental para todas las aplicaciones de IA y ML generativas, y administrar y recuperar la información correcta puede ser complejo, especialmente para analistas de datos que trabajan con grandes lagos de datos y consultas SQL complejas. En respuesta a este desafío, Twilio se ha asociado con AWS para desarrollar un asistente virtual que ayuda a sus analistas de datos a encontrar y recuperar datos relevantes del lago de datos de Twilio, transformando preguntas de usuario en lenguaje natural en consultas SQL.

Este asistente virtual utiliza Amazon Bedrock, un servicio de IA generativa completamente gestionado que proporciona acceso a modelos fundamentales de alto rendimiento y capacidades como la Generación Aumentada por Recuperación (RAG). RAG optimiza las respuestas de los modelos de lenguaje generando salidas adaptadas a dominios específicos o datos internos de una organización para brindar respuestas más personalizadas.

Twilio quería facilitar la búsqueda de datos en su lago de datos para sus analistas y decidió utilizar la capa de metadatos sobre su lago de datos, consistente en vistas y modelos de su herramienta de informes de datos, Looker, como la fuente de verdad. Looker es una plataforma empresarial que permite a los analistas de datos explorar y compartir insights en tiempo real de manera efectiva.

Para lograr esto, Twilio implementó RAG utilizando Anthropic Claude 3 en Amazon Bedrock, desarrollando una herramienta llamada AskData. Esta herramienta convierte preguntas formuladas en lenguaje natural en consultas SQL, utilizando la información de los esquemas disponibles en los modelos y vistas de LookML, permitiendo a los analistas ejecutar directamente estas consultas SQL. Esta funcionalidad brinda a los analistas un acceso rápido a la información necesaria, ahorrándoles tiempo y reduciendo la dependencia en los ingenieros de soporte para resolver dudas de datos.

AskData no solo mejora la eficiencia y la precisión en la búsqueda de datos, sino que también mejora la experiencia del usuario al minimizar el tiempo invertido en tareas logísticas. Tradicionalmente, los analistas dependían del soporte de ingeniería para resolver problemas de acceso a datos complejos. Con el asistente de IA, este tiempo se reduce significativamente, proporcionando respuestas más rápidas y precisas.

La solución implementada implica la realización de una búsqueda semántica en los metadatos de LookML para recuperar las tablas y vistas relevantes, utilizando modelos en Amazon Bedrock para generar consultas SQL precisas basadas en esa información. Además, se desarrolló una aplicación web utilizando LangChain y Streamlit, lo cual permitió una integración efectiva de las herramientas y métodos disponibles.

El proceso de desarrollo se facilitó mediante varios servicios de AWS, especialmente Amazon Bedrock, que permitió la integración de modelos de lenguaje para responder consultas y Amazon RDS, que funcionó como tienda vectorial. Para implementar esta solución, es necesario poseer una cuenta de AWS, acceso a modelos en Amazon Bedrock, y familiaridad con tecnologías como DynamoDB, Amazon RDS y Amazon S3.

El desarrollo de la aplicación web se realizó utilizando LangChain y Streamlit. LangChain simplificó la creación de aplicaciones con LLMs mientras que Streamlit permitió el desarrollo del frontend. La implementación de un engine de chat utilizando DynamoDB para almacenar el historial de chat mejoró notablemente la interacción y fiabilidad del sistema. Además, se incorporaron ajustes y retroalimentación del usuario para asegurar la precisión y minimizar errores en las consultas.

En resumen, este proyecto demuestra cómo la IA generativa puede mejorar significativamente la eficiencia de los analistas de datos, utilizando almacenes vectoriales para vistas y modelos en el marco de RAG para recuperar información pertinente y proporcionar contexto al LLM, generando consultas SQL de manera eficiente y precisa.

Mariana G.
Mariana G.
Mariana G. es una periodista europea y editora de noticias de actualidad en Madrid, España, y el mundo. Con más de 15 años de experiencia en el campo, se especializa en cubrir eventos de relevancia local e internacional, ofreciendo análisis profundos y reportajes detallados. Su trabajo diario incluye la supervisión de la redacción, la selección de temas de interés, y la edición de artículos para asegurar la máxima calidad informativa. Mariana es conocida por su enfoque riguroso y su capacidad para comunicar noticias complejas de manera clara y accesible para una audiencia diversa.

Más popular

Más artículos como este
Relacionados

Trump Impone Aranceles Globales del 10% y del 20% a Productos de la UE: ‘Nos Han Despojado’

El presidente de Estados Unidos, Donald Trump, ha puesto...

7 Plantas de Interior que Perfuman y Transforman tu Hogar con su Aroma Envolvente

Las plantas de interior han vuelto a ganar protagonismo...
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.