22 puntos por xguru 2024-06-17 | Aún no hay comentarios. | Compartir por WhatsApp
  • Braindump es un intento de imaginar cómo podría ser la creación de videojuegos en el nuevo mundo de los LLM y la IA generativa
  • Con Braindump, puedes construir un juego top-down/2.5D o un mundo interactivo simplemente escribiendo prompts
    • Por ejemplo, si escribes "crear un caza estelar que pueda disparar rayos láser y lanzar bombas BB-8", se generan el modelo 3D, los datos del juego y los scripts necesarios

Desde los primeros experimentos hasta ahora

  • Empezó hace unos 6 meses como un prototipo simple, y desde entonces se añadieron generación de modelos 3D, funciones multijugador y varias mejoras de UX
  • Actualmente, Braindump tiene las siguientes funciones clave
    • Definir unidades, habilidades y atributos (por ejemplo: "un orco con 50 HP que deja caer una varita mágica")
    • Colocar objetos en el mapa del juego (por ejemplo: "poner 20 orcos en forma de círculo")
    • Generar reglas y lógica del juego (por ejemplo: "cuando la salud del orco llegue a 0, generar un orco fantasma en su lugar")
    • Generar nuevos modelos 3D (por ejemplo: "quiero que el orco sea rosa y tenga orejas esponjosas", usando Meshy)
  • Todo esto es accesible a través de una interfaz integrada de prompts en lenguaje natural

Desafío 1: diseñar la UX para prompting

  • Hay dos grandes problemas al construir algo usando LLM
    1. Cómo hacer que el LLM actúe de forma consistente como uno quiere
    2. Cuál es la mejor UX para interactuar con el LLM
  • Tras muchos experimentos con prompts, pasaron al enfoque iterativo actual
    • Generar un juego completo de una sola vez a partir de una descripción total no funcionaba bien
    • Construir el juego gradualmente con varios prompts daba oportunidades para describir más detalles o iterar
  • Siguen experimentando para encontrar el equilibrio adecuado entre los prompts y los controles tradicionales

Desafío 2: diseñar una API de juego para LLM

  • Generar código para motores de juego existentes presentaba dificultades
    • Los LLM son buenos generando snippets de código, pero tienen problemas con piezas de software más grandes y con construir y mantener arquitectura de software
  • En lugar de eso, construyeron en TypeScript una "API de juego" muy simplificada que proporciona tanta estructura como sea posible para que el LLM se concentre en escribir código y datos
  • Al darle a GPT como prompt de sistema las definiciones de tipos generadas (.d.ts) por la API, GPT usa la API de forma correcta y consistente en la mayoría de los casos desde el primer intento
  • También descubrieron una ventaja sorprendente de la verificación de tipos: si GPT detecta un error, intenta corregirse por sí mismo

Macros generadas

  • La API de juego también abrió otro flujo de UX interesante: las macros generadas
  • En general, en una aplicación las macros son pequeños programas que pueden automatizar tareas
  • En el sistema de Braindump, cada prompt genera código, y ese código puede automatizar casi cualquier cosa dentro de lo que cubre la API del juego
    • Por ejemplo, puedes escribir un prompt como "coloca una tienda junto a una fogata"
    • También puede automatizar tareas tediosas (por ejemplo: "crea 5 gatos distintos con stats diferentes")
    • Incluso se le puede pedir que responda preguntas que requieren cálculo (por ejemplo: "¿cuántas tiendas apuntan hacia el norte?")
  • Esto abre una nueva forma de trabajar
    • Al principio se siente un poco raro, pero una vez que te acostumbras, puedes completar tareas muy tediosas en segundos de forma creativa

Edición colaborativa con IA

  • Querían que todo en Braindump fuera multijugador
    • Tanto la creación de juegos como el juego en sí
  • Al principio solo había un gran chat donde todos podían contribuir, pero era confuso
    • El principal problema era que muchas veces se trabajaba en dos cosas distintas que no tenían relación entre sí
  • Después de probar varias soluciones, convergieron en algo que llaman "Threads"
    • Puedes iniciar un prompt en cualquier parte del mundo, pero también puedes refinarlo o añadirle más cuando sea necesario
    • A los threads se les da al inicio el estado más reciente del juego, pero no el historial completo del proyecto
    • Varios threads pueden estar "ejecutándose" al mismo tiempo, pero solo puede ejecutarse un prompt a la vez por thread
  • Hasta ahora esto ha funcionado bastante bien
    • En las pruebas, 5 personas trabajaron al mismo tiempo en el mismo mundo; definitivamente era un poco caótico, pero seguía siendo funcional
    • Están buscando activamente formas para que los usuarios puedan coordinarse de manera efectiva

Benchmarking y pruebas

  • Desarrollaron una herramienta de benchmarking para evaluar el desempeño del motor de prompts
    • Esta herramienta ejecuta decenas de escenarios, cada uno con su propio prompt, y luego usa GPT para evaluar si ese prompt tuvo éxito o no
  • A un segundo GPT, llamado "evaluador" (con su propio prompt de sistema), se le entregan estas condiciones, el estado simulado al finalizar y cualquier error ocurrido, y se le pide decidir si la prueba fue exitosa
  • La suite de pruebas todavía está en una etapa temprana, pero siguen agregando cada vez más tests conforme descubren nuevos estilos de prompts y casos de falla

Por qué crear Braindump

  • Personalmente, siempre han amado los videojuegos y la creatividad
  • La IA generativa es el siguiente paso natural en el aumento de productividad
    • Permite simplemente hacer más cosas
  • Como los grandes estudios están haciendo juegos cada vez más conservadores, les entusiasma empoderar a grupos pequeños o incluso a individuos para que puedan crear el juego de sus sueños
  • Quieren ver qué ideas locas se les ocurren a las personas y cómo las hacen realidad cuando tienen un estudio completo de videojuegos con IA al alcance de la mano

Planes a futuro

  • Braindump apenas está comenzando
  • Ahora es bastante bueno ejecutando "órdenes" ("crear un gato"), pero saben que puede expandirse para manejar tareas mucho más ambiguas o "grandes"
  • Están investigando cosas como
    • Soporte para prompts "más grandes" mediante Planning
    • Hacer que GPT deje de adivinar y en su lugar le pida aclaraciones al usuario
    • Mejorar la calidad del código haciendo que GPT critique su propio trabajo
    • Mejorar el descubrimiento y la inspiración ("¿qué se puede crear con esto?")
    • Mejorar las funciones del motor de juego de una forma adecuada para los LLM

Aún no hay comentarios.

Aún no hay comentarios.