Ir al contenido

IA Generativa

Para nosotros como desarrolladores, la IA Generativa no es magia; es un motor de predicción estadística increíblemente sofisticado.

Hasta hace poco, la mayoría de modelos de IA eran discriminativos. Su trabajo era etiquetar datos (“¿Es esto un gato o un perro?”). La IA Generativa rompe ese molde: no clasifica, crea nuevos datos basándose en patrones aprendidos.

  • Función: input -> etiqueta (Clasificación)
  • Ejemplo: Filtro de SPAM.
  • Input: “Gana dinero rápido hoy”.
  • Output: [SPAM: 99.8%]
  • Mentalidad: Analista rígido.

En el núcleo de modelos como Claude existe una operación fundamental: Next Token Prediction. El modelo observa el texto anterior (contexto) y calcula la probabilidad de todas las palabras posibles que podrían seguir.

Imagina que le das este código incompleto:

example.js
const user = { name: "Alice", role: "admin" };
console.log(user.

Internamente, el modelo no “piensa”. Calcula probabilidades:

Output Probabilístico
// Probabilidades calculadas por el modelo (simplificado)
[
{ token: "name", probability: 0.15 },
{ token: "role", probability: 0.82 }, // <- Elige este por contexto previo
{ token: "age", probability: 0.02 },
{ token: "toString", probability: 0.01 }
]

Si el modelo siempre eligiera la palabra con mayor probabilidad, sería determinista. Para eso existe la Temperatura.

  • Temperatura 0.0: Determinista. Siempre elige el token más probable. Ideal para código y matemáticas.
  • Temperatura 0.7 - 1.0: Creativa. A veces elige tokens menos probables, generando textos más variados. Ideal para brainstorming y escritura.

Andrej Karpathy (ex-Director de IA en Tesla y cofundador de OpenAI) propuso una distinción que redefine nuestra profesión: Software 2.0.

  • Software 1.0 (Programación clásica): Es el código que escribimos línea a línea en lenguajes como Python, Rust o C++. Definimos reglas explícitas para procesar datos. Es predecible y lógico, pero colapsa ante tareas de “percepción” (como reconocer un rostro o entender un sarcasmo).
  • Software 2.0 (Programación Basada en Optimización): Aquí, el “código” no lo escribe un humano, sino que se manifiesta en los pesos de una red neuronal. Nuestra labor cambia: dejamos de escribir algoritmos para pasar a curar datasets y diseñar funciones de pérdida.

Como Desarrollador Aumentado, tu nuevo superpoder no es reemplazar el código tradicional, sino orquestarlo. Ahora construyes estructuras de Software 1.0 que actúan como el “sistema nervioso”, conectando y dirigiendo módulos de Software 2.0 (como los LLMs) para resolver problemas que antes eran imposibles de programar.

Para profundizar en cómo los LLMs procesan y “piensan” en tokens, te recomiendo este recurso visual:

Explicación visual del modelo Transformer - PyData

Este video es una excelente referencia visual que complementa la explicación teórica, mostrando gráficamente cómo se transforman los inputs en predicciones.