Nova abordagem permite que os chatbots mantenham conversas contínuas sem deterioração no desempenho

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 2, 2024, 12:14 pm

Quando uma conversa entre humanos e IA envolve várias rodadas de diálogo contínuo, os poderosos modelos de aprendizado de máquina em larga escala que impulsionam os chatbots, como o ChatGPT, às vezes começam a falhar, fazendo com que o desempenho dos bots se deteriore rapidamente.

No entanto, uma equipe de pesquisadores do MIT e outros lugares identificou uma causa surpreendente desse problema e desenvolveu uma solução simples que permite que um chatbot mantenha uma conversa ininterrupta sem travar ou desacelerar.

Essa solução envolve um ajuste no cache chave-valor (que é como uma memória de conversação) no cerne de muitos modelos grandes de linguagem. Em alguns métodos, quando esse cache precisa armazenar mais informações do que tem capacidade para isso, as primeiras partes dos dados são descartadas. Isso pode fazer com que o modelo falhe.

Ao garantir que esses primeiros pontos de dados permaneçam na memória, o método desenvolvido pelos pesquisadores permite que um chatbot continue conversando, não importa quanto tempo a conversa dure.

Esse método, chamado StreamingLLM, permite que um modelo seja eficiente mesmo quando uma conversação se estende por mais de 4 milhões de palavras. Em comparação com outro método que evita travamentos ao recomputar constantemente parte das conversas anteriores, o StreamingLLM foi mais de 22 vezes mais rápido.

Isso poderia permitir que um chatbot conduzisse conversas longas ao longo do dia útil sem precisar ser reiniciado continuamente, tornando possíveis assistentes AI eficientes para tarefas como redação, edição ou geração de código.

A equipe de pesquisadores está animada com as possibilidades que essa nova abordagem traz. De acordo com Guangxuan Xiao, estudante de pós-graduação em engenharia elétrica e ciência da computação do MIT e autor principal de um artigo sobre o StreamingLLM: “Agora, com esse método, podemos implantar persistentemente esses modelos grandes de linguagem. Ao criar um chatbot com o qual sempre podemos interagir e que sempre pode nos responder com base nas nossas conversas recentes, poderíamos usá-los em novas aplicações”.

O fenômeno por trás desse problema era intrigante. Os modelos grandes de linguagem convertem dados, como palavras em uma consulta do usuário, em representações chamadas tokens. Muitos modelos utilizam o mecanismo de atenção para gerar novo texto com base nesses tokens.

Normalmente, um chatbot escreve novo texto com base no texto que acabou de ver, então ele armazena os tokens recentes na memória – chamada KV Cache – para uso posterior. O mecanismo de atenção cria uma grade que inclui todos os tokens na cache, um “mapa de atenção” que mapeia a força das relações entre cada token ou palavra.

Compreender essas relações é uma característica que permite que os modelos grandes de linguagem gerem texto semelhante ao humano.

No entanto, quando a cache fica muito grande, o mapa de atenção pode se tornar ainda maior, o que torna a computação mais lenta.

Além disso, quando a codificação do conteúdo requer mais tokens do que a capacidade do cache, o desempenho do modelo diminui. Por exemplo, um modelo popular pode armazenar 4.096 tokens, mas existem cerca de 10.000 tokens em um artigo acadêmico.

Para contornar esses problemas, os pesquisadores utilizam uma “cache deslizante” que remove os tokens mais antigos para adicionar novos tokens. No entanto, o desempenho do modelo muitas vezes cai assim que o primeiro token é removido, reduzindo rapidamente a qualidade das palavras geradas posteriormente.

Nesse novo estudo, os pesquisadores perceberam que se mantivessem o primeiro token na cache deslizante, o modelo manteria seu desempenho mesmo quando o tamanho da cache fosse excedido.

Isso parecia não fazer sentido à primeira vista. A primeira palavra de um romance provavelmente não tem nenhuma relação com a última palavra, então por que a primeira palavra seria tão importante para o modelo gerar a palavra mais recente?

Os pesquisadores também descobrir

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize