Como evitar travamentos em chatbots durante diálogos longos

Picture of Maurício "o Estagiario"

Maurício "o Estagiario"

Textos otimizado com nossa IA

Published on maio 11, 2024, 5:15 pm

Quando uma conversa entre humano e IA envolve muitas rodadas de diálogo contínuo, os poderosos modelos de aprendizado de linguagem baseados em inteligência artificial que impulsionam os chatbots, como o ChatGPT, às vezes começam a falhar, causando uma rápida deterioração no desempenho dos bots.

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 diminuir a velocidade.

O método utilizado pelos pesquisadores envolve um ajuste ao cache chave-valor (que funciona como uma memória de conversa) presente nos principais modelos de linguagem. Em alguns métodos, quando esse cache precisa armazenar mais informações do que tem capacidade para, os primeiros dados são substituídos. Isso pode fazer com que o modelo falhe.

Garantindo que esses primeiros dados permaneçam na memória, o método dos pesquisadores permite que um chatbot continue conversando independentemente do tempo da conversa.

O método chamado StreamingLLM permite que um modelo seja eficiente mesmo em conversas com mais de 4 milhões de palavras. Quando comparado a outro método que evita falhas recomputando constantemente partes das conversas anteriores, o StreamingLLM apresentou um desempenho mais rápido mais 22 vezes.

Essa inovação pode permitir que um chatbot conduza longas conversas ao longo do dia de trabalho sem precisar ser reiniciado continuamente, viabilizando 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 podemos sempre conversar e que pode sempre 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 do MIT e autor principal de um artigo sobre StreamingLLM.

Os coautores de Xiao incluem seu orientador, Song Han, professor associado do departamento de engenharia elétrica e ciência da computação (EECS), membro do laboratório de IA MIT-IBM Watson e cientista distinto da NVIDIA; assim como Yuandong Tian, cientista pesquisador da Meta AI; Beidi Chen, professora assistente da 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 Curioso

Grandes modelos de linguagem codificam dados, como palavras em uma consulta do usuário, em representações chamadas tokens. Muitos modelos utilizam um mecanismo chamado atenção que utiliza esses tokens para gerar novo texto.

Geralmente, um chatbot de IA escreve novo texto com base no texto que acabou de ver. Portanto, 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 as relações entre cada token ou palavra.

Compreender essas relações é uma das características que permitem que os grandes modelos de linguagem gerem texto semelhante ao humano.

No entanto, quando o cache se torna muito grande, o mapa de atenção também pode ficar enorme, o que diminui a velocidade de 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 é prejudicado. Por exemplo, um modelo popular pode armazenar 4.096 tokens, mas existem cerca de 10.000 tokens em um artigo acadêmico.

Para contornar esses problemas, os pesquisadores utilizam um “cache deslizante” que substitui os primeiros tokens para adicionar novos tokens. No entanto, frequentemente o desempenho do modelo cai assim que esse primeiro token é excluído, reduzindo rapidamente a qualidade das palavras geradas posteriormente.

Neste novo artigo, os pesquisadores perceberam que se mantivessem o primeiro token no cache deslizante, o modelo manteria seu

Compartilhe

Facebook
Twitter
LinkedIn
WhatsApp
Email
Print

Leia mais sobre este assunto:

Conteudize