Como evitar o colapso de chatbots durante longas conversas: pesquisadores desenvolvem método eficiente.

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 15, 2024, 5:15 am

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

No entanto, 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 ininterrupta sem travar ou diminuir a velocidade.

O método desses pesquisadores envolve um ajuste no cache chave-valor (que é como uma memória da conversa) no núcleo de muitos modelos de linguagem em larga escala. Em alguns métodos, quando esse cache precisa armazenar mais informações do que comporta, os primeiros dados são removidos. Isso pode fazer com que o modelo falhe.

Garantindo 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.

O método, chamado StreamingLLM, permite que um modelo seja eficiente mesmo quando a conversa se estende por mais de 4 milhões de palavras. Comparado a outro método que evita travamentos recomputando constantemente parte das conversas anteriores, o StreamingLLM foi mais de 22 vezes mais rápido.

Isso pode permitir que um chatbot conduza longas conversas ao longo do dia útil sem precisar ser reiniciado continuamente, possibilitando assistentes IA 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. Ao criar um chatbot com o qual sempre podemos conversar e que sempre pode nos responder com base em nossas conversas recentes, podemos 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 de um artigo sobre o StreamingLLM.

Os coautores de Xiao incluem seu orientador, Song Han, professor associado do EECS, membro do Laboratório MIT-IBM Watson AI e cientista distinto da NVIDIA; bem como Yuandong Tian, cientista pesquisador da Meta AI; Beidi Chen, professor assistente na Universidade Carnegie Mellon; e o autor sênior Mike Lewis, cientista pesquisador da 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 um mecanismo conhecido como atenção para gerar novo texto com base nesses tokens.

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

Entender esses relacionamentos é uma característica que permite que grandes modelos de linguagem gerem textos semelhantes aos produzidos por humanos.

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

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

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

Neste novo artigo, os pesquisadores perceberam que ao manter o primeiro token no cache deslizante, eles poderiam manter o desempenho do modelo mesmo quando tamanho

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize