¡Asombroso! El árbol de habilidades de GPT ha vuelto a crecer, ¡y ahora incluso puedes hacer el juego directamente!
Ya sabes, la era actual ya no es la era del pasado en la que puedes apoderarte del mercado haciendo un juego pequeño. El proceso de desarrollo de juegos de hoy en día es súper complejo.
Comencemos con la mano de obra, el personal de cada equipo de juego se cuenta en docenas o incluso cientos. Alguien es responsable de la programación, alguien es responsable del arte, alguien es responsable del mantenimiento, y así sucesivamente.
Cada juego también tiene una enorme base de código y una biblioteca de materiales.
Como resultado, desarrollar un gran juego requiere mucha gente y mucho tiempo para completarlo. Y este período de tiempo suele ser de varios años.
Más intuitivamente, es dinero.
El equipo del juego desarrolló una obra maestra que la gente recordará y amará, y el presupuesto superará los 100 millones de dólares.
De lo contrario, la producción de juegos es una especie de electricidad generada con amor.
Ahora, ¡las cosas han cambiado!
Los investigadores han desarrollado un modelo llamado GameGPT, que puede integrar múltiples agentes de IA para automatizar algunos de los procesos en el desarrollo de juegos.
Y los diferentes agentes realizan sus propias funciones y trabajan de manera ordenada.
Hay agentes encargados de revisar el plan de diseño del juego y realizar las modificaciones y ajustes correspondientes; Algunos se encargan de traducir las tareas en código concreto; Algunos se encargan de comprobar el código generado en el paso anterior y revisar los resultados de la ejecución; También hay agentes encargados de verificar que todo el trabajo cumpla con las expectativas iniciales.
De esta manera, al refinar y descomponer el flujo de trabajo, GameGPT puede simplificar el trabajo de los agentes de IA. Este tipo de rendimiento es más eficiente y mucho más sencillo de lograr que un agente todopoderoso que lo hace todo.
Los investigadores dicen que GameGPT puede simplificar algunos de los aspectos repetitivos y rígidos del proceso de desarrollo de juegos tradicionales, como las pruebas de código.
Un gran número de desarrolladores pueden liberarse del complicado trabajo de inspección y centrarse en enlaces de diseño más desafiantes que no pueden ser reemplazados por la IA.
Por supuesto, este documento se encuentra todavía en una fase relativamente preliminar. No hay resultados concretos ni experimentos que demuestren mejoras en el rendimiento.
En otras palabras, nadie ha desarrollado realmente un juego con GameGPT, y el modelo aún se encuentra en la etapa conceptual, y es difícil de evaluar hasta que haya resultados de aplicación específicos y datos cuantificables.
Sin embargo, siempre es una dirección en la que trabajar.
Algunos internautas dijeron que las ideas de la gente sobre LLM son algo sesgadas. Ahora, los investigadores tienen una herramienta que resuelve el 100% de los problemas de PNL, mientras que las personas solo se preocupan por automatizar ciertos flujos de trabajo.
Por ejemplo, imagina que el mundo del juego reaccionara a tus decisiones con más normalidad de lo que podrías juzgar en cinco minutos como un motor codificado basado en reglas.
Imagina si un juego pudiera improvisar misiones secundarias para ti en función de las decisiones que tomes (como masacrar al azar a los enemigos que veas en el camino, etc.).
Cuando los desarrolladores crean un sistema de este tipo, utilizan la ingeniería de sugerencias para guiar el LLM en lugar de codificar estas cosas.
Sin embargo, el propósito de esto no es ahorrar costos, sino hacer juegos en una etapa en la que antes no era posible hacer más juegos (¿no es un poco complicado?).
GameGPT
En primer lugar, echemos un vistazo al gran marco del modelo GameGPT: todo el proceso.
Como se puede ver, el autor personifica a cada agente, mostrando más vívidamente cómo realizan sus respectivas funciones.
En el extremo izquierdo del proceso está el lado del usuario, que se ingresa a GameGPT, y luego el gerente de desarrollo y la revisión realizan una planificación preliminar.
Luego, los requisitos se envían a los ingenieros de desarrollo, así como a los ingenieros de motores de juegos, para realizar tareas específicas y generar código.
Finalmente, verifique si hay omisiones, envíelas de regreso al lado izquierdo y vuelva a ejecutar. De lo contrario, continúe hacia la derecha y el ingeniero a cargo de la inspección realizará la prueba.
** ¿Juego de desarrollo de IA? **
De hecho, los rudimentos de la historia de los juegos desarrollados por la IA pueden remontarse aún más atrás.
La aplicación de la IA en el desarrollo de juegos se remonta a juegos clásicos como StarCraft y Diablo. En ese momento, los desarrolladores necesitaban sistemas de IA para crear mundos virtuales interactivos y personajes.
Estos sistemas se han convertido en estándar para el desarrollo de este tipo de plataformas interactivas.
Las primeras investigaciones relacionadas con la IA en el desarrollo de juegos hicieron hincapié en el control de personajes no jugadores (NPC), y con el desarrollo de la tecnología de procesamiento del lenguaje natural (NLP), hubo algunos trabajos pioneros que utilizaron técnicas de aprendizaje profundo para generar niveles.
Una de las obras maestras es MarioGPT, que generó con éxito algunos de los niveles de Super Mario Bros. a través de un modelo GPT-2 afinado.
LLM ha hecho grandes avances este año, con buenos resultados tanto en PNL como en visión por computador (CV).
Sabemos que la formación de LLM es un proceso de varias etapas. La fase inicial consiste en entrenar estos modelos en un corpus extenso, facilitando la adquisición de competencias lingüísticas básicas.
A esto le sigue una etapa más importante, que consiste en afinar el modelo mediante la generación de datos de varias tareas de PLN a través de instrucciones. Este ajuste de instrucciones mejora la capacidad de generalización del modelo en una amplia gama de aplicaciones, lo que permite a LLM lograr un rendimiento sin errores en tareas que no se han realizado en entrenamientos anteriores.
Por último, la etapa de Aprendizaje por Refuerzo de Retroalimentación Humana (RLHF) garantiza la integridad estructural y la fiabilidad del modelo.
Otra advertencia aquí: la etapa RLHF permite que el modelo genere contenido que imita el estilo humano, mejorando su versatilidad como agente.
Además, los avances en LLM han promovido la automatización de los agentes en el proceso de desarrollo de software. Muchos estudios se han centrado en la cuestión de cómo desarrollar un agente basado en LLM que pueda realizar diferentes tareas.
Por ejemplo, AutoGPT utilizó agentes de LLM para gestionar ciertas tareas de toma de decisiones en el mundo real, mientras que HuggingGPT utilizó un único LLM como controlador para coordinar tareas de IA más complejas.
Aunque estos métodos se basan en un solo agente de LLM, todos agregan un revisor (el revisor en el diagrama de flujo anterior) para mejorar la decisión.
O tomemos AutoGPT como ejemplo, el modelo obtendrá algunas opiniones auxiliares del alumno supervisado para mejorar su propio rendimiento, y HuggingGPT también se puede conectar a GPT-4 para hacer que un revisor evalúe la precisión de la toma de decisiones.
Hay otros ejemplos, como MetaGPT, que introduce un marco multiagente que se puede utilizar para automatizar el desarrollo de varios programas.
Volviendo al desarrollo de juegos que discutimos hoy, debemos saber que, a diferencia del desarrollo de software general, la industria del desarrollo de juegos debe mantenerse al día con las tendencias, por lo que todo el proceso de desarrollo debe ser más preciso y conciso para lograr la mejor eficiencia.
Además, ajustar y usar un solo LLM para servir a todo el ciclo de desarrollo del juego sin ilusiones y con alta precisión es poco práctico y costoso.
Por lo tanto, el marco de la IA de desarrollo de juegos requiere la participación de múltiples revisores, lo que puede aliviar eficazmente las tendencias alucinatorias inherentes a los modelos de lenguaje.
Los investigadores también descubrieron que los modelos de lenguaje tienen otra limitación en el desarrollo de juegos: la redundancia. LLM puede generar tareas innecesarias y poco informativas o fragmentos de código cuando se construye el juego.
Para abordar eficazmente el problema de la ilusión y la redundancia, el protagonista de hoy, GameGPT, adopta estratégicamente una variedad de enfoques para el problema, incluida la colaboración dual, el ajuste de instrucciones a través de vocabularios internos y el desacoplamiento del código.
Cabe destacar que la colaboración dual implica la interacción entre LLM y pequeños modelos de aprendizaje profundo, así como la participación colaborativa entre el agente responsable de la ejecución y el agente revisor.
Los investigadores dicen que estas sinergias han demostrado ser efectivas para mitigar la ilusión y la redundancia de GameGPT.
Introducción al método
A continuación, los investigadores diseccionaron la innovación de GameGPT de todo el proceso.
En primer lugar, durante la fase de diseño del juego, después de recibir una solicitud del usuario, las tareas de GameGPT incluyen generar un plan de desarrollo para todo el juego. Esta fase de planificación es uno de los pasos clave que afecta en gran medida al progreso continuo de todo el proceso de desarrollo.
Esta fase es planificada por un gerente de desarrollo de juegos basado en LLM que elabora un plan inicial y luego lo divide en una lista de tareas.
Vale la pena señalar que, debido a las limitaciones inherentes al LLM, este plan inicial a menudo presenta alucinaciones, lo que resulta en tareas inesperadas, incluidas tareas poco informativas o innecesariamente redundantes.
Para abordar estos problemas, los investigadores propusieron cuatro estrategias que podrían mitigar estos desafíos que eran ortogonales entre sí y que podrían realizarse en capas para obtener mejores resultados.
Escenario uno: Clasifique las solicitudes entrantes para identificar el tipo de juego. Actualmente, el marco GameGPT admite el desarrollo de cinco géneros de juegos diferentes, a saber: acción, estrategia, juegos de rol, simulación y aventura.
Para cada tipo, los investigadores proporcionan plantillas de planificación estandarizadas que guían a los agentes del gerente de desarrollo de juegos a través de las plantillas con información relevante.
Al adoptar este enfoque, la frecuencia de tareas redundantes se reduce significativamente, mientras que la probabilidad de que ocurran alucinaciones.
Estrategia dos: implica la participación del agente examinador del programa, que es otro agente basado en LLM. Este agente opera con un diseño cuidadoso para proporcionar una revisión integral del plan de la misión.
Su objetivo principal es minimizar la aparición de alucinaciones y redundancia. Este programa de evaluación de agentes proporciona retroalimentación para mejorar y aumentar su precisión, eficiencia y simplicidad.
Al mismo tiempo, las instrucciones generadas en esta parte se pueden utilizar como nueva entrada para el agente del gerente de desarrollo del juego, lo que hace que el plan de tareas sea más preciso y perfecto.
Estrategia 3: Ajustar el propio LLM del agente del director de desarrollo del juego a través de instrucciones especiales para planificar mejor a nivel de desarrollo del juego. El propósito de este proceso de ajuste fino es permitir que el modelo produzca un plan que sea preciso y conciso.
Para mayor comodidad, el equipo de investigación recopiló e integró un conjunto de datos interno que incluía muchas combinaciones de entradas y salidas. Si bien estas combinaciones no se ajustan al formato estándar en longitud o estructura, todas giran en torno a los requisitos del desarrollo de juegos.
Esta parte de la mezcla fija es proporcionada por los desarrolladores de la industria.
Al adoptar este enfoque, los investigadores cerraron efectivamente la brecha entre las habilidades lingüísticas generales de LLM y las habilidades de planificación del desarrollo de juegos.
Estrategia 4: "Red de seguridad" en la etapa de planificación. A lo largo del proceso de planificación, el Agente Game Development Manager siempre comparte los resultados provisionales con el usuario en la interfaz front-end, permitiendo que el resto de agentes sepan en todo momento qué desarrollo está en curso.
Para mejorar esto, los investigadores integraron un enfoque interactivo que permite a los usuarios revisar, corregir y mejorar activamente los planes en función de sus expectativas. Este enfoque también garantiza la coherencia entre el plan de diseño y las necesidades del usuario.
Con estas estrategias fuera del camino, echemos un vistazo a las ventajas de GameGPT.
En primer lugar, el proceso de clasificación de tareas en este modelo requiere una alta precisión en la identificación de los tipos de tareas y sus parámetros correspondientes.
Entonces, para garantizar la precisión en esta etapa, los investigadores crearon un agente llamado ingeniero de desarrollo de juegos. El agente consta de dos modelos que trabajan juntos para participar en el proceso de clasificación de tareas.
Este enfoque colaborativo mejora la precisión y la eficacia de la identificación de tareas. Al mismo tiempo, con el fin de evitar la aparición de ilusiones de LLM y mejorar la precisión de la clasificación de tareas, los investigadores proporcionaron una lista de tipos de tareas que pueden aparecer en el desarrollo de juegos.
Para clasificar mejor esto, adoptaron el modelo BERT.
El modelo BERT se ha entrenado completamente con un conjunto de datos interno. Este conjunto de datos contiene elementos de datos adaptados a la tarea de desarrollo del juego. La entrada se extrae de una lista predeterminada y la salida corresponde a la categoría especificada de la tarea.
En esta etapa se lleva a cabo la revisión de los tipos y parámetros de tareas, y se introduce un agente llamado revisor de tareas, que es el principal responsable de la identificación de cada categoría y de si los parámetros son razonables.
El proceso de revisión incluye revisar si el tipo de tarea está dentro de un rango predeterminado y si es la tarea más adecuada. Al mismo tiempo, también comprueba la lista de parámetros para ver si se alinea con la tarea.
En algunos escenarios, como algunas situaciones basadas en información contextual de tareas, o en las que no se pueden inferir parámetros de la solicitud del usuario, GameGPT adopta un enfoque proactivo para resolverlos.
Reviewer atrae la atención del usuario lanzando un mensaje en la interfaz front-end y solicitando información adicional necesaria para los parámetros.
La ventaja de este enfoque interactivo es que garantiza la integridad de los detalles del argumento, incluso cuando el razonamiento automático es insuficiente.
Además, hay otro agente encargado de identificar las dependencias entre las tareas y construir un diagrama que encapsule estas relaciones. Una vez establecido el gráfico, se utiliza un algoritmo para recorrer y filtrar el gráfico, lo que da como resultado un orden de ejecución de tareas definido.
Este proceso garantiza que el modelo se pueda ejecutar de forma ordenada y sistemática de acuerdo con las dependencias de la tarea, lo que da como resultado un proceso de desarrollo coherente y estructurado.
Otro problema es que el uso de LLM para generar código largo conlleva mayores alucinaciones y el riesgo de redundancia. Para resolver este problema, los investigadores introdujeron un nuevo método para desacoplar el código que aparece en el diseño del juego, simplificando el proceso de razonamiento de LLM, mitigando así en gran medida las alucinaciones y la redundancia.
Este enfoque tampoco es difícil de entender: los investigadores dividirán el script esperado en muchos fragmentos de código más cortos para que LLM los procese. Este método de desacoplamiento simplifica enormemente el trabajo de LLM.
También existe un método de razonamiento eficaz llamado aprendizaje contextual, que también puede mitigar eficazmente las alucinaciones.
Además, otra técnica de eliminación de alucinaciones aplicada en GameGPT consiste en generar un conjunto de fragmentos de código K para cada tarea.
A continuación, estos fragmentos de código se prueban en un entorno virtual y se presentan al usuario al mismo tiempo. Tanto el proceso de prueba como los comentarios de los usuarios se utilizan para identificar y eliminar fragmentos de código problemáticos, dejando solo la opción más viable para ejecutar. Este enfoque también ayuda a reducir aún más la aparición de alucinaciones.
Además, los investigadores tienen una biblioteca interna con una gran cantidad de fragmentos de código diseñados para el desarrollo de juegos. Cada fragmento de código es comentado por un etiquetador, lo que proporciona una descripción clara de su propósito previsto.
En resumen, para que el código no sea redundante y no alucinante, los desarrolladores han hecho dos preparativos, antes y en el evento.
Al mismo tiempo, la biblioteca mencionada anteriormente también es un recurso valioso para ajustar el modelo. Revisión y mejora del código Una vez que el agente del motor de juegos genera el código, el agente de revisión de código realiza una revisión exhaustiva y una revisión del código base.
El agente lleva a cabo una evaluación exhaustiva en un esfuerzo por identificar cualquier instancia que pueda desviarse de la solicitud original o alucinaciones inesperadas en el código.
Después de una revisión exhaustiva, el agente no solo puede señalar posibles diferencias, sino también proporcionar sugerencias para mejorar el código, lo que da como resultado una versión más razonable.
Después del proceso de revisión, el código modificado, así como los comentarios del agente, se compartirán con el ingeniero del motor del juego, el agente y el usuario a través de la interfaz front-end. Si el usuario lo considera necesario, puede proporcionar sugerencias de modificación de código directamente a través de la interfaz front-end.
A continuación, estas recomendaciones se transmiten al agente de revisión de código, que las evalúa y las combina de forma selectiva para generar un enfoque colaborativo e iterativo para mejorar el código.
Finalmente, una vez que se genera el código y todo está hecho, la responsabilidad recae en el agente de pruebas del motor del juego, que se encarga de ejecutar el código generado.
En esta etapa, el agente también sigue la secuencia de ejecución establecida en la fase anterior.
El proceso de ejecución específico implica enviar el código de cada tarea individual al motor del juego, ejecutarlo y rastrearlo continuamente durante la ejecución, generando registros.
Después de completar todas las tareas especificadas en la secuencia de ejecución, el agente combina todos los registros generados a lo largo de la ejecución.
El resultado es un resumen conciso y completo que se presenta al usuario a través de una interfaz front-end.
Además, el agente de ingeniería de pruebas identifica e informa de la ocurrencia de cualquier retroceso observado durante la ejecución. Estos retrocesos sirven como indicadores clave de que la IA realiza más ajustes en el proceso de ejecución o en el código, lo que permite refinar todo el proceso y ayudar a producir un producto final perfecto.
Por último, veamos la fórmula del marco para que varios agentes trabajen al mismo tiempo:
En primer lugar, en GameGPT, cada agente tiene un sistema de memoria privada, y tiene acceso a contenido público compartido para obtener la información necesaria para guiar su proceso de toma de decisiones.
Para el agente i con el paso de tiempo t, este proceso se puede expresar como:
donde pθi corresponde al LLM o modelo experto relacionado con el agente i, Oit representa la salida o entregable del agente i en el intervalo de tiempo t, y Mit y Pt se refieren a todas las memorias privadas y registros públicos necesarios dentro del intervalo de tiempo t, respectivamente.
Debido a las peculiaridades de la industria del desarrollo de juegos y las limitaciones del gran modelo de lenguaje, la presencia de múltiples agentes con diferentes roles en GameGPT es crucial.
Dado que los ciclos de desarrollo de juegos suelen durar meses, confiar en un único agente con memoria completa e información contextual puede reducir en gran medida la eficiencia de los modelos de lenguaje, incluido LLM.
A medida que los proyectos se vuelven más complejos con el tiempo, este enfoque presenta desafíos de escalabilidad. Además, dada la limitación en el número de etiquetas manejadas por LLM, no es práctico usar un agente independiente con memoria completa en proyectos de desarrollo de juegos grandes.
Además, los problemas inherentes, como las alucinaciones y la redundancia, observados en los LLM resaltan la importancia de la colaboración entre múltiples agentes, especialmente aquellos con roles críticos.
Esta colaboración es importante para mitigar los desafíos planteados por las ilusiones y la redundancia de LLM.
Como resultado, GameGPT utiliza una serie de funciones diferentes para facilitar su funcionamiento, incluidas las responsabilidades a lo largo del ciclo de desarrollo del juego.
Estos roles incluyen el diseñador de contenido del juego, el gerente de desarrollo del juego, el auditor de programas, el ingeniero de desarrollo del juego, el auditor de tareas, así como el ingeniero del motor del juego, el auditor del código y el ingeniero de pruebas del motor del juego mencionados anteriormente.
A lo largo del proceso de desarrollo del juego, cada personaje asume diferentes tareas.
Recursos:
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
¡GameGPT entra en la producción de juegos! Juegos generados de forma totalmente automática, el tiempo se puede reducir cien veces
Fuente original: Shin Ji Yuan
¡Asombroso! El árbol de habilidades de GPT ha vuelto a crecer, ¡y ahora incluso puedes hacer el juego directamente!
Ya sabes, la era actual ya no es la era del pasado en la que puedes apoderarte del mercado haciendo un juego pequeño. El proceso de desarrollo de juegos de hoy en día es súper complejo.
Comencemos con la mano de obra, el personal de cada equipo de juego se cuenta en docenas o incluso cientos. Alguien es responsable de la programación, alguien es responsable del arte, alguien es responsable del mantenimiento, y así sucesivamente.
Cada juego también tiene una enorme base de código y una biblioteca de materiales.
Como resultado, desarrollar un gran juego requiere mucha gente y mucho tiempo para completarlo. Y este período de tiempo suele ser de varios años.
El equipo del juego desarrolló una obra maestra que la gente recordará y amará, y el presupuesto superará los 100 millones de dólares.
De lo contrario, la producción de juegos es una especie de electricidad generada con amor.
Ahora, ¡las cosas han cambiado!
Los investigadores han desarrollado un modelo llamado GameGPT, que puede integrar múltiples agentes de IA para automatizar algunos de los procesos en el desarrollo de juegos.
Y los diferentes agentes realizan sus propias funciones y trabajan de manera ordenada.
Hay agentes encargados de revisar el plan de diseño del juego y realizar las modificaciones y ajustes correspondientes; Algunos se encargan de traducir las tareas en código concreto; Algunos se encargan de comprobar el código generado en el paso anterior y revisar los resultados de la ejecución; También hay agentes encargados de verificar que todo el trabajo cumpla con las expectativas iniciales.
Los investigadores dicen que GameGPT puede simplificar algunos de los aspectos repetitivos y rígidos del proceso de desarrollo de juegos tradicionales, como las pruebas de código.
Un gran número de desarrolladores pueden liberarse del complicado trabajo de inspección y centrarse en enlaces de diseño más desafiantes que no pueden ser reemplazados por la IA.
Por supuesto, este documento se encuentra todavía en una fase relativamente preliminar. No hay resultados concretos ni experimentos que demuestren mejoras en el rendimiento.
En otras palabras, nadie ha desarrollado realmente un juego con GameGPT, y el modelo aún se encuentra en la etapa conceptual, y es difícil de evaluar hasta que haya resultados de aplicación específicos y datos cuantificables.
Sin embargo, siempre es una dirección en la que trabajar.
Algunos internautas dijeron que las ideas de la gente sobre LLM son algo sesgadas. Ahora, los investigadores tienen una herramienta que resuelve el 100% de los problemas de PNL, mientras que las personas solo se preocupan por automatizar ciertos flujos de trabajo.
Por ejemplo, imagina que el mundo del juego reaccionara a tus decisiones con más normalidad de lo que podrías juzgar en cinco minutos como un motor codificado basado en reglas.
Imagina si un juego pudiera improvisar misiones secundarias para ti en función de las decisiones que tomes (como masacrar al azar a los enemigos que veas en el camino, etc.).
Cuando los desarrolladores crean un sistema de este tipo, utilizan la ingeniería de sugerencias para guiar el LLM en lugar de codificar estas cosas.
Sin embargo, el propósito de esto no es ahorrar costos, sino hacer juegos en una etapa en la que antes no era posible hacer más juegos (¿no es un poco complicado?).
GameGPT
En primer lugar, echemos un vistazo al gran marco del modelo GameGPT: todo el proceso.
En el extremo izquierdo del proceso está el lado del usuario, que se ingresa a GameGPT, y luego el gerente de desarrollo y la revisión realizan una planificación preliminar.
Luego, los requisitos se envían a los ingenieros de desarrollo, así como a los ingenieros de motores de juegos, para realizar tareas específicas y generar código.
Finalmente, verifique si hay omisiones, envíelas de regreso al lado izquierdo y vuelva a ejecutar. De lo contrario, continúe hacia la derecha y el ingeniero a cargo de la inspección realizará la prueba.
** ¿Juego de desarrollo de IA? **
De hecho, los rudimentos de la historia de los juegos desarrollados por la IA pueden remontarse aún más atrás.
La aplicación de la IA en el desarrollo de juegos se remonta a juegos clásicos como StarCraft y Diablo. En ese momento, los desarrolladores necesitaban sistemas de IA para crear mundos virtuales interactivos y personajes.
Estos sistemas se han convertido en estándar para el desarrollo de este tipo de plataformas interactivas.
Las primeras investigaciones relacionadas con la IA en el desarrollo de juegos hicieron hincapié en el control de personajes no jugadores (NPC), y con el desarrollo de la tecnología de procesamiento del lenguaje natural (NLP), hubo algunos trabajos pioneros que utilizaron técnicas de aprendizaje profundo para generar niveles.
Una de las obras maestras es MarioGPT, que generó con éxito algunos de los niveles de Super Mario Bros. a través de un modelo GPT-2 afinado.
LLM ha hecho grandes avances este año, con buenos resultados tanto en PNL como en visión por computador (CV).
Sabemos que la formación de LLM es un proceso de varias etapas. La fase inicial consiste en entrenar estos modelos en un corpus extenso, facilitando la adquisición de competencias lingüísticas básicas.
A esto le sigue una etapa más importante, que consiste en afinar el modelo mediante la generación de datos de varias tareas de PLN a través de instrucciones. Este ajuste de instrucciones mejora la capacidad de generalización del modelo en una amplia gama de aplicaciones, lo que permite a LLM lograr un rendimiento sin errores en tareas que no se han realizado en entrenamientos anteriores.
Por último, la etapa de Aprendizaje por Refuerzo de Retroalimentación Humana (RLHF) garantiza la integridad estructural y la fiabilidad del modelo.
Además, los avances en LLM han promovido la automatización de los agentes en el proceso de desarrollo de software. Muchos estudios se han centrado en la cuestión de cómo desarrollar un agente basado en LLM que pueda realizar diferentes tareas.
Por ejemplo, AutoGPT utilizó agentes de LLM para gestionar ciertas tareas de toma de decisiones en el mundo real, mientras que HuggingGPT utilizó un único LLM como controlador para coordinar tareas de IA más complejas.
Aunque estos métodos se basan en un solo agente de LLM, todos agregan un revisor (el revisor en el diagrama de flujo anterior) para mejorar la decisión.
O tomemos AutoGPT como ejemplo, el modelo obtendrá algunas opiniones auxiliares del alumno supervisado para mejorar su propio rendimiento, y HuggingGPT también se puede conectar a GPT-4 para hacer que un revisor evalúe la precisión de la toma de decisiones.
Hay otros ejemplos, como MetaGPT, que introduce un marco multiagente que se puede utilizar para automatizar el desarrollo de varios programas.
Volviendo al desarrollo de juegos que discutimos hoy, debemos saber que, a diferencia del desarrollo de software general, la industria del desarrollo de juegos debe mantenerse al día con las tendencias, por lo que todo el proceso de desarrollo debe ser más preciso y conciso para lograr la mejor eficiencia.
Además, ajustar y usar un solo LLM para servir a todo el ciclo de desarrollo del juego sin ilusiones y con alta precisión es poco práctico y costoso.
Por lo tanto, el marco de la IA de desarrollo de juegos requiere la participación de múltiples revisores, lo que puede aliviar eficazmente las tendencias alucinatorias inherentes a los modelos de lenguaje.
Los investigadores también descubrieron que los modelos de lenguaje tienen otra limitación en el desarrollo de juegos: la redundancia. LLM puede generar tareas innecesarias y poco informativas o fragmentos de código cuando se construye el juego.
Para abordar eficazmente el problema de la ilusión y la redundancia, el protagonista de hoy, GameGPT, adopta estratégicamente una variedad de enfoques para el problema, incluida la colaboración dual, el ajuste de instrucciones a través de vocabularios internos y el desacoplamiento del código.
Cabe destacar que la colaboración dual implica la interacción entre LLM y pequeños modelos de aprendizaje profundo, así como la participación colaborativa entre el agente responsable de la ejecución y el agente revisor.
Los investigadores dicen que estas sinergias han demostrado ser efectivas para mitigar la ilusión y la redundancia de GameGPT.
Introducción al método
A continuación, los investigadores diseccionaron la innovación de GameGPT de todo el proceso.
En primer lugar, durante la fase de diseño del juego, después de recibir una solicitud del usuario, las tareas de GameGPT incluyen generar un plan de desarrollo para todo el juego. Esta fase de planificación es uno de los pasos clave que afecta en gran medida al progreso continuo de todo el proceso de desarrollo.
Esta fase es planificada por un gerente de desarrollo de juegos basado en LLM que elabora un plan inicial y luego lo divide en una lista de tareas.
Vale la pena señalar que, debido a las limitaciones inherentes al LLM, este plan inicial a menudo presenta alucinaciones, lo que resulta en tareas inesperadas, incluidas tareas poco informativas o innecesariamente redundantes.
Para abordar estos problemas, los investigadores propusieron cuatro estrategias que podrían mitigar estos desafíos que eran ortogonales entre sí y que podrían realizarse en capas para obtener mejores resultados.
Escenario uno: Clasifique las solicitudes entrantes para identificar el tipo de juego. Actualmente, el marco GameGPT admite el desarrollo de cinco géneros de juegos diferentes, a saber: acción, estrategia, juegos de rol, simulación y aventura.
Para cada tipo, los investigadores proporcionan plantillas de planificación estandarizadas que guían a los agentes del gerente de desarrollo de juegos a través de las plantillas con información relevante.
Al adoptar este enfoque, la frecuencia de tareas redundantes se reduce significativamente, mientras que la probabilidad de que ocurran alucinaciones.
Estrategia dos: implica la participación del agente examinador del programa, que es otro agente basado en LLM. Este agente opera con un diseño cuidadoso para proporcionar una revisión integral del plan de la misión.
Su objetivo principal es minimizar la aparición de alucinaciones y redundancia. Este programa de evaluación de agentes proporciona retroalimentación para mejorar y aumentar su precisión, eficiencia y simplicidad.
Al mismo tiempo, las instrucciones generadas en esta parte se pueden utilizar como nueva entrada para el agente del gerente de desarrollo del juego, lo que hace que el plan de tareas sea más preciso y perfecto.
Estrategia 3: Ajustar el propio LLM del agente del director de desarrollo del juego a través de instrucciones especiales para planificar mejor a nivel de desarrollo del juego. El propósito de este proceso de ajuste fino es permitir que el modelo produzca un plan que sea preciso y conciso.
Para mayor comodidad, el equipo de investigación recopiló e integró un conjunto de datos interno que incluía muchas combinaciones de entradas y salidas. Si bien estas combinaciones no se ajustan al formato estándar en longitud o estructura, todas giran en torno a los requisitos del desarrollo de juegos.
Al adoptar este enfoque, los investigadores cerraron efectivamente la brecha entre las habilidades lingüísticas generales de LLM y las habilidades de planificación del desarrollo de juegos.
Estrategia 4: "Red de seguridad" en la etapa de planificación. A lo largo del proceso de planificación, el Agente Game Development Manager siempre comparte los resultados provisionales con el usuario en la interfaz front-end, permitiendo que el resto de agentes sepan en todo momento qué desarrollo está en curso.
Para mejorar esto, los investigadores integraron un enfoque interactivo que permite a los usuarios revisar, corregir y mejorar activamente los planes en función de sus expectativas. Este enfoque también garantiza la coherencia entre el plan de diseño y las necesidades del usuario.
Con estas estrategias fuera del camino, echemos un vistazo a las ventajas de GameGPT.
Entonces, para garantizar la precisión en esta etapa, los investigadores crearon un agente llamado ingeniero de desarrollo de juegos. El agente consta de dos modelos que trabajan juntos para participar en el proceso de clasificación de tareas.
Este enfoque colaborativo mejora la precisión y la eficacia de la identificación de tareas. Al mismo tiempo, con el fin de evitar la aparición de ilusiones de LLM y mejorar la precisión de la clasificación de tareas, los investigadores proporcionaron una lista de tipos de tareas que pueden aparecer en el desarrollo de juegos.
Para clasificar mejor esto, adoptaron el modelo BERT.
El modelo BERT se ha entrenado completamente con un conjunto de datos interno. Este conjunto de datos contiene elementos de datos adaptados a la tarea de desarrollo del juego. La entrada se extrae de una lista predeterminada y la salida corresponde a la categoría especificada de la tarea.
En esta etapa se lleva a cabo la revisión de los tipos y parámetros de tareas, y se introduce un agente llamado revisor de tareas, que es el principal responsable de la identificación de cada categoría y de si los parámetros son razonables.
El proceso de revisión incluye revisar si el tipo de tarea está dentro de un rango predeterminado y si es la tarea más adecuada. Al mismo tiempo, también comprueba la lista de parámetros para ver si se alinea con la tarea.
En algunos escenarios, como algunas situaciones basadas en información contextual de tareas, o en las que no se pueden inferir parámetros de la solicitud del usuario, GameGPT adopta un enfoque proactivo para resolverlos.
Reviewer atrae la atención del usuario lanzando un mensaje en la interfaz front-end y solicitando información adicional necesaria para los parámetros.
La ventaja de este enfoque interactivo es que garantiza la integridad de los detalles del argumento, incluso cuando el razonamiento automático es insuficiente.
Además, hay otro agente encargado de identificar las dependencias entre las tareas y construir un diagrama que encapsule estas relaciones. Una vez establecido el gráfico, se utiliza un algoritmo para recorrer y filtrar el gráfico, lo que da como resultado un orden de ejecución de tareas definido.
Este proceso garantiza que el modelo se pueda ejecutar de forma ordenada y sistemática de acuerdo con las dependencias de la tarea, lo que da como resultado un proceso de desarrollo coherente y estructurado.
Otro problema es que el uso de LLM para generar código largo conlleva mayores alucinaciones y el riesgo de redundancia. Para resolver este problema, los investigadores introdujeron un nuevo método para desacoplar el código que aparece en el diseño del juego, simplificando el proceso de razonamiento de LLM, mitigando así en gran medida las alucinaciones y la redundancia.
Este enfoque tampoco es difícil de entender: los investigadores dividirán el script esperado en muchos fragmentos de código más cortos para que LLM los procese. Este método de desacoplamiento simplifica enormemente el trabajo de LLM.
También existe un método de razonamiento eficaz llamado aprendizaje contextual, que también puede mitigar eficazmente las alucinaciones.
Además, otra técnica de eliminación de alucinaciones aplicada en GameGPT consiste en generar un conjunto de fragmentos de código K para cada tarea.
Además, los investigadores tienen una biblioteca interna con una gran cantidad de fragmentos de código diseñados para el desarrollo de juegos. Cada fragmento de código es comentado por un etiquetador, lo que proporciona una descripción clara de su propósito previsto.
En resumen, para que el código no sea redundante y no alucinante, los desarrolladores han hecho dos preparativos, antes y en el evento.
Al mismo tiempo, la biblioteca mencionada anteriormente también es un recurso valioso para ajustar el modelo. Revisión y mejora del código Una vez que el agente del motor de juegos genera el código, el agente de revisión de código realiza una revisión exhaustiva y una revisión del código base.
El agente lleva a cabo una evaluación exhaustiva en un esfuerzo por identificar cualquier instancia que pueda desviarse de la solicitud original o alucinaciones inesperadas en el código.
Después de una revisión exhaustiva, el agente no solo puede señalar posibles diferencias, sino también proporcionar sugerencias para mejorar el código, lo que da como resultado una versión más razonable.
Después del proceso de revisión, el código modificado, así como los comentarios del agente, se compartirán con el ingeniero del motor del juego, el agente y el usuario a través de la interfaz front-end. Si el usuario lo considera necesario, puede proporcionar sugerencias de modificación de código directamente a través de la interfaz front-end.
A continuación, estas recomendaciones se transmiten al agente de revisión de código, que las evalúa y las combina de forma selectiva para generar un enfoque colaborativo e iterativo para mejorar el código.
Finalmente, una vez que se genera el código y todo está hecho, la responsabilidad recae en el agente de pruebas del motor del juego, que se encarga de ejecutar el código generado.
En esta etapa, el agente también sigue la secuencia de ejecución establecida en la fase anterior.
El proceso de ejecución específico implica enviar el código de cada tarea individual al motor del juego, ejecutarlo y rastrearlo continuamente durante la ejecución, generando registros.
Después de completar todas las tareas especificadas en la secuencia de ejecución, el agente combina todos los registros generados a lo largo de la ejecución.
El resultado es un resumen conciso y completo que se presenta al usuario a través de una interfaz front-end.
Además, el agente de ingeniería de pruebas identifica e informa de la ocurrencia de cualquier retroceso observado durante la ejecución. Estos retrocesos sirven como indicadores clave de que la IA realiza más ajustes en el proceso de ejecución o en el código, lo que permite refinar todo el proceso y ayudar a producir un producto final perfecto.
Por último, veamos la fórmula del marco para que varios agentes trabajen al mismo tiempo:
En primer lugar, en GameGPT, cada agente tiene un sistema de memoria privada, y tiene acceso a contenido público compartido para obtener la información necesaria para guiar su proceso de toma de decisiones.
Para el agente i con el paso de tiempo t, este proceso se puede expresar como:
Debido a las peculiaridades de la industria del desarrollo de juegos y las limitaciones del gran modelo de lenguaje, la presencia de múltiples agentes con diferentes roles en GameGPT es crucial.
Dado que los ciclos de desarrollo de juegos suelen durar meses, confiar en un único agente con memoria completa e información contextual puede reducir en gran medida la eficiencia de los modelos de lenguaje, incluido LLM.
A medida que los proyectos se vuelven más complejos con el tiempo, este enfoque presenta desafíos de escalabilidad. Además, dada la limitación en el número de etiquetas manejadas por LLM, no es práctico usar un agente independiente con memoria completa en proyectos de desarrollo de juegos grandes.
Además, los problemas inherentes, como las alucinaciones y la redundancia, observados en los LLM resaltan la importancia de la colaboración entre múltiples agentes, especialmente aquellos con roles críticos.
Esta colaboración es importante para mitigar los desafíos planteados por las ilusiones y la redundancia de LLM.
Como resultado, GameGPT utiliza una serie de funciones diferentes para facilitar su funcionamiento, incluidas las responsabilidades a lo largo del ciclo de desarrollo del juego.
Estos roles incluyen el diseñador de contenido del juego, el gerente de desarrollo del juego, el auditor de programas, el ingeniero de desarrollo del juego, el auditor de tareas, así como el ingeniero del motor del juego, el auditor del código y el ingeniero de pruebas del motor del juego mencionados anteriormente.
A lo largo del proceso de desarrollo del juego, cada personaje asume diferentes tareas.
Recursos: