MindsDB es una plataforma de código abierto desarrollada para permitir el aprendizaje automático, el análisis de series temporales y la integración de grandes modelos de lenguaje directamente en los flujos de trabajo tradicionales de bases de datos. La plataforma permite poner la funcionalidad de IA al alcance mediante consultas SQL sencillas, sin que sea necesaria una infraestructura de machine learning por separado.

En esta entrada se presenta una de las múltiples funciones de MindsDB: la invocación de un gran modelo de lenguaje (GPT-4) a través de una plantilla predefinida que se rellena dinámicamente con valores de la base de datos. El objetivo es evaluar automáticamente la carga emocional de canciones de un conjunto de datos de Spotify existente. Para ello, se utiliza únicamente una parte del conjunto de funcionalidades de MindsDB, con el fin de conocer el funcionamiento básico y la interacción entre la base de datos y el LLM.

La introducción a MindsDB es sencilla. Con Docker, la plataforma puede iniciarse localmente en cuestión de segundos. El siguiente comando inicia MindsDB en segundo plano, abre los puertos necesarios para la API y la interfaz de Studio, y crea un volumen para almacenar datos y configuraciones de manera permanente:

Tras el inicio, la interfaz web está disponible en http://localhost:47335. Allí se pueden subir archivos, definir modelos o plantillas y ejecutar consultas SQL. Para el siguiente caso de uso se emplea el conjunto de datos “200k Spotify Songs Light”, disponible en kaggle.com. El conjunto de datos contiene más de 200.000 canciones de Spotify con características como título de la canción, emoción, tempo, variabilidad y otros parámetros musicales.

El objetivo es que un Large Language Model como GPT-4 evalúe la carga emocional de una canción – basándose en parámetros numéricos como emoción, tempo y varianza. Para ello, en MindsDB se define un modelo que invoca a GPT-4 mediante una plantilla de prompt. Los valores de la base de datos se insertan automáticamente en el prompt:

Esta instrucción no crea un modelo de IA en el sentido clásico, sino que genera (localmente) una plantilla reutilizable para la comunicación con GPT-4. Solo cuando se ejecuta una consulta SQL concreta, en la que se insertan valores reales en el prompt, se envía la petición a GPT-4.

Un ejemplo de una petición de este tipo es el siguiente:

La respuesta que devuelve GPT-4 es la siguiente:

Este flujo de trabajo muestra de manera ejemplar cómo se pueden combinar datos numéricos de tablas clásicas con evaluaciones semánticas. Sin gestión de prompts separada, scripting de API ni herramientas externas, GPT-4 se invoca directamente mediante SQL e integra en flujos de trabajo analíticos.

Otras funciones de MindsDB

MindsDB ofrece mucho más que la simple integración de LLMs. En muchos casos de uso, la plataforma sirve para aplicar modelos clásicos de aprendizaje automático a datos estructurados, realizar predicciones o automatizar análisis complejos.

Los modelos clásicos de predicción se pueden crear directamente desde SQL. Algunos ejemplos son la predicción de la pérdida de clientes (Churn Prediction), la estimación de precios de alquiler o de bienes inmuebles, o la previsión de cifras de ventas y datos meteorológicos. Esto ocurre completamente dentro del entorno de la base de datos y sin infraestructuras de ML separadas.

Otro gran ámbito es el análisis de series temporales. MindsDB permite la predicción de valores dependientes del tiempo, como el consumo energético, la demanda de productos o el estado de máquinas. De este modo, se pueden detectar tendencias con antelación y planificar mejor las capacidades.

Además, MindsDB admite la integración de grandes modelos de lenguaje como GPT-4, Claude o Mistral. Estos se pueden emplear para tareas como resúmenes de texto, análisis de sentimiento, clasificaciones o traducciones. También es posible realizar análisis de impacto emocional, como en el ejemplo descrito aquí.

MindsDB también es capaz de detectar anomalías en grandes volúmenes de datos. El sistema es adecuado para la detección de fraudes, el aseguramiento de la calidad en procesos de producción o la supervisión de sistemas de TI.

También se pueden desarrollar sistemas de recomendación con MindsDB. A partir de historiales de uso o de compras, se pueden crear modelos que generen recomendaciones de productos personalizadas.

Por último, MindsDB ofrece la posibilidad de integrar modelos propios de aprendizaje automático. Con la función „Bring Your Own Model“ se pueden incorporar modelos entrenados por uno mismo, por ejemplo desde PyTorch o TensorFlow, y utilizarlos a través de la misma interfaz SQL.