toco POKELLMON: um agente de paridade humana para batalhas de Pokémon com LLMs - Unite.AI
Entre em contato

Inteligência artificial

POKELLMON: um agente de paridade humana para batalhas Pokémon com LLMs

mm

Publicado

 on

POKELLMON: um agente de paridade humana para batalhas Pokémon com LLMs

Grandes modelos de linguagem e IA generativa demonstraram um sucesso sem precedentes em uma ampla gama de tarefas de processamento de linguagem natural. Depois de conquistar o campo da PNL, o próximo desafio para os pesquisadores GenAI e LLM é explorar como grandes modelos de linguagem podem agir de forma autônoma no mundo real com um intervalo de geração estendido entre o texto e a ação, representando assim um paradigma significativo na busca pela Inteligência Artificial Geral. . Os jogos online são considerados uma base de teste adequada para desenvolver agentes incorporados em grandes modelos de linguagem que interagem com o ambiente visual da mesma forma que um ser humano faria. 

Por exemplo, em um popular jogo de simulação online, Minecraft, agentes de tomada de decisão podem ser empregados para ajudar os jogadores a explorar o mundo, juntamente com o desenvolvimento de habilidades para criar ferramentas e resolver tarefas. Outro exemplo de agentes LLM interagindo com o ambiente visual pode ser experimentado em outro jogo online, The Sims, onde os agentes demonstraram notável sucesso em interações sociais e exibem comportamentos que se assemelham aos humanos. No entanto, em comparação com os jogos existentes, os jogos de batalha táctica podem revelar-se uma escolha melhor para avaliar a capacidade de grandes modelos de linguagem para jogar jogos virtuais. A principal razão pela qual os jogos táticos são uma referência melhor é porque a taxa de vitórias pode ser medida diretamente e oponentes consistentes, incluindo jogadores humanos e IA, estão sempre disponíveis. 

Com base no mesmo, POKELLMON pretende ser o primeiro agente incorporado do mundo que atinge desempenho de nível humano em jogos táticos, semelhante ao testemunhado nas batalhas Pokémon. Basicamente, a estrutura POKELLMON incorpora três estratégias principais.

  1. Aprendizagem por reforço no contexto que consome feedback baseado em texto derivado de batalhas instantaneamente para refinar a política iterativamente. 
  2. Geração aumentada de conhecimento que recupera conhecimento externo para combater alucinações, permitindo ao agente agir adequadamente e quando necessário. 
  3. Geração de ações consistentes para minimizar a situação de pânico quando o agente se depara com um jogador forte e deseja evitar enfrentá-lo. 

Este artigo tem como objetivo cobrir o framework POKELLMON em profundidade, e exploramos o mecanismo, a metodologia, a arquitetura do framework juntamente com sua comparação com frameworks do estado da arte. Também falaremos sobre como a estrutura POKELLMON demonstra estratégias de batalha notáveis, semelhantes às humanas, e habilidades de tomada de decisão em tempo real, alcançando uma taxa de vitória respeitável de quase 50%. Então vamos começar.

POKELLMON: um agente de paridade humana com LLM para batalhas Pokémon

O crescimento nas capacidades e na eficiência dos grandes modelos de linguagem e das estruturas de IA generativa nos últimos anos tem sido maravilhoso, especialmente em tarefas de PNL. Recentemente, desenvolvedores e pesquisadores de IA têm trabalhado em maneiras de tornar a IA generativa e os LLMs mais proeminentes em cenários do mundo real, com a capacidade de agir de forma autônoma no mundo físico. Para alcançar esse desempenho autônomo em situações físicas e do mundo real, pesquisadores e desenvolvedores consideram os jogos um banco de testes adequado para desenvolver agentes incorporados ao LLM com a capacidade de interagir com o ambiente virtual de uma maneira que se assemelhe ao comportamento humano. 

Anteriormente, os desenvolvedores tentaram desenvolver agentes incorporados ao LLM em jogos de simulação virtual como Minecraft e Sims, embora se acredite que jogos táticos como Pokémon possam ser uma escolha melhor para desenvolver esses agentes. As batalhas Pokémon permitem que os desenvolvedores avaliem a habilidade de um treinador para batalhar em jogos Pokémon conhecidos e oferecem várias vantagens sobre outros jogos táticos. Como os espaços de ação e de estado são discretos, ele pode ser traduzido em texto sem qualquer perda. A figura a seguir ilustra uma batalha típica de Pokémon onde o jogador é solicitado a gerar uma ação a ser executada a cada turno, dado o estado atual do Pokémon de cada lado. Os usuários têm a opção de escolher entre cinco Pokémons diferentes e há um total de quatro movimentos no espaço de ação. Além disso, o jogo ajuda a aliviar o estresse no tempo de inferência e nos custos de inferência para LLMs, uma vez que o formato baseado em turnos elimina a necessidade de uma jogabilidade intensiva. Como resultado, o desempenho depende principalmente da capacidade de raciocínio do modelo de linguagem grande. Finalmente, embora os jogos de batalha Pokémon pareçam simples, as coisas são um pouco mais complexas na realidade e altamente estratégicas. Um jogador experiente não seleciona aleatoriamente um Pokémon para a batalha, mas leva em consideração vários fatores, incluindo tipo, estatísticas, habilidades, espécies, itens, movimentos dos Pokémons, dentro e fora do campo de batalha. Além disso, em uma batalha aleatória, os Pokémons são selecionados aleatoriamente de um conjunto de mais de mil personagens, cada um com seu próprio conjunto de personagens distintos com capacidade de raciocínio e conhecimento de Pokémon. 

POKELLMON: Metodologia e Arquitetura

A estrutura geral e a arquitetura da estrutura POKELLMON são ilustradas na imagem a seguir. 

Durante cada turno, a estrutura POKELLMON usa ações anteriores e seu feedback baseado em texto correspondente para refinar a política iterativamente, juntamente com o aumento das informações do estado atual com conhecimento externo, como efeitos de habilidade/movimento ou relação vantagem/fraqueza. Para informações fornecidas como entrada, a estrutura POKELLMON gera múltiplas ações de forma independente e, em seguida, seleciona as mais consistentes como saída final. 

Aprendizagem por reforço no contexto

Jogadores e atletas humanos muitas vezes tomam decisões não apenas com base no estado atual, mas também refletem no feedback de ações anteriores, bem como nas experiências de outros jogadores. Seria seguro dizer que o feedback positivo é o que ajuda um jogador a aprender com seus erros e o impede de cometer o mesmo erro repetidamente. Sem o feedback adequado, os agentes POKELLMON podem seguir a mesma ação de erro, conforme demonstrado na figura a seguir. 

Como pode ser observado, o agente do jogo utiliza um movimento à base de água contra um personagem Pokémon que possui a habilidade “Pele Seca”, permitindo anular o dano contra ataques à base de água. O jogo tenta alertar o usuário exibindo a mensagem “Imune” na tela que pode levar um jogador humano a reconsiderar suas ações e alterá-las, mesmo sem saber sobre “Pele Seca”. No entanto, não está incluído na descrição do estado do agente, fazendo com que o agente cometa o mesmo erro novamente. 

Para garantir que o agente POKELLMON aprenda com seus erros anteriores, a estrutura implementa a abordagem de Aprendizagem por Reforço no Contexto. O aprendizado por reforço é uma abordagem popular em aprendizado de máquina e ajuda os desenvolvedores na política de refinamento, pois requer recompensas numéricas para avaliar as ações. Desde grandes modelos de linguagem têm a capacidade de interpretar e compreender a linguagem, as descrições baseadas em texto surgiram como uma nova forma de recompensa para os LLMs. Ao incluir feedback baseado em texto das ações anteriores, o agente POKELLMON é capaz de refinar de forma iterativa e instantânea sua política, ou seja, o Aprendizado por Reforço em Contexto. A estrutura POKELLMON desenvolve quatro tipos de feedback,

  1. O dano real causado por um movimento de ataque com base na diferença de HP em dois turnos consecutivos. 
  2. A eficácia dos movimentos de ataque. O feedback indica a eficácia do ataque em termos de não ter efeito ou ser imune, ineficaz ou supereficaz devido a efeitos de habilidade/movimento ou vantagem de tipo. 
  3. A ordem de prioridade para executar um movimento. Como as estatísticas precisas do personagem Pokémon adversário não estão disponíveis, o feedback da ordem de prioridade fornece uma estimativa aproximada da velocidade. 
  4. O efeito real dos movimentos executados no oponente. Tanto os movimentos de ataque quanto o status podem resultar em resultados como recuperação de HP, aumento de estatísticas ou debuffs, infligir condições como congelamento, queimaduras ou veneno. 

Além disso, o uso da abordagem de Aprendizagem por Reforço em Contexto resulta em um aumento significativo no desempenho, conforme demonstrado na figura a seguir. 

Quando comparada com o desempenho original no GPT-4, a taxa de vitórias aumenta quase 10% junto com um aumento de quase 13% na pontuação da batalha. Além disso, conforme demonstrado na figura a seguir, o agente começa a analisar e alterar sua ação caso os movimentos executados nos movimentos anteriores não tenham correspondido às expectativas. 

Geração Aumentada de Conhecimento ou KAG

Embora a implementação do Aprendizado por Reforço no Contexto ajude até certo ponto com alucinações, ainda pode resultar em consequências fatais antes que o agente receba o feedback. Por exemplo, se o agente decidir lutar contra um Pokémon do tipo fogo com um Pokémon do tipo grama, o primeiro provavelmente vencerá em um único turno. Para reduzir ainda mais as alucinações e melhorar a capacidade de tomada de decisão do agente, a estrutura POKELLMON implementa a Geração Aumentada de Conhecimento ou a abordagem KAG, uma técnica que emprega conhecimento externo para geração de aumento

Agora, quando o modelo gera os 4 tipos de feedback discutidos acima, ele anota os movimentos e informações do Pokémon, permitindo ao agente inferir a relação de vantagem de tipo por conta própria. Em uma tentativa de reduzir ainda mais a alucinação contida no raciocínio, a estrutura POKELLMON anota explicitamente a vantagem de tipo e a fraqueza do Pokémon oponente e do Pokémon do agente com descrições adequadas. Além disso, é um desafio memorizar os movimentos e habilidades com efeitos distintos dos Pokémons, especialmente porque existem muitos deles. A tabela a seguir demonstra os resultados da geração aumentada de conhecimento. É importante notar que, ao implementar a abordagem de Geração Aumentada de Conhecimento, a estrutura POKELLMON é capaz de aumentar a taxa de vitória em cerca de 20%, dos 36% existentes para 55%. 

Além disso, os desenvolvedores observaram que quando o agente recebeu conhecimento externo sobre Pokémons, ele passou a utilizar movimentos especiais na hora certa, conforme demonstrado na imagem a seguir. 

Geração de Ação Consistente

Os modelos existentes demonstram que a implementação de abordagens de estímulo e raciocínio pode melhorar a capacidade dos LLMs na resolução de tarefas complexas. Em vez de gerar uma ação única, a estrutura POKELLMON avalia estratégias de estímulo existentes, incluindo CoT ou Cadeia de Pensamento, ToT ou Árvore de Pensamento e Autoconsistência. Para Chain of Thought, o agente inicialmente gera um pensamento que analisa o cenário de batalha atual e produz uma ação condicionada ao pensamento. Para Autoconsistência, o agente gera três vezes as ações e seleciona a saída que recebeu o número máximo de votos. Finalmente, para a abordagem da Árvore do Pensamento, a estrutura gera três ações, assim como na abordagem de autoconsistência, mas escolhe aquela que considera melhor após avaliá-las por si só. A tabela a seguir resume o desempenho das abordagens de solicitação. 

Há apenas uma ação para cada turno, o que implica que mesmo que o agente decida trocar e o oponente decida atacar, o Pokémon que faz a troca sofrerá o dano. Normalmente o agente decide trocar porque deseja trocar com vantagem de tipo um Pokémon fora da batalha e, assim, o Pokémon que está trocando pode suportar o dano, já que era resistente ao tipo aos movimentos do Pokémon oponente. No entanto, como acima, para o agente com raciocínio CoT, mesmo que o poderoso Pokémon adversário force vários giros, ele age de forma inconsistente com a missão, porque pode não querer fazer switch-in para o Pokémon, mas para vários Pokémon e vice-versa, o que denominamos comutação de pânico. A troca de pânico elimina as chances de realizar movimentos e, portanto, de derrotas. 

POKELLMON: Resultados e experimentos

Antes de discutirmos os resultados, é essencial compreendermos o ambiente de batalha. No início de um turno, o ambiente recebe uma mensagem de solicitação de ação do servidor e responderá a esta mensagem no final, que também contém o resultado da execução do último turno. 

  1. Primeiro analisa a mensagem e atualiza as variáveis ​​de estado locais, 2. depois traduz as variáveis ​​de estado em texto. A descrição do texto tem principalmente quatro partes: 1. Informações da própria equipe, que contém os atributos dos Pokémon dentro e fora do campo (não utilizados).
  2. Informações da equipe adversária, que contém os atributos do Pokémon oponente dentro e fora do campo (algumas informações são desconhecidas).
  3. Informações do campo de batalha, que incluem clima, perigos de entrada e terreno.
  4. Informações históricas de registro de turno, que contêm ações anteriores de ambos os Pokémon e são armazenadas em uma fila de registro. Os LLMs consideram o estado traduzido como ações de entrada e saída para a próxima etapa. A ação é então enviada ao servidor e executada ao mesmo tempo que a ação realizada pelo humano.

Batalha contra jogadores humanos

A tabela a seguir ilustra o desempenho do agente POKELLMON contra jogadores humanos. 

Como pode ser observado, o agente POKELLMON oferece desempenho comparável a jogadores de escada que possuem uma taxa de vitória maior quando comparado a um jogador convidado, além de possuir ampla experiência em batalha. 

Análise de habilidades de batalha

A estrutura POKELLMON raramente comete um erro ao escolher o movimento eficaz e muda para outro Pokémon adequado devido à estratégia de Geração Aumentada de Conhecimento. 

Conforme mostrado no exemplo acima, o agente utiliza apenas um Pokémon para derrotar todo o time adversário, pois pode escolher diferentes movimentos de ataque, aqueles que são mais eficazes para o adversário naquela situação. Além disso, a estrutura POKELLMON também exibe uma estratégia de desgaste semelhante à humana. Alguns Pokémons têm um movimento “Tóxico” que pode causar danos adicionais a cada turno, enquanto o movimento “Recuperar” permite recuperar seu HP. Aproveitando-se disso, o agente primeiro envenena o Pokémon adversário e usa o movimento Recover para evitar desmaiar. 

Considerações Finais

Neste artigo, falamos sobre POKELLMON, uma abordagem que permite que grandes modelos de linguagem joguem batalhas de Pokémon contra humanos de forma autônoma. POKELLMON pretende ser o primeiro agente incorporado do mundo que atinge desempenho de nível humano em jogos táticos, semelhante ao testemunhado nas batalhas Pokémon. A estrutura POKELLMON introduz três estratégias principais: Aprendizagem por Reforço no Contexto, que consome o feedback baseado em texto como “recompensa” para refinar iterativamente a política de geração de ação sem treinamento, Geração Aumentada de Conhecimento que recupera conhecimento externo para combater a alucinação e garante que o agente atue oportuna e adequada, e Geração de Ação Consistente que evita o problema de mudança de pânico ao encontrar oponentes poderosos. 

"Engenheiro de profissão, escritor de coração". Kunal é um escritor técnico com profundo amor e compreensão de IA e ML, dedicado a simplificar conceitos complexos nesses campos por meio de sua documentação envolvente e informativa.