El año 2022 quizá sea recordado como el año en el que la inteligencia artificial llegó al gran público. Mientras aún seguimos esperando coches que conducen solos, asistentes domésticos capaces de entender nuestras instrucciones, o bots de Internet que mantengan una conversación coherente, la IA ha obtenido una victoria inesperada en el terreno de la generación creativa de imágenes.
El éxito ha llegado a partir de los llamados modelos de difusión, una tecnología diseñada originalmente para reducir el ruido de las imágenes y así mejorar su calidad o ampliarlas, haciendo que la IA rellene detalles plausibles pero inexistentes o casi imperceptibles en la original. El truco es llevar el proceso al extremo: partiendo de una imagen que sólo contiene ruido blanco, progresivamente se va limpiando más y más el ruido, cambiándolo por información. Para dirigir el proceso, se emplea un segundo modelo entrenado con millones de imágenes acompañadas de descripciones textuales, una segunda IA encargada de valorar la presencia de “tokens” en una imagen (por ejemplo, dado el token “gato”, se valora con una puntuación si una imagen dada parece un gato o no).
La unión de ambas tecnologías resulta explosiva. A partir de una descripción textual y partiendo de nada más que ruido aleatorio, el modelo obtiene una imagen completamente nueva, que nunca existió antes, pero cumple con los criterios de la descripción. Es, literalmente, convertir el caos en arte a través de un proceso matemático. Pura magia.
Y ojo, no estamos hablando de arte abstracto, sino de imágenes cargadas de detalle y técnica, que simulan estilos, composiciones, colores y detalles de la biblioteca con la que la IA ha sido entrenada. Una imagen generada por IA llegó a los titulares al ganar un concurso de arte en Colorado (USA) hace pocos meses.
Tales resultados introducen inquietantes preguntas. ¿Cómo es posible que seamos capaces de simular la creatividad artística, una de las más altas ocupaciones de la mente humana, pero tengamos tantos problemas para entrenar un robot en tareas mundanas, como hacer que ande, o que coja una caja de un estante? Si ya es factible que una imagen generada por IA nos emocione o nos inspire, ¿podrán las IAs del futuro suplir necesidades humanas o emocionales? ¿Podemos afirmar tajantemente que no existe creatividad tras las creaciones de una IA? Si la IA no es realmente inteligente pero es capaz de producir los mismos resultados que un ser humano en actividades racionales, ¿qué es lo que hace al humano inteligente? Y sobre todo, ¿cómo uso esta tecnología para meter gráficos en mis aventuras?
Cómo generar imágenes con una IA
El sector está avanzando tan rápidamente que no importa cuándo leas esto, lo que digo aquí ya está obsoleto. En todo caso, a la fecha a la que escribo este artículo hay dos formas de obtener imágenes generadas por IA:
• Contratar un servicio a través de Internet. En el caso de IAs propietarias, esta es la única opción, y básicamente consiste en pagar una cantidad por cada imagen generada y/o una subscripción. Aquí destacan Midjourney, una potente IA que ha sido entrenada con imágenes especialmente seleccionadas para ofrecer resultados bellos y artísticos, o DALL·E 2, de OpenAI, empresa pionera en el sector que sigue siendo competitiva. El coste suele ser de unos pocos céntimos de euro por imagen, pero hay que tener en cuenta que pueden ser precisas muchas pruebas e iteraciones para obtener la ansiada imagen útil. Además, suelen incluir severas restricciones y filtros para que la IA no genere imágenes de dudosa moralidad, que a veces entorpecen el uso legítimo de la herramienta.
• Ejecutar por nuestra cuenta una IA ya existente. Stable Diffusion es el nombre de un modelo de difusión open source completamente abierto que podemos descargar libremente y ejecutarlo en nuestro propio ordenador. Stable Diffusion puede entrenarse con un puñado de imágenes para aprender un personaje o incluso un estilo y utilizarlo de forma consistente al asignarle un token gracias a los avances del proyecto Dreambooth. Las IAs tienen elevados requisitos y en general es necesario disponer de una tarjeta gráfica de gama media o alta (con 6GB de RAM, preferiblemente 8 o más) para poder usarlas. El proceso de instalar y ejecutar una IA manualmente puede ser complicado, así que lo mejor es acudir a un paquete instalable preconfigurado que facilite la tarea. Personalmente he usado con éxito un fork de Stable Diffusion llamado InvokeAI, pero seguro que cuando leas esto hay mejores alternativas disponibles para descargar. Alternativamente, es posible usar un servicio de alquiler o uso compartido de servidores como Google Collab, que permite ejecutar la IA en servidores en la nube.
El uso de una IA no es tan simple como escribir una descripción cualquiera y obtener resultados útiles. La elaboración de una descripción, un prompt adecuado, es una habilidad a adquirir en sí misma. El uso de nombres de artistas conocidos, tipos de iluminación o render, motores gráficos, estilos pictóricos y tokens similares puede condicionar con mucho la calidad y aspecto del resultado. Una buena forma de empezar es examinar una de las galerías existentes (como Lexica para Stable Diffusion, o la propia de Midjourney accesible desde una cuenta de pago) que nos permiten observar prompts de otros usuarios y usarlos de base para nuestras imágenes. Existen también páginas que ayudan a construir el prompt ideal recopilando estilos, técnicas y otros tokens de utilidad, con ejemplos de sus resultados.
Limitaciones y problemas
Una de las mayores limitaciones comunes a todas las IAs de este tipo estriba en que no considera relaciones entre “tokens”, sino su presencia global en la imagen. La forma en la que una IA se enfrenta a un prompt o una descripción de imagen es similar a la de un parser conversacional, ¡incluso más simple! Las palabras se interpretan como tokens independientes, sin relación entre ellos, y se ignora por completo la estructura de la frase. Por ejemplo, ante el prompt “hombre con un sombrero amarillo y un traje rojo”, el token “amarillo” no se relacionará con “sombrero” como cabría esperar: sólo se garantiza que aparecerá en la imagen de alguna forma, es decir, que la imagen final se podrá considerar “amarilla”.
La IA tampoco entiende de magnitudes, relaciones o estructuras. Sabe que algo parece una mano, pero no sabe cuántos dedos tiene una mano o cual es su anatomía, así que frecuentemente dibujará dedos de más o de menos o posiciones imposibles para una mano. Por este motivo, obtener arquitectura o maquinaria de carácter o apariencia funcional es un reto casi imposible, a no ser que se busque un resultado abstracto o artístico. Digamos que la IA evalúa la apariencia global de un objeto o persona, pero no es capaz de observar coherencia entre sus detalles. Por ese motivo, los fallos de simetría son comunes. En muchos rostros, el ojo izquierdo y el derecho parecen pertenecer a diferentes personas.
La IA siempre estará limitada por su entrenamiento. Reconocerá celebridades o personajes en función de su frecuencia de aparición en la biblioteca utilizada para entrenarla, y lo mismo se aplicará a estilos artísticos e incluso composiciones, acciones o conceptos. Las IAs populares actuales han sido entrenadas con imágenes generales sacadas de Internet (a veces, la IA incluso intentará reproducir firmas de autores o marcas de agua), todas ellas de tamaño rectangular de 512×512. Aunque es posible pedir a la IA imágenes de más tamaño o usando otra relación de aspecto, trabajará internamente sobre piezas de 512×512, dando lugar a frecuentes errores como anatomía duplicada o incoherencias entre secciones de la imagen si se le pide ir más allá.
Existen dudas en cuanto a la legalidad del uso de imágenes con copyright en la biblioteca de entrenamiento de una IA. Hay que entender que la IA no copia ni duplica las imágenes con las que ha sido entrenada, ni siquiera en parte, pues sólo aprende relaciones de color entre pixels, igual que un ser humano puede aprender técnicas o conceptos a partir de observar el trabajo de otros. El tamaño del fichero descargable del modelo ya indica que sólo habría espacio para unos pocos bytes de información por cada imagen. Eso no significa que una imagen generada por una IA esté necesariamente libre de copyright, pues puede estar reproduciendo logotipos o personajes registrados que no seremos libres de emplear, igual que ocurriría si los dibujara un artista de memoria.
Aplicaciones en el mundo de la aventura
Las aventuras conversacionales son un nicho interesante para decorar gráficamente mediante una IA. Las IAs son competentes en la generación de paisajes, interiores simples, o retratos de personajes dentro de ciertas limitaciones (rostros vistos de cerca, por ejemplo).
Sin embargo, la falta de coherencia, y la imposibilidad de adherirse a reglas naturales o funcionales, representan una barrera de adopción para obtener series de imágenes para un proyecto. Es difícil, por ejemplo, generar imágenes de diferentes habitaciones de la misma casa, o de diferentes casas del mismo pueblo. Generar el mismo personaje con diferentes expresiones o en diferentes entornos es también un reto. Stable Diffusion también puede contratarse como servicio de pago si queremos probarlo sin quebraderos de cabeza en DreamStudio.
Dado que los resultados de la IA son inconsistentes, una opción es utilizarlos como base para la composición y edición de imágenes. Probablemente el futuro del artista profesional pase por disponer de la IA como una herramienta más que complete pero no sustituya a las ya existentes. En este sentido, ya han aparecido varios plugins para programas como Photoshop o Blender, que permiten intercalar la IA dentro de un flujo de trabajo de arte completo.
Pero si no tenemos inclinaciones artísticas y simplemente queremos usar la IA para crear nuestros gráficos, ¿qué podemos hacer?
La IA ofrece varias herramientas que nos permiten controlar de forma más precisa sus resultados e iterar sobre los mismos. Así, tenemos:
• El uso repetido de una misma semilla, un número que determina cómo es el ruido blanco en el que se basa la imagen. Utilizar la misma semilla con prompts diferentes permite obtener variaciones de imágenes, que no necesariamente guardan consistencia entre ellas pero puede ser útil para iterar cuando el resultado se aproxima a lo que queremos.
• La opción imagen a imagen permite utilizar una imagen como “fuente” para la generación, en lugar de ruido. Por ejemplo, es posible hacer un crudo esbozo de la imagen que queremos obtener, y dejar que la IA la complete con detalles, estilo e iluminación de calidad. También podemos usar una imagen existente (incluso una generada previamente con la IA) como fuente. A la IA se le puede instruir para que la imagen final sea más o menos fiel a la original, con diferentes resultados.
• La IA soporta también enmascarar una parte de la imagen de origen, técnica llamada inpainting, que resulta útil para corregir pequeños errores e iterar sólo algunas secciones.
Más allá de los gráficos
Este tema daría para un artículo tan extenso como este o más, pero el caso es que igual que pueden generar imágenes de la nada, las IAs pueden también generar texto. Modelos como GPT-3 de OpenAI permiten ampliar un prompt añadiendo texto que mantenga la coherencia con el mismo y permiten, por ejemplo, escribir un párrafo de una novela y dejar que la IA continúe a partir de ahí.
Cabe preguntarse si esta capacidad puede utilizarse para emular una aventura conversacional, escribiendo las acciones que queremos hacer como prompts y dejando que la IA escriba la respuesta. Pues bien, AI Dungeon es un servicio que ofrece básicamente eso: jugar a una aventura conversacional donde las respuestas las genera una IA.
Veamos un ejemplo de una sesión de juego en AI Dungeon (eso sí, en inglés):
En este recorte, las acciones escritas por el jugador son sólo las líneas precedidas por un icono. Las primeras dos líneas están predefinidas, y el resto lo ha generado íntegramente la IA.
La experiencia de juego es inusual: al contrario de una aventura, que responde mejor a órdenes básicas con verbos simples y comunes, la IA responde mejor cuanto más detallado es el input, pues lo utiliza como guía y ejemplo para continuar escribiendo. Cuando el tema funciona, y al igual que ocurre con la generación de imágenes, la experiencia es casi mágica. En este ejemplo, el jugador se encuentra en el bosque… ¡un dragón negro! Raudo se oculta del mismo y, por suerte, la criatura emprende el vuelo. ¿Qué está pasando? Es una partida de un juego que no existe. Nunca hubo un plan ni un diseño en el que un dragón aparezca en el bosque y el jugador deba esconderse para salir con vida del encuentro. La IA simplemente ha decidido que, tras la acción de esconderse, la frase de que el dragón se largara y el héroe respire aliviado encajaba. Podía quedar igual de bien que le encontrase con su olfato y le chamuscase de inmediato, y de hecho la misma acción en el mismo contexto podría haber producido (y produce) distintos resultados (a menudo, terriblemente inconsistentes o repetitivos).
Al margen de estos momentos puntuales de lucidez, tras unas cuantas sesiones de juego es fácil ver por qué la generación de texto no ha sorprendido al mundo ni llena titulares como sí lo han hecho las imágenes. Los problemas de coherencia son más aparentes y la IA es incapaz de entender reglas de juego, objetivos, o seguir un patrón. Más que jugar un juego planteado por la IA, los mejores resultados se obtienen si se entiende el ejercicio como una especie de escritura cooperativa donde el papel del humano consiste en corregir y dirigir la IA (no en vano, Dungeon AI ofrece herramientas de uso habitual para repetir la última acción o editar la respuesta de la IA directamente). Otros servicios similares a AI Dungeon, como Novel AI, están más orientados en la dirección de la escritura cooperativa.
Futuro de la IA y conclusiones
La generación de imágenes es un campo en tremenda evolución. Este mismo artículo, escrito hace seis meses, sería totalmente diferente, y lo mismo ocurriría dentro de otros seis. Ya se han anunciado nuevas IAs como Google Imagen que usa un modelo de comprensión de texto más avanzado y es capaz de asociar adjetivos a sus nombres y entender la estructura de la descripción del prompt, y otras como eDiff-I de nVidia, que subdivide el proceso de generación de imágenes de tal forma que permite asignar zonas de la imagen a tokens concretos.
El uso de IAs dentro del proceso artístico y el desarrollo de juegos es ya una realidad. Hay quien habla de democratización del proceso artístico y de poner en manos de todo usuario un clon de Miguel Ángel dispuesto a plasmar a todo color cualquiera de sus sueños o inquietudes. No estamos ahí, todavía al menos, pero la IA sí es ya una herramienta a tener en cuenta en el proceso creativo.
¿Y qué depara el futuro a más largo plazo? Avances en comprensión lectora, traducción simultánea y transcripción de voces sugieren una próxima revolución en la habilidad de una IA en los ámbitos del texto y el lenguaje. Numerosas líneas de investigación tratan de entrenar IAs para producir resultados más allá de imágenes estáticas, como vídeos o música. Y la IA no se detendrá ahí. Quién sabe si, igual que una IA puede hoy emular el estilo de Da Vinci en un lienzo, en unos años podrá ofrecernos juegos completos llenos de nuevos puzzles, localidades y personajes, al estilo de Samudio. El jugador del futuro tendrá a su disposición un infinito abanico de mundos por explorar, tan ricos o pobres, tan nostálgicos o novedosos, tan jugables o reflexivos, como determine su prompt.