Pesquisadores do MIT desenvolvem solução para melhorar desempenho de chatbots em conversas contínuas.

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 11, 2024, 5:15 am

Quando uma conversa entre um humano e uma 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, causando uma rápida deterioração no desempenho dos bots.

Uma equipe de pesquisadores do MIT e de outros lugares identificou uma causa surpreendente desse problema e desenvolveu uma solução simples que permite que um chatbot mantenha uma conversa contínua sem travar ou diminuir a velocidade.

O método utilizado pelos pesquisadores envolve um ajuste ao cache chave-valor (que é como uma memória da conversa) no núcleo de muitos dos grandes modelos de linguagem. Em alguns métodos, quando esse cache precisa armazenar mais informações do que sua capacidade permite, as primeiras peças de dados são removidas. Isso pode fazer com que o modelo falhe.

Ao garantir que esses primeiros pontos de dados permaneçam na memória, o método dos pesquisadores permite que um chatbot continue conversando independentemente da duração da conversa.

Esse método, chamado StreamingLLM, faz com que o modelo permaneça eficiente mesmo em conversas com mais de 4 milhões de palavras. Comparado a outro método que evita falhas reprocessando constantemente parte das conversas anteriores, o StreamingLLM foi mais de 22 vezes mais rápido.

Isso pode permitir que um chatbot conduza longas conversas durante todo o dia útil sem precisar reiniciar constantemente, viabilizando assistentes AI eficientes para tarefas como redação, edição ou geração de código.

“Agora, com esse método, podemos implantar persistentemente esses grandes modelos de linguagem. Criando um chatbot com o qual sempre podemos conversar e que sempre pode nos responder com base em nossas conversas recentes, poderíamos usar esses chatbots em novas aplicações”, diz Guangxuan Xiao, estudante de pós-graduação em engenharia elétrica e ciência da computação (EECS) e autor principal de um artigo sobre o StreamingLLM.

Os coautores de Xiao incluem seu orientador Song Han, professor associado do EECS, membro do MIT-IBM Watson AI Lab e cientista distinto da NVIDIA; Yuandong Tian, cientista pesquisador na Meta AI; Beidi Chen, professor assistente na Universidade Carnegie Mellon; e Mike Lewis, cientista pesquisador na Meta AI. O trabalho será apresentado na Conferência Internacional sobre Representações de Aprendizado.

Um fenômeno intrigante

Grandes modelos de linguagem codificam dados, como palavras em uma consulta do usuário, em representações chamadas tokens. Muitos modelos usam o que é conhecido como mecanismo de atenção para gerar novo texto a partir desses tokens.

Normalmente, um chatbot AI escreve um novo texto com base no texto que acabou de ver, portanto ele armazena os tokens recentes na memória, chamada cache KV, para usar posteriormente. O mecanismo de atenção constrói uma grade que inclui todos os tokens no cache – um “mapa de atenção” que mostra como cada token ou palavra está relacionada a outros tokens.

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

No entanto, quando o cache fica muito grande, o mapa de atenção pode ficar ainda maior, o que diminui a velocidade de processamento.

Além disso, se a codificação do conteúdo requer mais tokens do que o cache pode armazenar, o desempenho do modelo cai. 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 usam um “cache deslizante” que remove os tokens mais antigos para adicionar novos tokens. No entanto, muitas vezes o desempenho do modelo cai assim que o primeiro token é removido, reduzindo rapidamente a qualidade das palavras recém-geradas.

Neste novo artigo, os pesquisadores perceberam que se mantivessem o primeiro token no cache deslizante, o modelo manteria seu desempenho mesmo quando a capacidade do

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize