AI 11 min

Fundamentos de IA Generativa para Ingenieros y Seguridad

Un recorrido riguroso por la evolución de la Inteligencia Artificial: desde el Test de Turing y los sistemas expertos hasta el Deep Learning, las redes generativas y su impacto en la ciberseguridad.

Escrito por Samir El Azem Crovetto • Senior Backend Engineer & DevSecOps

La Evolución del Aprendizaje Automático: Del Análisis Discriminativo a la Síntesis Generativa

Durante décadas, el aprendizaje automático (Machine Learning) estuvo dominado por modelos predictivos discriminativos: algoritmos diseñados para clasificar datos o predecir variables numéricas a partir de vectores de características tabulares. Modelos como la regresión logística, los árboles de decisión (Random Forest, XGBoost) o las máquinas de soporte vectorial (SVM) calculaban fronteras de decisión con la fórmula $P(Y|X)$, estimando la probabilidad de una etiqueta $Y$ dado un conjunto de entradas $X$.

Aunque el auge de las redes neuronales profundas (Deep Learning) permitió procesar datos no estructurados —redes convolucionales (CNN) para visión artificial y redes recurrentes (RNN, LSTM) para análisis de series temporales y texto—, la computación se enfrentaba a una limitación arquitectónica insalvable: la incapacidad de escalar el entrenamiento paralelo sobre grandes corpus de información. Las arquitecturas recurrentes procesaban los datos token a token de forma estrictamente secuencial, sufriendo problemas de desvanecimiento de gradiente (vanishing gradient) y olvidando dependencias a largo plazo en textos extensos.

La ruptura de este paradigma se produjo con la introducción de la arquitectura Transformer (Vaswani et al., "Attention Is All You Need"). Al prescindir de la recurrencia y sustituirla por mecanismos de autoatención paralelizables sobre hardware GPU, la inteligencia artificial pasó de predecir categorías discretas a modelar la distribución de probabilidad conjunta del lenguaje humano $P(X)$, dando origen a la IA Generativa.


La Arquitectura Transformer: El Motor Cripto-Matemático de los LLMs

En el núcleo de cualquier modelo de lenguaje moderno (GPT-4o, Llama 3, Claude 3.5, Mistral) reside un modelo Transformer autoregresivo (Decoder-only). Su funcionamiento se articula en tres etapas matemáticas fundamentales:

graph TD
    subgraph Input_Processing ["🔤 Procesamiento de Entrada"]
        RawText["Texto en Bruto: 'Auditar API'"]
        Tokenizer["Tokenizador BPE / WordPiece"]
        Tokens["IDs de Tokens: [12450, 4819]"]
        EmbeddingLookup["Embedding Lookup Table (d_model = 4096)"]
        PositionalEncoding["Codificación Posicional (RoPE)"]
    end

    subgraph Transformer_Layer ["⚙️ Bloque Transformer Decoder (xN capas)"]
        RMSNorm1["Normalización RMSNorm / LayerNorm"]
        MultiHeadAttention["Multi-Head Self-Attention (Masked)"]
        Residual1["Conexión Residual (+)"]
        RMSNorm2["Normalización RMSNorm"]
        FeedForward["Red Feed-Forward (SwiGLU / MLP)"]
        Residual2["Conexión Residual (+)"]
    end

    subgraph Output_Head ["🎯 Generación Autoregresiva"]
        FinalNorm["Normalización Final"]
        LinearLogits["Capa Lineal (Proyección al Vocabulario)"]
        Softmax["Softmax con Temperatura (T)"]
        NextToken["Muestreo de Siguiente Token (Top-P / Min-P)"]
    end

    RawText --> Tokenizer
    Tokenizer --> Tokens
    Tokens --> EmbeddingLookup
    EmbeddingLookup --> PositionalEncoding
    PositionalEncoding --> RMSNorm1
    RMSNorm1 --> MultiHeadAttention
    MultiHeadAttention --> Residual1
    PositionalEncoding -.->|Skip Connection| Residual1
    Residual1 --> RMSNorm2
    RMSNorm2 --> FeedForward
    FeedForward --> Residual2
    Residual1 -.->|Skip Connection| Residual2
    Residual2 --> FinalNorm
    FinalNorm --> LinearLogits
    LinearLogits --> Softmax
    Softmax --> NextToken
    NextToken -.->|Autoregresión: Feedback al Input| RawText

    classDef input fill:#e1f5fe,stroke:#0288d1,stroke-width:2px;
    classDef layer fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px;
    classDef output fill:#e8f5e9,stroke:#388e3c,stroke-width:2px;

    class RawText,Tokenizer,Tokens,EmbeddingLookup,PositionalEncoding input;
    class RMSNorm1,MultiHeadAttention,Residual1,RMSNorm2,FeedForward,Residual2 layer;
    class FinalNorm,LinearLogits,Softmax,NextToken output;

1. Mecanismo de Autoatención Escalar Multi-Cabeza (Multi-Head Attention)

Para cada token de la secuencia, el modelo proyecta su vector de embedding en tres espacios vectoriales distintos mediante matrices de pesos entrenables:

  • Query ($Q$): Lo que el token actual está "buscando".
  • Key ($K$): La "etiqueta descriptiva" que cada token ofrece a los demás.
  • Value ($V$): La información semántica real que el token aportará si es seleccionado.

La atención se calcula mediante la fórmula de producto escalar escalado:

$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$

El factor $\sqrt{d_k}$ evita que el producto escalar crezca excesivamente en dimensiones altas, impidiendo que el gradiente de la función softmax se sature. En los modelos Decoder-only, se aplica una máscara causal triangular para impedir que un token "vea" tokens situados en posiciones futuras, garantizando la naturaleza estrictamente autoregresiva de la generación.

2. Codificación Posicional Rotacional (RoPE - Rotary Position Embedding)

Dado que la multiplicación matricial en el mecanismo de atención es invariante a la permutación (carece de noción de orden de palabras), se requiere inyectar información posicional. Las arquitecturas modernas (Llama, Gemma, Qwen) emplean RoPE, una técnica que rota los vectores de Query y Key en el plano complejo en función de su distancia relativa:

$\langle R{\Theta, m} q, R{\Theta, n} k \rangle = g(q, k, m - n)$

RoPE permite que el modelo extrapole contextos mucho mayores a los vistos durante el entrenamiento original, habilitando ventanas de contexto de 128k a 1M tokens sin degradación semántica.


Espacio Latente, Embeddings y Representación Vectorial

Para que un modelo de lenguaje o un motor de búsqueda vectorial procese texto, este debe ser fragmentado en unidades atómicas (tokens) mediante algoritmos estadísticos como Byte-Pair Encoding (BPE), tal como analizamos en detalle en el laboratorio práctico sobre prompts y tokens.

Cada token se mapea a un vector denso continuo dentro de un espacio de alta dimensionalidad (por ejemplo, 4.096 dimensiones en Llama 3 8B o 1.536 en los modelos text-embedding-3 de OpenAI). En este espacio geométrico latente:

  • Las palabras o conceptos semánticamente afines se sitúan a distancias euclidianas cortas o forman ángulos pequeños (alta similitud coseno).
  • Se preservan propiedades algebraicas semánticas (la clásica analogía vectorial: $\vec{v}{\text{Rey}} - \vec{v}{\text{Hombre}} + \vec{v}{\text{Mujer}} \approx \vec{v}{\text{Reina}}$).
import numpy as np

def cosine_similarity(v1: np.ndarray, v2: np.ndarray) -> float:
    """Calcula la similitud coseno entre dos vectores normalizados."""
    dot_product = np.dot(v1, v2)
    norm_v1 = np.linalg.norm(v1)
    norm_v2 = np.linalg.norm(v2)
    return float(dot_product / (norm_v1 * norm_v2))

Esta representación vectorial constituye la piedra angular no solo de la generación de texto, sino de los sistemas de recuperación de información empresarial que analizamos en la arquitectura de bases de datos vectoriales y RAG.


De Modelos Unimodales a la Revolución Multimodal

La inteligencia artificial moderna ha trascendido el procesamiento exclusivo de texto. Los Modelos Fundacionales Multimodales (Vision-Language Models o VLMs) unifican la percepción visual, el audio y el lenguaje natural dentro de un mismo espacio latente compartido.

Arquitectura de Fusión Multimodal (Vision-Language Alignment):

  1. Vision Transformer (ViT): La imagen de entrada no se procesa mediante capas convolucionales clásicas, sino que se divide en una cuadrícula fija de parches discretos (por ejemplo, parches de 14x14 píxeles). Cada parche se proyecta linealmente como si fuera un token de texto y se le añade codificación posicional 2D.
  2. Proyector de Adaptación Multimodal: Una capa lineal o un módulo de atención cruzada (Cross-Attention) alinea los vectores de salida del encoder visual con el espacio de dimensiones del decoder del modelo de lenguaje.
  3. Decodificación Unificada: El LLM procesa los parches visuales intercalados con los tokens de texto ordinarios de forma nativa, permitiendo tareas de razonamiento sobre diagramas arquitectónicos, logs visuales o capturas de pantalla de terminales.
graph LR
    subgraph Image_Input ["🖼️ Flujo Visual"]
        Img["Imagen de Entrada"] --> PatchSplit["División en Parches (14x14)"]
        PatchSplit --> ViT["Vision Transformer (ViT)"]
        ViT --> Adapter["Adaptador Multimodal (Proyección Lineal)"]
    end

    subgraph Text_Input ["💬 Flujo de Texto"]
        Prompt["Instrucción de Texto"] --> Tokenizer["BPE Tokenizer"]
        Tokenizer --> TextEmbed["Text Embeddings"]
    end

    subgraph LLM_Core ["🧠 Decoder Unificado"]
        Adapter --> JointAttention["Cross-Attention Espacio Común"]
        TextEmbed --> JointAttention
        JointAttention --> Generation["Respuesta Textual Razonada"]
    end

    classDef visual fill:#fff3e0,stroke:#f57c00,stroke-width:2px;
    classDef text fill:#e1f5fe,stroke:#0288d1,stroke-width:2px;
    classDef llm fill:#e8f5e9,stroke:#388e3c,stroke-width:2px;

    class Img,PatchSplit,ViT,Adapter visual;
    class Prompt,Tokenizer,TextEmbed text;
    class JointAttention,Generation llm;

La Superficie de Ataque de la IA Generativa en Entornos Corporativos

El cambio desde arquitecturas deterministas tradicionales hacia sistemas probabilísticos basados en lenguaje natural transforma por completo la seguridad informática. La entrada del sistema (el prompt del usuario) ya no es un parámetro estructurado que se valida con una expresión regular, sino lenguaje libre con capacidad de alterar la lógica de ejecución del modelo.

Los principales vectores de amenaza identificados en los estándares OWASP Top 10 for LLM incluyen:

1. Inyección de Prompts Directa e Indirecta (OWASP LLM01)

  • Directa (Jailbreaks): El usuario altera las instrucciones del sistema mediante técnicas de suplantación de rol (DAN, simulaciones, bypass lingüístico) para forzar la ejecución de acciones prohibidas.
  • Indirecta: El atacante inyecta instrucciones maliciosas dentro de datos no confiables que el modelo consumirá más adelante (páginas web, correos electrónicos, PDFs o metadatos de tickets). Cuando el modelo procesa la información para responder al usuario legítimo, ejecuta la orden del atacante sin que el usuario sea consciente. Analizamos este vector en profundidad en nuestra guía sobre inyección de prompts directa e indirecta.

2. Envenenamiento de Datos de Entrenamiento y Recuperación (OWASP LLM08)

La manipulación de los corpus de pre-entrenamiento, los datasets de ajuste fino (fine-tuning) o los almacenes vectoriales RAG permite introducir puertas traseras persistentes (backdoors). Con que un atacante logre insertar documentos manipulados en la base de datos documental corporativa, puede inducir alucinaciones dirigidas o exfiltrar información confidencial, como demostramos en el análisis de RAG bajo ataque y vulnerabilidades vectoriales.

3. Vulnerabilidades Multimodales e Inyecciones Ocultas

En modelos multimodales, los atacantes pueden ocultar instrucciones adversarias directamente en la capa visual:

  • Typographic Attacks: Insertar texto sutilmente camuflado en imágenes de facturas o credenciales que el modelo lee e interpreta prioritariamente frente a las instrucciones del sistema.
  • Perturbaciones Adversarias Adversarial Perturbations: Modificar píxeles de forma imperceptible para el ojo humano mediante optimizaciones por gradiente, haciendo que el Vision Transformer clasifique erróneamente un payload malicioso como seguro.

Buenas Prácticas de Ingeniería y Defensa en Profundidad

Para integrar modelos generativos en producción de forma fiable y segura, las organizaciones deben adoptar una gobernanza arquitectónica estricta:

  1. Separación Estricta entre Datos e Instrucciones: No concatenar texto de fuentes externas directamente en el prompt del sistema. Emplear delimitadores XML/Markdown rígidos y roles delimitados en las APIs de inferencia (system, user, assistant).
  2. Implementación de NeMo Guardrails / Llama Guard: Interceptar las entradas y salidas del modelo mediante una capa de clasificación rápida que descarte contenido dañino, ataques de inyección o fugas de PII antes de que alcancen a los usuarios finales.
  3. Principio de Mínima Agencia en Agentes Autónomos: Cuando un LLM dispone de herramientas externas (Function Calling o servidores MCP), restringir las llamadas a operaciones de solo lectura salvo autorización explícita humana (Human-in-the-Loop), evitando que una inyección indirecta ejecute mutaciones en bases de datos o envíe transacciones financieras.

Resumen y Próximos Pasos

La inteligencia artificial generativa no sustituye las buenas prácticas de ingeniería de software; las hace más necesarias que nunca. Comprender la matemática subyacente de la autoatención, la física de los embeddings vectoriales y el modelo de amenazas de los LLMs es el requisito indispensable para construir sistemas robustos y auditables en 2026.

  • [x] Arquitectura Transformer analizada desde el punto de vista matemático y funcional.
  • [x] Mecanismo de autoatención escalada y codificación posicional RoPE desgranados.
  • [x] Integración multimodal mediante Vision Transformers (ViT) y capas de alineamiento.
  • [x] Mapa de amenazas de seguridad: inyección de prompts, data poisoning y ataques multimodales.

Si necesitas evaluar la arquitectura de modelos de IA, auditar la seguridad de integraciones LLM o securizar agentes autónomos en tu infraestructura corporativa, puedes consultar mis Servicios de Ciberseguridad y Consultoría o ponerte en contacto conmigo a través de Sobre mí.