Desenvolvido método que permite que chatbots mantenham conversas ininterruptas e eficientes

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 2, 2024, 6:44 pm

Quando uma conversa entre humanos e IA envolve muitas rodadas de diálogo contínuo, os poderosos modelos de aprendizado de máquina em linguagem natural que impulsionam os chatbots como o ChatGPT às vezes começam a colapsar, 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 a um chatbot manter uma conversa ininterrupta sem travar ou ficar mais lento.

O método deles envolve um ajuste à memória cache chave-valor (que é como uma memória da conversa) presente no cerne de muitos modelos grandes de linguagem. Em alguns métodos, quando essa memória precisa armazenar mais informações do que a sua capacidade permite, as primeiras informações são descartadas. Isso pode fazer com que o modelo falhe.

Garantindo que as primeiras informações 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 torna possível que o modelo se mantenha eficiente mesmo quando a conversa alcança mais de 4 milhões de palavras. Quando comparado a outro método que evita travamentos recomputando constantemente partes das conversas passadas, o StreamingLLM foi mais rápido em mais de 22 vezes.

Isso permitiria a um chatbot conduzir longas conversas durante todo o expediente sem precisar ser reiniciado continuamente, possibilitando assistentes virtuais eficientes para tarefas como redação publicitária, edição ou geração de código.

“Agora, com esse método, podemos implantar persistentemente esses grandes modelos de linguagem. Ao criar 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 algumas novas aplicações”, diz Guangxuan Xiao, um 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; bem como Yuandong Tian, cientista pesquisador na Meta AI; Beidi Chen, professor assistente na Carnegie Mellon University; 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

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

Normalmente, um chatbot IA escreve novo texto baseado no texto que acabou de ler, então ele armazena os tokens recentes na memória, chamada cache chave-valor (KV Cache), para uso posterior. O mecanismo de atenção constrói uma grade que inclui todos os tokens na cache – um “mapa de atenção” que mostra o quanto cada token ou palavra se relaciona forte ou fracamente com outros tokens.

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

No entanto, quando a 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 exigir mais tokens do que a cache pode armazenar, o desempenho do modelo cai. Por exemplo, um modelo popular pode armazenar 4.096 tokens, mas há cerca de 10.000 tokens em um artigo acadêmico.

Para contornar esses problemas, os pesquisadores usam uma “cache deslizante” que substitui os tokens mais antigos por novos. No entanto, isso frequentemente causa queda no desempenho do modelo assim que o primeiro token é descartado e reduz rapidamente a qualidade das palavras recém-geradas.

Neste novo artigo, os pesquisadores perceberam que mantendo o primeiro token na cache deslizante, o modelo mantém seu desempenho mesmo quando o tamanho

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize