Saltar al contenido principal

1. Arquitectura

La arquitectura comercial de LUCA está diseñada para ofrecer una plataforma modular, segura y preparada para integrar capacidades de inteligencia artificial dentro del ciclo de análisis de datos. Su diseño separa claramente las responsabilidades de acceso, autenticación, interfaz de usuario, lógica de negocio, orquestación de IA, despliegue de modelos e inferencia.

A nivel lógico, la plataforma se organiza en tres dominios principales: acceso y seguridad, aplicación e inteligencia artificial. Esta separación facilita la escalabilidad, el mantenimiento evolutivo y la adaptación de LUCA a diferentes escenarios de despliegue empresarial.

Arquitectura Figura 1.1: Arquitectura de LUCA

Componentes principales

luca-proxy actúa como punto de entrada de la plataforma. Centraliza el acceso desde el navegador de los usuarios, gestiona el enrutamiento hacia los servicios internos y permite exponer la solución de forma controlada mediante mecanismos como reverse proxy, routing y TLS.

luca-accounts proporciona la capa de identidad y control de acceso. Su función es gestionar la autenticación, la autorización y la integración con mecanismos estándar de identidad corporativa, como SSO, IAM y OIDC.

luca-web representa la interfaz web de usuario. Desde este componente, los usuarios interactúan con las funcionalidades de LUCA, incluyendo visualización, configuración, exploración de datos y acceso a capacidades analíticas.

luca-api concentra los servicios de negocio de la plataforma. Expone las operaciones principales mediante interfaces REST y coordina la comunicación entre la capa web, los servicios de seguridad, las fuentes de datos y los componentes de inteligencia artificial.

luca-ai es el componente de orquestación inteligente. Coordina los procesos relacionados con inferencia, modelos y prompts, actuando como capa intermedia entre la lógica de negocio de LUCA y los servicios especializados de inteligencia artificial.

luca-ai-client gestiona la orquestación del despliegue de modelos. Este componente facilita la preparación, configuración y disponibilidad operativa de los modelos utilizados por los servicios de inferencia.

luca-ai-inference expone el modelo LLM para inferencia. Su responsabilidad es proporcionar un punto de ejecución especializado para procesar peticiones de inteligencia artificial y devolver resultados consumibles por luca-ai y, posteriormente, por la lógica funcional de la plataforma.

Flujo funcional

El usuario accede a LUCA desde el navegador a través de luca-proxy, que enruta las peticiones hacia luca-web o luca-api según corresponda. La autenticación se delega en luca-accounts, que emite y valida los tokens necesarios para garantizar un acceso seguro.

La interfaz luca-web consume los servicios expuestos por luca-api. A su vez, luca-api concentra la lógica de negocio y coordina la comunicación con el resto de servicios internos de la plataforma.

Cuando una operación requiere capacidades de inteligencia artificial, luca-api deriva la petición hacia luca-ai. Este componente coordina la inferencia, la gestión de modelos y el uso de prompts, apoyándose en luca-ai-client para la orquestación del despliegue de modelos y en luca-ai-inference para la exposición del modelo LLM utilizado en las operaciones de inferencia.

El resultado generado por el modelo se devuelve de forma controlada hacia luca-ai, posteriormente a luca-api y finalmente a luca-web, donde queda disponible para el usuario dentro de la experiencia funcional de LUCA.

Despliegue

LUCA está preparada para desplegarse mediante contenedores, lo que facilita su instalación, portabilidad y operación en diferentes entornos corporativos. Los distintos componentes de la arquitectura —luca-proxy, luca-accounts, luca-web, luca-api, luca-ai, luca-ai-client y luca-ai-inference— pueden ejecutarse como servicios independientes, manteniendo una separación clara de responsabilidades.

En función de las necesidades del cliente y del nivel de madurez de su infraestructura, LUCA puede desplegarse bajo diferentes modelos:

Docker standalone permite una instalación sencilla en un único servidor, adecuada para entornos de demostración, pruebas, validación funcional o despliegues pequeños.

Docker Swarm permite operar LUCA como un conjunto de servicios distribuidos, incorporando capacidades de orquestación, escalado básico, gestión de redes internas y mayor resiliencia frente a despliegues mononodo.

Kubernetes ofrece un modelo de despliegue avanzado para entornos empresariales, con capacidades de alta disponibilidad, escalado horizontal, gestión declarativa de recursos, integración con observabilidad, políticas de red y automatización operativa.

Este enfoque basado en contenedores permite adaptar LUCA a escenarios on-premise, cloud privado o infraestructuras híbridas, manteniendo el control sobre los datos, la seguridad y los recursos computacionales utilizados por la plataforma.

Beneficios de la arquitectura

Esta arquitectura permite desacoplar responsabilidades críticas de la plataforma: acceso, identidad, lógica de negocio, experiencia de usuario, orquestación de inteligencia artificial, despliegue de modelos e inferencia.

Como resultado, LUCA puede evolucionar de forma modular, incorporar nuevos servicios, integrar diferentes modelos de IA y mantener un esquema de seguridad coherente con despliegues empresariales.

El uso de componentes independientes también facilita la escalabilidad selectiva. Por ejemplo, los servicios relacionados con inferencia pueden dimensionarse de forma específica según la carga computacional requerida, sin afectar necesariamente al resto de la plataforma.

Además, el enfoque modular y contenerizado facilita despliegues on-premise, en cloud privado o en infraestructuras híbridas, preservando el gobierno sobre los datos y alineándose con escenarios corporativos donde la seguridad, la trazabilidad y el control operativo son requisitos fundamentales.