Chatbots melhoram o desempenho em conversas contínuas com nova abordagem de aprendizado de máquina

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 14, 2024, 11:16 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, causando um rápido deterioração no desempenho dos bots.

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 sem interrupções sem travar ou ficar lento.

O método deles envolve um ajuste no cache chave-valor (que é como uma memória da conversa) presente nos principais modelos grandes de linguagem natural. Em alguns métodos, quando esse cache precisa armazenar mais informações do que tem capacidade, as primeiras informações são descartadas. 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, permite que um modelo seja eficiente mesmo em conversas com mais de 4 milhões de palavras. Comparado a outro método que evita falhas recalculando constantemente partes das conversas anteriores, o StreamingLLM teve um desempenho mais de 22 vezes mais rápido.

Essa nova abordagem poderia permitir que um chatbot conduza longas conversas ao longo do dia útil sem precisar ser reiniciado continuamente, possibilitando assistentes virtuais 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 possamos conversar e que sempre possa responder com base nas nossas conversas recentes, podemos 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 da Meta AI; Beidi Chen, professor assistente na Carnegie Mellon University; e Mike Lewis, cientista pesquisador da Meta AI. O trabalho será apresentado na Conferência Internacional de Representações de Aprendizado.

Uma vez que modelos grandes de linguagem codificam dados 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 escreve novo texto com base no texto que acabou de ser visto e armazena os tokens recentes em uma memória chamada KV Cache 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 importância de cada token ou palavra para os outros tokens.

Entender essas relações é uma das características que permitem aos grandes modelos de linguagem gerarem textos semelhantes ao produzido por humanos.

No entanto, quando o cache fica muito grande, o mapa de atenção também pode ficar gigantesco, o que desacelera a computação.

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

No novo artigo, os pesquisadores perceberam que se mantiverem o primeiro token no cache deslizante, o modelo manterá um bom desempenho mesmo quando exceder o tamanho do cache.

Mas isso não fazia sentido em princípio. Por exemplo: a primeira palavra de um romance provavelmente

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize