Chatbots poderão manter conversas contínuas sem travar, graças a um novo método desenvolvido pelo MIT

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 14, 2024, 7:14 pm

Quando uma conversa entre um ser humano e uma IA envolve várias rodadas de diálogo contínuo, os modelos poderosos de aprendizado de máquina, baseados em linguagem, que impulsionam os chatbots como o ChatGPT às vezes começam a falhar, provocando uma rápida deterioração no desempenho dos bots.

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 contínua sem travar ou ficar lento.

O método envolve um ajuste à memória cache chave-valor (que é como uma memória de conversa) presente nos principais modelos de linguagem. Em alguns métodos, quando essa cache precisa armazenar mais informações do que sua capacidade permite, os primeiros dados são apagados. 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, não importa por quanto tempo seja a conversa.

O método, chamado StreamingLLM, permite que um modelo permaneça eficiente mesmo quando uma conversa se estende por mais de 4 milhões de palavras. Em comparação com outro método que evita falhas recalculando constantemente partes das conversas anteriores, o StreamingLLM foi mais de 22 vezes mais rápido.

Isso poderia permitir que um chatbot conduza longas conversas ao longo do dia de trabalho sem precisar ser reiniciado constantemente, 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 novos aplicativos”, diz Guangxuan Xiao, estudante de pós-graduação em engenharia elétrica e ciência da computação (EECS) e autor principal do artigo sobre o StreamingLLM.

Os coautores de Xiao incluem seu orientador, Song Han, professor associado no EECS, membro do MIT-IBM Watson AI Lab e cientista distinguido da NVIDIA; Yuandong Tian, cientista de pesquisa no Meta AI; Beidi Chen, professor assistente na Universidade Carnegie Mellon; e o autor sênior Mike Lewis, cientista de pesquisa no Meta AI. O trabalho será apresentado na Conferência Internacional sobre Representações de Aprendizado (International Conference on Learning Representations).

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 utilizam um mecanismo de atenção que usa esses tokens para gerar novo texto.

Normalmente, um chatbot escreve novo texto com base no texto que acabou de ver e armazena os tokens recentes na memória chamada KV Cache para uso posterior. O mecanismo de atenção cria uma estrutura que inclui todos os tokens na cache – também conhecida como “mapa de atenção” – que descreve a relevância entre cada token ou palavra.

Entender essas relações é uma característica que permite que os grandes modelos 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 desacelera a computação.

Além disso, se a codificação exigir mais tokens do que a cache pode armazenar, o desempenho do modelo diminui. Por exemplo, um modelo popular pode armazenar 4.096 tokens, mas um artigo acadêmico tem cerca de 10.000 tokens.

Para contornar esses problemas, os pesquisadores utilizam uma “cache deslizante” que substitui os tokens mais antigos por novos tokens. No entanto, o desempenho do modelo muitas vezes cai assim que o primeiro token é descartado, reduzindo rapidamente a qualidade das palavras recém-geradas.

Neste novo artigo, os pesquisadores perceberam que se mantivessem o primeiro token na cache deslizante, o modelo manteria seu desempenho mesmo quando excedesse o tamanho da cache

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize