A lo largo de esta serie de artículos, he agrupado las distintas vertientes de la inteligencia artificial la IA generativa y la llamada “IA tradicional”, que incluye aprendizaje automático (machine learning, ML), procesamiento del lenguaje natural (natural language processing, NLP), entre otras, ya que los componentes de IA dentro de una solución suelen seguir un patrón similar, en concreto, el de una entrada definida procedente del negocio (por ejemplo, datos estructurados o texto de consulta) que da lugar a una salida concreta (por ejemplo, datos numéricos predichos o texto generado), que fluye a través del resto de la solución y, en última instancia, hacia el negocio.
Sin embargo, llegados a este punto, merece la pena hacer un breve paréntesis para destacar la principal diferencia entre la IA Gen y otras variedades, en particular cómo se desarrolla el modelo, ya que tiene importantes implicaciones para las fases prácticas de desarrollo e implantación de una solución de IA.
Los modelos de inteligencia artificial tradicional, como los desarrollados en proyectos de machine learning (ML), utilizan un conjunto de datos de entrenamiento a menudo recopilados específicamente para este propósito y los combinan con un algoritmo seleccionado con el mismo fin. El resultado es un modelo entrenado que se adapta tanto a los datos utilizados como a la aplicación para la que fue desarrollado. Retomando el ejemplo del artículo anterior sobre la identificación de la deserción de clientes (customer churn), en este caso los datos serían específicos de esa organización, y el modelo resultante estaría diseñado para ese caso de uso en particular.
Esta descripción pasa por alto los detalles del proceso de desarrollo de un modelo de machine learning (ML), con los cuales muchos científicos de datos e ingenieros de ML están demasiado familiarizados.
Por ejemplo, uno de los primeros desafíos a los que se enfrentan suele ser obtener los datos necesarios para entrenar el modelo, lo que en muchas organizaciones representa un verdadero reto. Los pasos posteriores incluyen la exploración de los datos, la identificación de algoritmos y enfoques adecuados, y luego el entrenamiento y las pruebas de las distintas iteraciones del modelo. Todo este proceso puede ser largo y tedioso, considerado tanto un arte como una ciencia. Y, lo peor de todo, es que el científico de datos puede descubrir que los datos no contienen señal alguna, haciendo imposible construir un modelo capaz de predecir el fenómeno que se esperaba modelar.
Sin embargo, una de las ventajas de los enfoques tradicionales de IA, como el ML, es que existen procesos (relativamente) maduros y bien definidos para desarrollar y probar estos modelos y luego implementarlos en la producción (por ejemplo, este documento de 2014 fue una especie de "llamada a la acción" para muchos profesionales en esta área). Esto no quiere decir que no haya retos, y hay muchas incertidumbres (ciertamente en relación con los proyectos de software normales), pero una vez que el modelo ha sido debidamente probado y aprobado (es decir, que "funciona"), puede desplegarse, siguiendo las diversas recomendaciones de mejores prácticas de MLOps.
Por otro lado, los enfoques de IA Generativa parten de un modelo general preentrenado conocido como large language model (LLM) o, de manera más amplia, foundation model, que luego se personaliza para una aplicación específica mediante el suministro de distinta información en el prompt (por ejemplo, la redacción del prompt o información particular de la organización). De este modo, se busca ajustar o manipular la salida del foundation model para que responda de la manera deseada.
Nuevamente, esta descripción general omite muchos detalles. Por ejemplo, la fase inicial que parte de un foundation model probablemente implicará iterar entre distintos modelos preentrenados, así como sobre los prompts (y los datos contextuales), para evaluar si la idea es realmente viable.
Posteriormente, puede haber una fase de definición del problema (problem framing) para alinear la solución con la necesidad de negocio, seguida por la recopilación y el procesamiento de datos. En esencia, este enfoque facilita la creación rápida de prototipos, ya que se elimina la necesidad de contar con datos de entrenamiento. Sin embargo, la definición del problema y su alineación con el negocio puede resultar más compleja, requerir personalización para cada caso y, por tanto, tomar más tiempo. De manera similar, las pruebas de desempeño del modelo o la solución pueden no estar tan bien definidas (a diferencia de las métricas estándar usadas en ML, como precision o recall), lo que también puede prolongar el proceso. Lo mismo ocurre con el despliegue y la monitorización, debido a la naturaleza más personalizada de este tipo de soluciones.