“Equipe do MIT desenvolve solução para evitar problemas em chatbots durante conversas prolongadas”

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 14, 2024, 5:17 pm

Quando uma conversa humano-IA envolve muitas rodadas de diálogo contínuo, os poderosos modelos de aprendizado de máquina de linguagem natural que impulsionam os chatbots, como o ChatGPT, às vezes começam a apresentar problemas, 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 ficar lento.

O método utilizado pelos pesquisadores envolve um ajuste na memória cache chave-valor (semelhante à memória das conversas) presente em muitos modelos de linguagem. Em alguns métodos, quando essa memória cache precisa armazenar mais informações do que sua capacidade permite, as primeiras informações são descartadas. Isso pode fazer com que o modelo falhe.

No entanto, ao garantir que esses primeiros pontos de dados permaneçam na memória, o método desenvolvido pelos pesquisadores permite que um chatbot continue a conversar independentemente da duração da conversa.

Esse método, chamado StreamingLLM, permite que um modelo seja eficiente mesmo quando uma conversa ultrapassa 4 milhões de palavras. Quando comparado a outro método que evita falhas recomputando constantemente parte das conversas anteriores, o StreamingLLM é mais de 22 vezes mais rápido.

Essa descoberta pode permitir que um chatbot conduza longas conversas ao longo do dia de trabalho sem precisar ser reiniciado continuamente, tornando possível ter assistentes virtuais eficientes para atividades como redação, edição ou geração de código.

A implementação dessa descoberta pode abrir portas para novas aplicações e possibilidades. Segundo Guangxuan Xiao, estudante de pós-graduação em engenharia elétrica e ciência da computação do MIT e autor principal do estudo sobre o StreamingLLM: “Agora, com esse método, podemos implantar esses grandes modelos de linguagem persistentemente. Ao criar um chatbot com o qual possamos sempre conversar, e que possa sempre nos responder com base em nossas conversas recentes, poderíamos usar esses chatbots em algumas novas aplicações”.

Além disso, a equipe responsável pela pesquisa incluiu Song Han, professor associado do Departamento de Engenharia Elétrica e Ciência da Computação (EECS) do MIT, membro do laboratório MIT-IBM Watson AI Lab e cientista distinto da NVIDIA; bem como Yuandong Tian, cientista pesquisador da Meta AI; Beidi Chen, professor assistente na Carnegie Mellon University; e Mike Lewis, cientista pesquisador da Meta AI.

Uma questão intrigante levantada pelos pesquisadores é o fato do primeiro token ser tão importante para o modelo gerar novas palavras mesmo que ele não tenha uma relação direta com a última palavra gerada.

Isso foi explicado pelas operações Softmax presentes no mecanismo de atenção usado por alguns modelos. Essas operações atribuem uma pontuação a cada token que representa o quanto ele se relaciona com os outros tokens. O modelo joga qualquer pontuação de atenção restante no primeiro token.

Esse primeiro token é chamado de “sumidouro de atenção”. Segundo Song Han: “Precisamos de um sumidouro de atenção, e o modelo decide usar o primeiro token como o sumidouro de atenção porque ele é visível globalmente – todos os outros tokens podem vê-lo. Descobrimos que devemos sempre manter o sumidouro de atenção na memória para manter a dinâmica do modelo”.

Para construir o StreamingLLM, os pesquisadores descobriram que é necessário ter quatro sumidouros de atenção no início da memória cache para obter um desempenho ideal. Além disso, eles perceberam que a codificação posicional de cada token deve permanecer a mesma, mesmo quando novos tokens são adicionados ou outros são removidos.

Ao combinar essas duas ideias, eles possibilitaram que o StreamingLLM mantivesse uma conversa contínua e superasse um método popular que recomputa constantemente as informações.

Por exemplo, quando a memória cache tem 256 tokens, o método de recomputação leva 63 mil

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize