Modelos y plataformas de IA

POKELLMON: Un Agente de Paridad Humana con LLM para Batallas de Pokémon

mm
Añade Unite.AI a tus fuentes preferidas en Google

Los Modelos de Lenguaje Grande y el Inteligencia Artificial Generativa han demostrado un éxito sin precedentes en una amplia variedad de tareas de Procesamiento de Lenguaje Natural. Después de conquistar el campo del NLP, el próximo desafío para los investigadores y desarrolladores de GenAI y LLM es explorar cómo los modelos de lenguaje grande pueden actuar de manera autónoma en el mundo real con una brecha de generación extendida desde el texto hasta la acción, lo que representa un paradigma significativo en la búsqueda de la Inteligencia Artificial General. Los juegos en línea se consideran una base de prueba adecuada para desarrollar agentes corporales de LLM que interactúan con el entorno visual de una manera que un humano lo haría.

Por ejemplo, en un juego de simulación en línea popular como Minecraft, se pueden emplear agentes de toma de decisiones para ayudar a los jugadores a explorar el mundo y desarrollar habilidades para hacer herramientas y resolver tareas. Otro ejemplo de agentes de LLM que interactúan con el entorno visual se puede experimentar en otro juego en línea, The Sims, donde los agentes han demostrado un éxito notable en interacciones sociales y exhiben un comportamiento que se asemeja al de los humanos. Sin embargo, en comparación con los juegos existentes, los juegos de batalla táctica podrían ser una mejor opción para evaluar la capacidad de los modelos de lenguaje grande para jugar juegos virtuales. La razón principal por la que los juegos tácticos son una mejor referencia es que la tasa de victoria se puede medir directamente, y los oponentes consistentes, incluidos jugadores humanos y AI, siempre están disponibles.

Basándose en lo anterior, POKELLMON tiene como objetivo ser el primer agente corporal que logra un rendimiento de nivel humano en juegos tácticos, similar al que se observa en las batallas de Pokémon. En su núcleo, el marco de POKELLMON incorpora tres estrategias principales.

  1. Aprendizaje de refuerzo en contexto que consume retroalimentación basada en texto derivada de las batallas instantáneamente para refinar la política de manera iterativa.
  2. Generación aumentada con conocimiento que recupera conocimiento externo para contrarrestar las alucinaciones, lo que permite al agente actuar adecuadamente y cuando es necesario.
  3. Generación de acción consistente para minimizar la situación de conmutación de pánico cuando el agente se encuentra con un oponente poderoso y quiere evitar enfrentarlo.

Este artículo tiene como objetivo cubrir el marco de POKELLMON en profundidad, y exploramos el mecanismo, la metodología, la arquitectura del marco, así como su comparación con los marcos de estado del arte. También hablaremos sobre cómo el marco de POKELLMON demuestra estrategias de batalla similares a las humanas y habilidades de toma de decisiones en tiempo real, logrando una tasa de victoria respetable de casi el 50%. Así que comencemos.

POKELLMON: Un Agente de Paridad Humana con LLM para Batallas de Pokémon

El crecimiento en las capacidades y la eficiencia de los Modelos de Lenguaje Grande y los marcos de Inteligencia Artificial Generativa en los últimos años ha sido nada menos que asombroso, especialmente en tareas de NLP. Recientemente, los desarrolladores y los investigadores de IA han estado trabajando en formas de hacer que la IA Generativa y los LLM sean más prominentes en escenarios del mundo real con la capacidad de actuar de manera autónoma en el mundo físico. Para lograr este rendimiento autónomo en situaciones físicas y del mundo real, los investigadores y desarrolladores consideran que los juegos son una base de prueba adecuada para desarrollar agentes corporales de LLM que interactúan con el entorno virtual de una manera que se asemeja al comportamiento humano.

Anteriormente, los desarrolladores han intentado desarrollar agentes corporales de LLM en juegos de simulación virtuales como Minecraft y The Sims, aunque se cree que los juegos tácticos como Pokémon podrían ser una mejor opción para desarrollar estos agentes. Las batallas de Pokémon permiten a los desarrolladores evaluar la capacidad de un entrenador para batallar en juegos de Pokémon conocidos y ofrecen varias ventajas sobre otros juegos tácticos. Dado que los espacios de acción y estado son discretos, se pueden traducir a texto sin pérdida. La siguiente figura ilustra una batalla de Pokémon típica donde el jugador se le pide que genere una acción para realizar en cada turno dado el estado actual de los Pokémon de cada lado. Los usuarios tienen la opción de elegir entre cinco Pokémon diferentes y hay un total de cuatro movimientos en el espacio de acción. Además, el juego ayuda a aliviar el estrés en el tiempo de inferencia y los costos de inferencia para los LLM, ya que el formato basado en turnos elimina la necesidad de un juego intensivo. Como resultado, el rendimiento depende principalmente de la capacidad de razonamiento del modelo de lenguaje grande.

POKELLMON: Metodología y Arquitectura

El marco y la arquitectura generales del marco de POKELLMON se ilustran en la siguiente imagen.

Durante cada turno, el marco de POKELLMON utiliza acciones y retroalimentación basada en texto previas para refinar la política de manera iterativa, así como para aumentar la información del estado actual con conocimiento externo como efectos de habilidad/movimiento o relación de ventaja/debilidad. Para la información dada como entrada, el marco de POKELLMON genera múltiples acciones de manera independiente y luego selecciona las más consistentes como la salida final.

Aprendizaje de Refuerzo en Contexto

Los jugadores humanos y los atletas a menudo toman decisiones no solo en función del estado actual, sino que también reflexionan sobre la retroalimentación de las acciones previas, así como las experiencias de otros jugadores. Sería seguro decir que la retroalimentación positiva es lo que ayuda a un jugador a aprender de sus errores y se abstiene de cometer el mismo error una y otra vez. Sin una retroalimentación adecuada, los agentes de POKELLMON podrían aferrarse a la misma acción de error, como se demuestra en la siguiente figura.

Como se puede observar, el agente en el juego utiliza un movimiento basado en agua contra un personaje de Pokémon que tiene la habilidad “Piel Seca”, lo que le permite anular el daño contra los ataques basados en agua. El juego intenta alertar al usuario con el mensaje “Inmune” en la pantalla, lo que podría hacer que un jugador humano reconsiderara sus acciones y las cambiara, incluso sin saber sobre “Piel Seca”. Sin embargo, no se incluye en la descripción del estado para el agente, lo que resulta en que el agente cometa el mismo error una y otra vez.

Para asegurarse de que el agente de POKELLMON aprenda de sus errores anteriores, el marco implementa el enfoque de Aprendizaje de Refuerzo en Contexto. El aprendizaje de refuerzo es un enfoque popular en el aprendizaje automático, y ayuda a los desarrolladores a refinar la política, ya que requiere recompensas numéricas para evaluar las acciones. Dado que los modelos de lenguaje grande tienen la capacidad de interpretar y comprender el lenguaje, las descripciones basadas en texto han surgido como una nueva forma de recompensa para los LLM. Al incluir retroalimentación basada en texto de las acciones previas, el agente de POKELLMON es capaz de refinar su política de manera iterativa e instantánea, a saber, el Aprendizaje de Refuerzo en Contexto. El marco de POKELLMON desarrolla cuatro tipos de retroalimentación,

  1. El daño real causado por un movimiento de ataque en función de la diferencia en HP entre dos turnos consecutivos.
  2. La efectividad de los movimientos de ataque. La retroalimentación indica la efectividad del ataque en términos de no tener efecto o inmune, ineficaz o super-eficaz debido a los efectos de habilidad/movimiento o ventaja de tipo.
  3. El orden de prioridad para ejecutar un movimiento. Dado que los estadísticas precisas para el personaje de Pokémon oponente no están disponibles, la retroalimentación del orden de prioridad proporciona una estimación aproximada de velocidad.
  4. El efecto real de los movimientos ejecutados en el oponente. Tanto los movimientos de ataque como los de estado pueden resultar en resultados como recuperar HP, aumentar estadísticas o debilitar, infligir condiciones como congelación, quemaduras o envenenamiento.

Además, el uso del enfoque de Aprendizaje de Refuerzo en Contexto resulta en un aumento significativo en el rendimiento, como se demuestra en la siguiente figura.

Cuando se compara con el rendimiento original en GPT-4, la tasa de victoria aumenta en casi un 10% junto con un aumento del 13% en la puntuación de la batalla. Además, como se demuestra en la siguiente figura, el agente comienza a analizar y cambiar su acción si los movimientos ejecutados en los movimientos anteriores no fueron capaces de cumplir con las expectativas.

Generación Aumentada con Conocimiento o KAG

Aunque la implementación del Aprendizaje de Refuerzo en Contexto ayuda con las alucinaciones hasta cierto punto, aún puede resultar en consecuencias fatales antes de que el agente reciba la retroalimentación. Por ejemplo, si el agente decide batallar contra un Pokémon de tipo fuego con un Pokémon de tipo hierba, el primero probablemente ganará en un solo turno. Para reducir las alucinaciones aún más y mejorar la capacidad de toma de decisiones del agente, el marco de POKELLMON implementa el enfoque de Generación Aumentada con Conocimiento o KAG, una técnica que emplea conocimiento externo para aumentar la generación.

Ahora, cuando el modelo genera los cuatro tipos de retroalimentación mencionados anteriormente, anota los movimientos y la información de los Pokémon, lo que permite al agente inferir la relación de ventaja de tipo por sí mismo. En un intento de reducir la alucinación contenida en el razonamiento aún más, el marco de POKELLMON anota explícitamente la ventaja de tipo y la debilidad del Pokémon oponente y del Pokémon del agente con descripciones adecuadas. Además, es desafiante memorizar los movimientos y habilidades con efectos distintos de los Pokémon, especialmente dado que hay muchos. La siguiente tabla demuestra los resultados de la generación aumentada con conocimiento. Es digno de destacar que al implementar el enfoque de Generación Aumentada con Conocimiento, el marco de POKELLMON es capaz de aumentar la tasa de victoria en un 20% desde el 36% existente hasta el 55%.

Además, los desarrolladores observaron que cuando el agente fue provisto con conocimiento externo de los Pokémon, comenzó a utilizar movimientos especiales en el momento adecuado, como se demuestra en la siguiente imagen.

Generación de Acción Consistente

Los modelos existentes demuestran que la implementación de enfoques de razonamiento y generación puede mejorar la capacidad de los LLM para resolver tareas complejas. En lugar de generar una acción de un solo disparo, el marco de POKELLMON evalúa estrategias de generación existentes, incluyendo CoT o Cadena de Pensamiento, ToT o Árbol de Pensamiento, y Autoconsistencia. Para la Cadena de Pensamiento, el agente genera inicialmente un pensamiento que analiza el escenario de batalla actual y produce una acción condicionada al pensamiento. Para la Autoconsistencia, el agente genera tres acciones y selecciona la salida que ha recibido la mayor cantidad de votos. Finalmente, para el enfoque de Árbol de Pensamiento, el marco genera tres acciones, al igual que en el enfoque de autoconsistencia, pero selecciona la que considera la mejor después de evaluarlas todas por sí mismo. La siguiente tabla resume el rendimiento de los enfoques de generación.

Solo hay una acción para cada turno, lo que implica que incluso si el agente decide cambiar y el oponente decide atacar, el Pokémon que cambia tomará el daño. Normalmente, el agente decide cambiar porque quiere cambiar a un Pokémon que tenga ventaja de tipo, y así el Pokémon que cambia puede sostener el daño, ya que es resistente al tipo del movimiento del oponente. Sin embargo, como se mencionó anteriormente, para el agente con razonamiento de CoT, incluso si el oponente poderoso fuerza varias rotaciones, actúa de manera inconsistente con la misión, porque podría no querer cambiar a ese Pokémon, sino a varios Pokémon y volver atrás, lo que llamamos conmutación de pánico. La conmutación de pánico elimina la oportunidad de tomar movimientos y, por lo tanto, derrotas.

POKELLMON: Resultados y Experimentos

Antes de discutir los resultados, es esencial que entendamos el entorno de batalla. Al comienzo de un turno, el entorno recibe un mensaje de solicitud de acción del servidor y responderá a este mensaje al final, que también contiene el resultado de la ejecución del último turno.

  1. Primero, analiza el mensaje y actualiza las variables de estado locales, 2. luego traduce las variables de estado en texto. La descripción de texto tiene principalmente cuatro partes: 1. Información del equipo propio, que contiene los atributos de los Pokémon en el campo y fuera del campo (no utilizados).
  2. Información del equipo oponente, que contiene los atributos de los Pokémon oponentes en el campo y fuera del campo (algunos datos son desconocidos).
  3. Información del campo de batalla, que incluye el clima, los peligros de entrada y el terreno.
  4. Información del registro de turnos históricos, que contiene las acciones previas de ambos Pokémon y se almacena en una cola de registro. Los LLM toman el estado traducido como entrada y producen acciones para el próximo paso. La acción se envía al servidor y se ejecuta al mismo tiempo que la acción realizada por el humano.

Batalla Contra Jugadores Humanos

La siguiente tabla ilustra el rendimiento del agente de POKELLMON contra jugadores humanos.

Como se puede observar, el agente de POKELLMON entrega un rendimiento comparable al de los jugadores de la escalera que tienen una tasa de victoria más alta en comparación con un jugador invitado, junto con una amplia experiencia en batallas.

Análisis de Habilidad de Batalla

El marco de POKELLMON rara vez comete un error al elegir el movimiento efectivo y cambia a otro Pokémon adecuado debido a la estrategia de Generación Aumentada con Conocimiento.

Como se muestra en el ejemplo anterior, el agente utiliza solo un Pokémon para derrotar a todo el equipo oponente, ya que es capaz de elegir diferentes movimientos de ataque, los que son más efectivos para el oponente en esa situación. Además, el marco de POKELLMON también exhibe una estrategia de desgaste similar a la humana. Algunos Pokémon tienen un movimiento “Tóxico” que puede infligir daño adicional en cada turno, mientras que el movimiento “Recuperar” le permite recuperar su HP. Aprovechando lo mismo, el agente primero envenena al Pokémon oponente y utiliza el movimiento de Recuperar para evitar desmayarse.

Pensamientos Finales

En este artículo, hemos hablado sobre POKELLMON, un enfoque que permite a los modelos de lenguaje grande jugar batallas de Pokémon contra humanos de manera autónoma. POKELLMON tiene como objetivo ser el primer agente corporal que logra un rendimiento de nivel humano en juegos tácticos, similar al que se observa en las batallas de Pokémon. El marco de POKELLMON introduce tres estrategias clave: Aprendizaje de Refuerzo en Contexto, que consume la retroalimentación basada en texto como “recompensa” para refinar la política de generación de acción sin entrenamiento, Generación Aumentada con Conocimiento que recupera conocimiento externo para combatir las alucinaciones y asegura que el agente actúe de manera oportuna y adecuada, y Generación de Acción Consistente que evita el problema de conmutación de pánico cuando se enfrenta a oponentes poderosos.

Kunal Kejriwal es un ingeniero de backend especializado en Python, PostgreSQL, Redis e infraestructura en la nube en GCP y AWS. Con tres años de experiencia construyendo y escalando sistemas de producción, escribe sobre infraestructura de IA, sistemas distribuidos y la arquitectura detrás del despliegue de cargas de trabajo de aprendizaje automático.